Skip to content

Releases: k8ssandra/cass-operator

v1.27.1

23 Sep 17:48
5854a88

Choose a tag to compare

  • [CHANGE] #845 Set default registry to be docker.io on the releases to allow easier modification using new ImageConfig
  • [BUGFIX] #843 If MetadataVersion was for some reason missing from Status while the DatacenterName was set to same value as dc.Name and the count of nodes was same as maximum seed count for a rack, the seed labeler would overflow thinking it had too many seeds and remove the existing seeds from such racks.

v1.27.0

08 Sep 11:01
7f1abb8

Choose a tag to compare

  • [CHANGE] #822 Remove certain RBAC rights from our Role/ClusterRole that are no longer necessary for the operations in cass-operator
  • [FEATURE] #830 Implement new ImageConfig structure where all the parts of the configured images are split to individual components to allow simpler configuration. This allows to override a single value only (such as registry for single image) in the Helm charts. The configuration is moved to a separate ConfigMap with k8ssandra.io/config: image label and this same ImageConfig is then used in the k8ssandra-operator to ensure all the components are configured from a single place.
  • [FEATURE] #824 Setting cassandra.datastax.com/disable-pdb-creation: true to the CassandraDatacenter will now disable creation of PodDisruptionBudget for the datacenter
  • [ENHANCEMENT] #827 Add a new watch handler for caches in the startup of controller-runtime. If the caches have failures, we should exit the operator and let it restart. This would alert the user that the operator has issues instead of simply logging these errors.
  • [ENHANCEMENT] #831 Add support for Jobs argument in the garbagecollect command for CassandraTask
  • [ENHANCEMENT] #833 AdditionalVolumes with VolumeSource (Secret, ConfigMap) are now mounted to the server-config-init initContainer also.

v1.26.0

17 Jul 09:40
096fb1b

Choose a tag to compare

  • [CHANGE] #807 EndpointSlices are now separated by type (IPv4, IPv6, FQDN). FQDN addresses (DNS) are no longer resolved by the cass-operator, but left to the Kubernetes' own implementation. Use of FQDN is not recommended.
  • [CHANGE] #803 Modify additional seeds to use discoveryv1.EndpointSlice instead of deprecated corev1.Endpoints and corev1.EndpointSubsets
  • [CHANGE] #811 Upgrade the cass-config-builder image to the new ubi10 version
  • [ENHANCEMENT] #778 Migrate to golangici-lint 2.x series and use stricter rules.
  • [ENHANCEMENT] #814 If IS_LOCAL is supported by the mgmt-api, use that information for the HostID Status updates instead of trying to find the IPs.
  • [BUGFIX] #808 Decommission of the Datacenter might hang on last pod being decommissioned due to a check in startOneNodePerRack for eligible pods to be started
  • [BUGFIX] #806 If cassandra container crashes during Starting phase we could get stuck in findStartingNodes for a long period of time. Modify the behavior to kill these pods instantly.
  • [BUGFIX] #816 If pod terminated, we would not usually be allowed to override rack settings because the deleteStuckNodes would clean up the error code before conditions to do forced upgrade were met.

v1.25.0

02 Jul 07:18

Choose a tag to compare

v1.25.0

  • [ENHANCEMENT] #664 Allow skipping deletion of PVCs when the CassandraDatacenter is deleted. Set annotation cassandra.datastax.com/delete-pvc: "false" to prevent deletion, default is still to delete.
  • [BUGFIX] #798 If all the pods are in the Pending state, we would skip the startOneNodeRack and might start a pod in the startAllRacks phase which would lead to 0 seeds in a new cluster.

v1.24.0

30 Apr 20:12
70e1c9e

