Skip to content

Releases: mongodb/mongodb-kubernetes-operator

MongoDB Kubernetes Operator 0.6.0

26 Apr 10:47
9e35d2c
Compare
Choose a tag to compare

MongoDB Kubernetes Operator 0.6.0

Kubernetes Operator

  • Breaking Changes

    • A new VolumeClaimTemplate has been added logs-volume. When you deploy the operator, if there is an existing StatefulSet the operator will attempt to perform an invalid update. The existing StatefulSet must be deleted before upgrading the operator.

    • The user of the mongod and mongodb-agent containers has changed. This means that there will be permissions
      issues when upgrading from an earlier version of the operator. In order to update the permissions in the volume, you can use an init container.

  • Upgrade instructions

    Remove the current operator deployment

    • kubectl delete deployment <operator-deployment>
      Delete the existing StatefulSet for the MongoDBCommunity resource
      Note: to ensure existing data is not lost, ensure that the retain policy of your Persistent Volumes is configured correctly. Please reference the official docs for these configuration options.
    • kubectl delete statefulset <mdb-resource-name>
      Install the new operator
    • follow the regular installation instruction
      Patch the StatefulSet once it has been created. This will add an init container that will update the permissions of the existing volume.
    • kubectl patch statefulset <sts-name> --type='json' --patch '[ {"op":"add","path":"/spec/template/spec/initContainers/-", "value": { "name": "change-data-dir-permissions", "image": "busybox", "command": [ "chown", "-R", "2000", "/data" ], "securityContext": { "runAsNonRoot": false, "runAsUser": 0, "runAsGroup":0 }, "volumeMounts": [ { "mountPath": "/data", "name" : "data-volume" } ] } } ]'
  • Bug fixes

    • Fixes an issue that prevented the agents from reaching goal state when upgrading minor version of MongoDB.

Updated Image Tags

  • mongodb-kubernetes-operator:0.6.0
  • mongodb-agent:0.29.0.6830-1
  • mongodb-kubernetes-readinessprobe:1.0.3

MongoDB Kubernetes Operator 0.5.2

30 Mar 13:40
6fdbf7d
Compare
Choose a tag to compare

MongoDB Kubernetes Operator 0.5.2

Kubernetes Operator

  • Changes
    • Readiness probe has been moved into an init container from the Agent image.
    • Security context is now added when the MANAGED_SECURITY_CONTEXT environment variable is not set.
  • Bug fixes
    • Removed unnecessary environment variable configuration in the openshift samples.
    • Fixed an issue where the operator would perform unnecessary reconcilliations when Secrets were modified.
    • Fixed an issue where a race condition could cause the deployment to get into a bad state when TLS
      settings when being changed at the same time as a scaling operation was happening.
    • Fixed an issue where the agent pod would panic when running as a non-root user.

MongoDBCommunity Resource

  • Changes
  • Added spec.security.authentication.ignoreUnknownUsers field. This value defaults to true. When enabled,
    any MongoDB users added through external sources will not be removed.

Miscellaneous

  • Changes
    • Internal code refactorings to allow libraries to be imported into other projects.

Updated Image Tags

  • mongodb-kubernetes-operator:0.5.2
  • mongodb-agent:10.27.0.6772-1
  • mongodb-kubernetes-readinessprobe:1.0.1 [new image]

MongoDB Kubernetes Operator 0.5.1

19 Feb 12:16
440ab7d
Compare
Choose a tag to compare

MongoDB Kubernetes Operator 0.5.1

Kubernetes Operator

  • Changes
    • Upgrades operator-sdk version to v1.4.0
    • The version of MongoDB specified in MongoDBCommunity resources no longer needs to be present in the version manifest.

Updated Image Tags

  • mongodb-kubernetes-operator:0.5.1
  • mongodb-agent:10.27.0.6772-1

All the images can be found in:
https://quay.io/mongodb

v0.5.0

01 Feb 09:18
f417395
Compare
Choose a tag to compare

MongoDB Kubernetes Operator 0.5.0

