Upgrade Ops Manager and Backing Database Versions
On this page
Update the major and minor versions of your Ops Manager instance and backing databases in the Ops Manager Resource Specification that the Kubernetes Operator uses to manage your deployment.
Prerequisites
Warning
To maintain existing settings and availability, back up the following in your current Ops Manager instance:
Your
conf-mms.properties
to a secure location. Theconf-mms.properties
stores settings for the Ops Manager instance.Your
gen.key
files to a secure location. The gen.key provides details to encrypt and decrypt Ops Manager's backing databases and user credentials. Ops Manager might delete these files as part of the upgrade process.
As an extra precaution, you may use mongodump to create a binary export of the Application Database. No officially supported backup method exists for the Application Database. If the upgrade fails, reach out to MongoDB Support for help fixing the issue with the Ops Manager version.
Upgrade Ops Manager by following the considerations, prerequisites, and procedure in Upgrade Ops Manager.
Reference Use a Compatible MongoDB Version to ensure your backing databases use a MongoDB version that is compatible with the new Ops Manager version.
If you need to upgrade your backing databases to a compatible MongoDB version, see Upgrade MongoDB Version.
Procedure
To upgrade Ops Manager and the application database versions, complete the following steps:
In your Ops Manager Resource Specification, the settings as shown in the following example:
Set
spec.version
to the new Ops Manager version.If you upgraded your application database, set
spec.applicationDatabase.version
to the compatible MongoDB version.
1 apiVersion: mongodb.com/v1 2 kind: MongoDBOpsManager 3 metadata: 4 name: om 5 spec: 6 topology: SingleCluster # optional, SingleCluster by default 7 opsManagerURL: https://link.to.configured.load-balancer.example.com # optional OM URL for the operator 8 replicas: 1 9 version: "6.0.18" 10 adminCredentials: ops-manager-admin-secret 11 configuration: 12 mms.fromEmailAddr: admin@example.com 13 mms.security.allowCORS: "false" 14 security: 15 tls: 16 ca: issuer-ca 17 backup: 18 enabled: true 19 encryption: 20 kmip: 21 server: 22 url: kmip.corp.mongodb.com:5696 23 ca: mongodb-kmip-certificate-authority-pem 24 headDB: 25 storage: "30Gi" 26 labelSelector: 27 matchLabels: 28 app: my-app 29 opLogStores: 30 - name: oplog1 31 # Sets labels for the oplog store. 32 assignmentLabels: ["test1", "test2"] 33 mongodbResourceRef: 34 name: my-oplog-db 35 mongodbUserRef: 36 name: my-oplog-user 37 s3Stores: 38 - name: s3store1 39 # Sets labels for the S3 store. 40 assignmentLabels: ["test1", "test2"] 41 42 mongodbResourceRef: 43 name: my-s3-metadata-db 44 mongodbUserRef: 45 name: my-s3-store-user 46 s3SecretRef: 47 name: my-s3-credentials 48 pathStyleAccessEnabled: true 49 s3BucketEndpoint: s3.region.amazonaws.com 50 s3BucketName: my-bucket 51 applicationDatabase: 52 passwordSecretKeyRef: 53 name: om-db-user-secret 54 key: password 55 members: 3 56 topology: SingleCluster 57 version: "6.0.5-ubi8" 58 security: 59 tls: 60 ca: issuer-ca 61 secretRef: 62 prefix: appdb
Reapply the configuration to Kubernetes.
kubectl apply -f <om-resource-specification>.yaml
Kubernetes automatically reconfigures your deployment with the new specifications. You can see these changes reflected in your Ops Manager or Cloud Manager application.