Choose a tag to compare

  • [CHANGE] #718 Update Kubernetes dependencies to 0.31.0 and controller-runtime to 0.19.x, remove controller-config and instead return command line options as the only way to modify controller-runtime options. cass-operator specific configuration will still remain in the OperatorConfig CRD. Removes kube-auth from the /metrics endpoint from our generated configs and instead adds network-policy generation as one optional module for Kustomize.
  • [CHANGE] #527 Migrate the Kustomize configuration to Kustomize 5 only. Support for using Kustomize 4.x to generate config is no longer supported.
  • [CHANGE] #763 If gossip information has ENDPOINT_IP, use it as the IP for the replacement job instead of NATIVE_ADDRESS_AND_PORT
  • [CHANGE] #757 Change starting sequence of pods to match StatefulSet controller's behavior. First start the last pod and move towards 0.
  • [CHANGE] #780 Make readOnlyRootFilesystem the default for DSE 6.8/6.9, OSS Cassandra 4.1 and newer and HCD. Modify securityContext settings of all containers in this case.
  • [FEATURE] #583 If there are pods in failed state (CrashLoopBackOff, ImagePullBackOff or ErrImagePull), restartCount of a container/initContainer is more than zero with termination code >0 or we have a SchedulingFailed event, allow StatefulSet updates even if previous ones haven't been rolled yet. ForceUpgradeRacks will no longer remove itself from the CassandraDatacenter to prevent self modifying Spec.
  • [FEATURE] #747 Add ScheduledTask to provide a cronjob like functionality to automatically create a CassandraTask on certain intervals.
  • [ENHANCEMENT] #729 Modify NewMgmtClient to support additional transport option for the http.Client
  • [ENHANCEMENT] #737 Before issuing PVC deletion when deleting a datacenter, verify the PVCs that match the labels are not actually used by any pods.
  • [BUGFIX] #744 If StatefulSet was manually modified outside CassandraDatacenter, do not start such pods as they would need to be decommissioned instantly and could have IP conflict issues when doing so.
  • [BUGFIX] #696 If the first pod in the rack was not available to be started (such as in Pending state), the startOneNode would keep waiting for it indefinitely.

v1.23.2

17 Mar 13:48
e082e49

Choose a tag to compare

  • [BUGFIX] #765 Fix CheckRackPodLabels to use statefulSet.Spec.Replicas instead of .Status.Replicas to verify all the current pods and their labels
  • [BUGFIX] #751 If datacenterName == "", do not use it as accepted value, threat it the same way as nil value

v1.23.0

26 Nov 17:18
7906dd7

Choose a tag to compare

  • [CHANGE] #720 Always use ObjectMeta.Name for the PodDisruptionBudget resource name, not the DatacenterName
  • [CHANGE] #731 Make the concurrent restart of already bootstrapped nodes the default. If user wishes to revert to older behavior, set annotation cassandra.datastax.com/allow-parallel-starts: "false" to datacenter.
  • [FEATURE] #651 Add tsreload task for DSE deployments and ability to check if sync operation is available on the mgmt-api side
  • [ENHANCEMENT] #722 Add back the ability to track cleanup task before marking scale up as done. This is controlled by an annotation cassandra.datastax.com/track-cleanup-tasks
  • [ENHANCEMENT] #532 Extend ImageConfig type to allow additional parameters for k8ssandra-operator requirements. These include per-image PullPolicy / PullSecrets as well as additional image. Also add ability to override a single HCD version image.
  • [ENHANCEMENT] #636 Add support for new field in ImageConfig, imageNamespace. This will allow to override namespace of all images when using private registries. Setting it to empty will remove the namespace entirely.
  • [BUGFIX] #705 Ensure ConfigSecret has annotations map before trying to set a value

v1.22.4

23 Sep 07:18
bbcc904

Choose a tag to compare

  • [BUGFIX] #708 Preserve existing SecurityContext when ReadOnlyRootFilesystem is set

v1.22.3

23 Sep 07:18
b847de6

Choose a tag to compare

  • [FEATURE] #701 Allow ReadOnlyRootFilesystem for DSE also with extra mounts to provide support for cass-config-builder setups

v1.22.2

11 Sep 16:50
87b1923

Choose a tag to compare

  • [BUGFIX] #703 Fix HCD config path from /etc/cassandra to /opt/hcd/resources/cassandra/conf