Kubernetes Operator

  • Breaking Changes
    • The CRD has been renamed from MongoDB to MongoDBCommunity. To upgrade to this version, there will be downtime as it will be necessary to:
      • Delete the old cr: kubectl delete -f <old-cr>
      • Delete the operator: kubectl delete -f deploy/operator
      • Create the new crd: kubectl create -f deploy/crds/mongodb.com_mongodbcommunity_crd.yaml
      • Deploy the new version of the operator kubectl create -f deploy/operator
      • Update your old cr to change the kind field from MongoDB to MongoDBCommunity
      • Create the new cr: kubectl create -f <new-cr>
  • Changes
    • Upgraded operator-sdk version to v0.19.4.
  • Bug fixes
    • Fixed sorting of volume mounts.

Updated Image Tags

  • mongodb-kubernetes-operator:0.5.0

All the images can be found in:

https://quay.io/mongodb

MongoDB Kubernetes Operator v0.4.0

25 Jan 16:03
b9fe79b
Compare
Choose a tag to compare

Note, that any section that doesn’t have content should be omitted

MongoDB Kubernetes Operator 0.4.0

Kubernetes Operator

  • Changes
    • Support cross-namespace deployments.
  • Bug fixes
    • Fix issue with log pollution.

MongoDB Resource

  • Changes
    • Support custom MongoDB roles via the spec.security.roles field in the crd.

Updated Image Tags

  • mongodb-kubernetes-operator:0.4.0

All the images can be found in:

https://quay.io/mongodb

MongoDB Kubernetes Operator v0.3.0

06 Nov 15:33
50d8d2c
Compare
Choose a tag to compare

MongoDB CRD Changes

  • The field spec.users[n].scramCredentialsSecretName must be specified for each resource. This will be used to determine the name of the generated secret which stores MongoDB user credentials. This field must comply with DNS-1123 rules (must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character).

Breaking Changes

  • Existing resources will need the scramCredentialsSecretName field added.

Miscellaneous Changes

  • The Agent Licence was updated to clarify that the Community Operator may be used commercially.

MongoDB Kubernetes Operator 0.2.2

08 Oct 15:45
ca2378c
Compare
Choose a tag to compare

Improvements

  • Default permissions for secret volumes have been changed to 0416

Bug Fixes

  • Fixed an issue where scaling down could break the deployment (Note: The scale down process can be slow, but the deployment stays in a good state)
  • Fixed an issue where the volume source of custom volumes was not merged correctly.
  • Fixed an issue which prevented scaling up to work with versions of MongoDB > 4.4

MongoDB Kubernetes Operator v0.2.1

09 Sep 12:09
f2bbf87
Compare
Choose a tag to compare

Features:

Keyfile internal cluster authentication

By default, all deployments are now configured keyfile internal cluster authentication

  • Added instructions and examples for how to deploy to OpenShift
  • Added support for configuring the mongod image and registry

Internal Improvements

  • Extended E2E framework to make it more flexible for arbitrary MongoDB connection options
  • Refactored main reconciliation loop to support arbitrary status subresource updates on a per field basis

Bug Fixes

  • Fixed issue where volumes would be added twice to StatefulSet when merging with a non-default name

MongoDB Kubernetes Operator v0.2.0

26 Aug 18:18
1e5b9c4
Compare
Choose a tag to compare

Features:

SCRAM-SHA authentication

By default, all deployments are now configured with SCRAM-SHA authentication enabled.

Note: Existing deployments will need to have users added to them in order to function correctly. The easiest way to do this is to follow the follow steps

  1. Scale down or remove the existing operator deployment
  2. Apply the new CRD
  3. Update your resource definition with the users you want, and create their passwords
  4. Deploy v0.2.0 of the operator

Authentication will now be configured for your deployments.

Bug Fixes

  • Fixed an issue where Persistent Volume Claims were not being merged correctly when applying a custom StatefulSet override
  • Fixed an issue where Environment variables were not correctly being merged together when applying a custom StatefulSet override

MongoDB Kubernetes Operator v0.1.1

17 Aug 15:58
477b1d5
Compare
Choose a tag to compare

Features:

  • Arbitrary StatefulSet Spec Configuration via spec.statefulSet