This is the first (any only) release candidate for the new Operator v2. It's been in development for some time, and now we feel it is ready to be released. This release represents a complete re-imagination of the Operator.
One of the main changes concerns deploying the operator itself: it is now easier than ever to get started. Running the following three commands will create a working cluster:
$ kubectl apply --server-side -f https://github.com/cert-manager/cert-manager/releases/latest/download/cert-manager.yaml
$ kubectl apply --server-side -k "https://github.com/piraeusdatastore/piraeus-operator//config/default?ref=v2"
$ kubectl apply --server-side -f - <<EOF
apiVersion: piraeus.io/v1
kind: LinstorCluster
metadata:
name: linstorcluster
spec: {}
EOF
Along the same lines, we also vastly improved the available documentation for getting started and more advanced tasks.
Thanks to net namespace support in DRBD 9.2, we can now run our satellite Pods in the normal container network. This enables the use of all the networking tools available in Kubernetes for DRBD.
If there is a Pod or workload feature our default deployment by the Piraeus Operator did not cover, you can now simply write a kustomization for just that resource. For example: you might want to deploy on a system without kernel headers installed, in which case you need to inject the headers via a patched Pod
Upgrades
At this time, there is no direct upgrade path from v1 to v2. We recommend v2 for new users. Existing users should continue to use Piraeus Operator v1, which will continue to be supported until we have an upgrade path ready.
Breaking
- Removed existing CRD
LinstorController
,LinstorSatelliteSet
andLinstorCSIDriver
. - Helm chart deprecated in favor of new
kustomize
deployment. - Helm chart changed to only deploy the Operator. The LinstorCluster resource to create the storage cluster needs to be created separately.
Added
- New CRDs to control storage cluster:
LinstorCluster
andLinstorSatelliteConfiguration
. - Tutorials on how to get started.
- Automatic selection of loader images based on operating system of node.
- Customization of single nodes or groups of nodes.
- Possibility to run DRBD replication using the container network.
- Support for file system backed storage pools