Skip to content

v0.14.0

Latest
Compare
Choose a tag to compare
@schallert schallert released this 17 Aug 21:03
· 3 commits to master since this release
79c1b87

0.14.0 is a significant release, making the operator compatible with Kubernetes 1.22. Other notable features include
supporting batch node adds and removals to speed up cluster membership changes.

Breaking Changes

As of this release, the operator no longer installs its own CRD. You must install the CRD manifest from this repo, which
includes a schema and is compatible with Kubernetes 1.22 by using v1 of the CRD API.

The upgrade steps are as follows:

  1. Change your existing operator deployment to set -manage-crd=false as a flag to the operator container. This will
    ensure that the old operator will not overwrite the CRD if it restarts after the new CRD is applied.
  2. Modify the YAML definition of the new CRD to set spec.preserveUnknownFields=false. This is required if upgrading an
    older CRD that was created without a schema.
  3. Apply the new CRD.
  4. Upgrade the operator image to 0.14.0. You'll have to remove the -manage-crd=false flag, as it is no longer
    supported by the operator.

Change set:

  • [API] Ensure schema has embedded metadata fields (#328)
  • [FEATURE] Fix progress annotations on cluster expansion/shrinking (#324)
  • [API] schema: extendedOptions as untyped object (#327)
  • [FEATURE] [*] Make operator compatible with Kubernetes 1.22 (#325)
  • [MISC] Update go version to 1.18 (#322)
  • [ENHANCEMENT] prevent scaling down to 0 instances (#316)
  • [FEATURE] batch node removal (#314)
  • [MISC] use 8 sha length for docker tag (#315)
  • [ENHANCEMENT] move to batch placement remove API (#312)
  • [ENHANCEMENT] upgrade m3 version (#311)
  • [MISC] regenerate mocks (#313)
  • [MISC] [ci] Set PUSH_SHA_TAG env var to true (#308)
  • [MISC] Update ci submodule (#307)
  • [MISC] Use golang:1.16-alpine3.13 as build image (#306)
  • [ENHANCEMENT] Updating API to use k8s v1.23 compatible api groups (#302)
  • [MISC] [deps] Update k8s.io/kube-openapi dependency (#304)
  • [MISC] Update to Go 1.16 (#305)
  • [ENHANCEMENT] Update kubernetes client to v0.21.1 (#301)
  • [DOCS] [docs] Fix redirect syntax (#300)
  • [DOCS] [site] Add netlify redirect to main docs site (#297)
  • [FEATURE] [api] Allow blocking cluster scale down (#294)
  • [ENHANCEMENT] [controller] Include namespace with logs (#291)
  • [ENHANCEMENT] [m3admin-client] Incorporate zone into client cache (#290)
  • [ENHANCEMENT] [m3admin-client] Set zone header based on cluster spec (#289)
  • [MISC] [build] Use --short in GITSHA calculation (#288)
  • [ENHANCEMENT] [placement] Allow zone to be overridden (#287)
  • [ENHANCEMENT] [k8sops] Remove liveness probes from DB (#286)
  • [BUGFIX] Backwards compatibility when using the original update annoation with an OnDelete update strategy (#284)
  • [FEATURE] Add support for parallel node updates within a statefulset (#283)
  • [FEATURE] Support namespace ExtendedOptions in cluster spec (#282)
  • [FEATURE] [controller] Support multi instance placement add (#275)
  • [ENHANCEMENT] [gomod] Update M3DB dependency (#277)
  • [BUGFIX] [cmd] Fix instrument package name (#280)
  • [MISC] [ci] Switch to golangci-lint (#279)
  • [MISC] [ci] Update kind; fix node image (#276)
  • [DOCS] Fix autogenerated ToC (#274)