diff --git a/operators/mongodb-enterprise/1.30.0/bundle.Dockerfile b/operators/mongodb-enterprise/1.30.0/bundle.Dockerfile new file mode 100644 index 00000000000..597d4e0ba8d --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/bundle.Dockerfile @@ -0,0 +1,22 @@ +FROM scratch + +# Core bundle labels. +LABEL operators.operatorframework.io.bundle.mediatype.v1=registry+v1 +LABEL operators.operatorframework.io.bundle.manifests.v1=manifests/ +LABEL operators.operatorframework.io.bundle.metadata.v1=metadata/ +LABEL operators.operatorframework.io.bundle.package.v1=mongodb-enterprise +LABEL operators.operatorframework.io.bundle.channels.v1=stable +LABEL operators.operatorframework.io.bundle.channel.default.v1=stable +LABEL operators.operatorframework.io.metrics.builder=operator-sdk-v1.26.1 +LABEL operators.operatorframework.io.metrics.mediatype.v1=metrics+v1 +LABEL operators.operatorframework.io.metrics.project_layout=go.kubebuilder.io/v3 + +# Labels for testing. +LABEL operators.operatorframework.io.test.mediatype.v1=scorecard+v1 +LABEL operators.operatorframework.io.test.config.v1=tests/scorecard/ + +# Copy files to locations specified by labels. +COPY ./bundle/1.30.0//manifests /manifests/ +COPY ./bundle/1.30.0//metadata /metadata/ +COPY ./bundle/1.30.0//tests/scorecard /tests/scorecard/ +LABEL com.redhat.openshift.versions="v4.6" diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_rbac.authorization.k8s.io_v1_role.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_rbac.authorization.k8s.io_v1_role.yaml new file mode 100644 index 00000000000..732b38c09c3 --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_rbac.authorization.k8s.io_v1_role.yaml @@ -0,0 +1,20 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: Role +metadata: + creationTimestamp: null + name: mongodb-enterprise-appdb +rules: +- apiGroups: + - "" + resources: + - secrets + verbs: + - get +- apiGroups: + - "" + resources: + - pods + verbs: + - patch + - delete + - get diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_rbac.authorization.k8s.io_v1_rolebinding.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_rbac.authorization.k8s.io_v1_rolebinding.yaml new file mode 100644 index 00000000000..a6e3d9c101e --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_rbac.authorization.k8s.io_v1_rolebinding.yaml @@ -0,0 +1,12 @@ +apiVersion: rbac.authorization.k8s.io/v1 +kind: RoleBinding +metadata: + creationTimestamp: null + name: mongodb-enterprise-appdb +roleRef: + apiGroup: rbac.authorization.k8s.io + kind: Role + name: mongodb-enterprise-appdb +subjects: +- kind: ServiceAccount + name: mongodb-enterprise-appdb diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_v1_serviceaccount.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_v1_serviceaccount.yaml new file mode 100644 index 00000000000..efd8c99e83a --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-appdb_v1_serviceaccount.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + creationTimestamp: null + name: mongodb-enterprise-appdb diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-database-pods_v1_serviceaccount.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-database-pods_v1_serviceaccount.yaml new file mode 100644 index 00000000000..3053eff58aa --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-database-pods_v1_serviceaccount.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + creationTimestamp: null + name: mongodb-enterprise-database-pods diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-operator-service_v1_service.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-operator-service_v1_service.yaml new file mode 100644 index 00000000000..0498997760b --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-operator-service_v1_service.yaml @@ -0,0 +1,14 @@ +apiVersion: v1 +kind: Service +metadata: + creationTimestamp: null + name: mongodb-enterprise-operator-service +spec: + ports: + - name: webhook-port + port: 443 + targetPort: 1993 + selector: + app.kubernetes.io/name: mongodb-enterprise-operator +status: + loadBalancer: {} diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-ops-manager_v1_serviceaccount.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-ops-manager_v1_serviceaccount.yaml new file mode 100644 index 00000000000..bcd06315d43 --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise-ops-manager_v1_serviceaccount.yaml @@ -0,0 +1,5 @@ +apiVersion: v1 +kind: ServiceAccount +metadata: + creationTimestamp: null + name: mongodb-enterprise-ops-manager diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise.clusterserviceversion.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise.clusterserviceversion.yaml new file mode 100644 index 00000000000..0ef86cb423b --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb-enterprise.clusterserviceversion.yaml @@ -0,0 +1,1527 @@ +apiVersion: operators.coreos.com/v1alpha1 +kind: ClusterServiceVersion +metadata: + annotations: + alm-examples: |- + [ + { + "apiVersion": "mongodb.com/v1", + "kind": "MongoDB", + "metadata": { + "name": "my-replica-set" + }, + "spec": { + "credentials": "my-credentials", + "members": 3, + "opsManager": { + "configMapRef": { + "name": "my-project" + } + }, + "persistent": true, + "type": "ReplicaSet", + "version": "4.4.0-ent" + } + }, + { + "apiVersion": "mongodb.com/v1", + "kind": "MongoDB", + "metadata": { + "name": "sample-sharded-cluster" + }, + "spec": { + "configServerCount": 3, + "credentials": "my-credentials", + "mongodsPerShardCount": 3, + "mongosCount": 2, + "opsManager": { + "configMapRef": { + "name": "my-project" + } + }, + "persistent": true, + "shardCount": 1, + "type": "ShardedCluster", + "version": "4.4.0-ent" + } + }, + { + "apiVersion": "mongodb.com/v1", + "kind": "MongoDBMultiCluster", + "metadata": { + "name": "multi-replica-set" + }, + "spec": { + "clusterSpecList": [ + { + "clusterName": "e2e.cluster1.mongokubernetes.com", + "members": 2 + }, + { + "clusterName": "e2e.cluster2.mongokubernetes.com", + "members": 1 + }, + { + "clusterName": "e2e.cluster3.mongokubernetes.com", + "members": 2 + } + ], + "credentials": "my-credentials", + "duplicateServiceObjects": false, + "opsManager": { + "configMapRef": { + "name": "my-project" + } + }, + "persistent": true, + "type": "ReplicaSet", + "version": "4.4.0-ent" + } + }, + { + "apiVersion": "mongodb.com/v1", + "kind": "MongoDBOpsManager", + "metadata": { + "name": "ops-manager" + }, + "spec": { + "adminCredentials": "ops-manager-admin", + "applicationDatabase": { + "members": 3, + "podSpec": { + "cpu": 1 + } + }, + "configuration": { + "mms.fromEmailAddr": "admin@thecompany.com" + }, + "externalConnectivity": { + "type": "LoadBalancer" + }, + "version": "6.0.3" + } + }, + { + "apiVersion": "mongodb.com/v1", + "kind": "MongoDBUser", + "metadata": { + "name": "my-replica-set-x509-user" + }, + "spec": { + "db": "$external", + "mongodbResourceRef": { + "name": "my-replica-set" + }, + "roles": [ + { + "db": "admin", + "name": "dbOwner" + } + ], + "username": "CN=my-replica-set-x509-user,OU=cloud,O=MongoDB,L=New York,ST=New York,C=US" + }, + "status": { + "phase": "Updated" + } + } + ] + capabilities: Deep Insights + categories: Database + certified: "true" + containerImage: quay.io/mongodb/mongodb-enterprise-operator-ubi:1.30.0 + createdAt: "2024-12-20T05:24:45Z" + description: The MongoDB Enterprise Kubernetes Operator enables easy deploys of MongoDB into Kubernetes clusters, using our management, monitoring and backup platforms, Ops Manager and Cloud Manager. + features.operators.openshift.io/disconnected: "true" + features.operators.openshift.io/fips-compliant: "false" + features.operators.openshift.io/proxy-aware: "false" + features.operators.openshift.io/tls-profiles: "false" + features.operators.openshift.io/token-auth-aws: "false" + features.operators.openshift.io/token-auth-azure: "false" + features.operators.openshift.io/token-auth-gcp: "false" + operators.operatorframework.io/builder: operator-sdk-v1.26.1 + operators.operatorframework.io/project_layout: go.kubebuilder.io/v3 + repository: https://github.com/mongodb/mongodb-enterprise-kubernetes + support: support@mongodb.com + name: mongodb-enterprise.v1.30.0 + namespace: placeholder +spec: + apiservicedefinitions: {} + customresourcedefinitions: + owned: + - description: MongoDB Deployment + displayName: MongoDB Deployment + kind: MongoDB + name: mongodb.mongodb.com + resources: + - kind: StatefulSet + name: StatefulSet holding the Pod with MongoDB + version: apps/v1 + - kind: Service + name: "" + version: v1 + specDescriptors: + - displayName: MongoDB Deployment Type + path: type + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:select:Standalone + - urn:alm:descriptor:com.tectonic.ui:select:ReplicaSet + - urn:alm:descriptor:com.tectonic.ui:select:ShardedCluster + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - description: Version of MongoDB to use. + displayName: MongoDB Version + path: version + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - description: In a Replica Set deployment type, specifies the amount of members. + displayName: Members of a Replica Set + path: members + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:podCount + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - displayName: Cloud/Ops Manager credentials + path: credentials + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfig + - urn:alm:descriptor:io.kubernetes:Secret + - description: Project configuration for this deployment + displayName: Ops Manager project configuration + path: opsManager + - description: Name of the ConfigMap with the configuration for this project + displayName: Ops Manager Project Configuration + path: opsManager.configMapRef.name + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfig + - urn:alm:descriptor:io.kubernetes:ConfigMap + - description: Enable Persistent Storage with Volume Claims + displayName: Persistent Storage + path: persistent + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - description: Optional. Name of a Kubernetes Cluster Domain. + displayName: Name of Kubernetes Cluster Domain + path: clusterDomain + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - displayName: Enable TLS + path: security.tls.enabled + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:security + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - displayName: Custom CA Config Map + path: security.tls.ca + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:security + - urn:alm:descriptor:io.kubernetes:ConfigMap + - displayName: Enable authentication + path: security.authentication.enabled + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:Authentication + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - displayName: Authentication Mode + path: security.authentication.modes + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:Authentication + - urn:alm:descriptor:com.tectonic.ui:select:X509 + - urn:alm:descriptor:com.tectonic.ui:select:SCRAM + - urn:alm:descriptor:com.tectonic.ui:select:LDAP + - displayName: Authentication Mode used for Inter cluster communication + path: security.authentication.internalCluster + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:Authentication + - urn:alm:descriptor:com.tectonic.ui:select:X509 + - urn:alm:descriptor:com.tectonic.ui:select:SCRAM + - urn:alm:descriptor:com.tectonic.ui:select:LDAP + - description: Number of Config Servers in Replica + displayName: Number of Config Servers + path: configServerCount + - description: Number of Shards in a Sharded Cluster + displayName: Number of Shards + path: shardCount + - description: Number of MongoDB Servers per Shard + displayName: Number of MongoDB Servers + path: mongodsPerShardCount + - description: Number of Mongo routers, in total, for the whole cluster + displayName: Number of Mongos + path: mongosCount + statusDescriptors: + - description: | + Phase the MongoDB Deployment is currently on. It can be any of Running, Pending, Failed. + displayName: Phase + path: phase + - description: | + Type describes the deployment type this MongoDB resource. Posible values + are Standalone, ReplicaSet or ShardedCluster. + displayName: Type + path: type + - description: | + Timestamp of last transition + displayName: Last Transition + path: lastTransition + - description: | + Current version of MongoDB + displayName: MongoDB Version + path: version + version: v1 + - description: MongoDB Multi Deployment + displayName: MongoDB Multi Deployment + kind: MongoDBMultiCluster + name: mongodbmulticluster.mongodb.com + resources: + - kind: StatefulSet + name: StatefulSet holding the Pod with MongoDB + version: apps/v1 + - kind: Service + name: "" + version: v1 + specDescriptors: + - displayName: MongoDB Deployment Type + path: type + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:select:ReplicaSet + - description: Version of MongoDB to use. + displayName: MongoDB Version + path: version + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - description: In a Replica Set deployment type, specifies the amount of members. + displayName: Members of a Replica Set + path: members + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:podCount + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - displayName: Cloud/Ops Manager credentials + path: credentials + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfig + - urn:alm:descriptor:io.kubernetes:Secret + - description: Project configuration for this deployment + displayName: Ops Manager project configuration + path: opsManager + - description: Name of the ConfigMap with the configuration for this project + displayName: Ops Manager Project Configuration + path: opsManager.configMapRef.name + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfig + - urn:alm:descriptor:io.kubernetes:ConfigMap + - description: Enable Persistent Storage with Volume Claims + displayName: Persistent Storage + path: persistent + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - description: Optional. Specify whether to duplicate service objects among different Kubernetes clusters. + displayName: Duplicate Service Objects + path: duplicateServiceObjects + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ClusterConfiguration + - description: Optional. Name of a Kubernetes Cluster Domain. + displayName: Name of Kubernetes Cluster Domain + path: clusterDomain + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - displayName: Enable TLS + path: security.tls.enabled + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:security + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - displayName: Custom CA Config Map + path: security.tls.ca + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:security + - urn:alm:descriptor:io.kubernetes:ConfigMap + - displayName: Enable authentication + path: security.authentication.enabled + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:Authentication + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - displayName: Authentication Mode + path: security.authentication.modes + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:Authentication + - urn:alm:descriptor:com.tectonic.ui:select:SCRAM + - description: Spec for each cluster that comprises MongoDB Replicaset + displayName: Cluster SpecList + path: clusterSpecList + statusDescriptors: + - description: | + Phase the MongoDB Deployment is currently on. It can be any of Running, Pending, Failed. + displayName: Phase + path: phase + version: v1 + - description: MongoDB x509 User + displayName: MongoDB User + kind: MongoDBUser + name: mongodbusers.mongodb.com + resources: + - kind: Secret + name: "" + version: v1 + specDescriptors: + - displayName: Name of the database user. + path: username + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - displayName: Name of the database that stores usernames. + path: db + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - displayName: Secret Name that user stores the user’s password. + path: passwordSecretKeyRef.name + x-descriptors: + - urn:alm:descriptor:io.kubernetes:Secret + - displayName: Name of the MongoDB resource to which this user is associated. + path: mongodbResourceRef.name + x-descriptors: + - urn:alm:descriptor:io.kubernetes:mongodb + - displayName: Database on which the role can act. + path: roles.db + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - urn:alm:descriptor:com.tectonic.ui:arrayFieldGroup:Roles + - displayName: Name of the role to grant the database user. + path: roles.name + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:text + - urn:alm:descriptor:com.tectonic.ui:arrayFieldGroup:Roles + - description: MongoDB resource this user belongs to + displayName: MongoDB resource + path: mongodbResourceRef + - description: Roles this user will have + displayName: MongoDB roles + path: roles + statusDescriptors: + - description: | + The current state of the MongoDB User + displayName: State + path: phase + version: v1 + - description: MongoDB Ops Manager + displayName: MongoDB Ops Manager + kind: MongoDBOpsManager + name: opsmanagers.mongodb.com + resources: + - kind: StatefulSet + name: "" + version: apps/v1 + - kind: Service + name: "" + version: v1 + - kind: ConfigMap + name: "" + version: v1 + specDescriptors: + - displayName: The version of Ops Manager to deploy. + path: version + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:number + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfiguration + - displayName: Number of Ops Manager instances. + path: replicas + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:number + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfiguration + - displayName: Secret containing admin user credentials. + path: adminCredentials + x-descriptors: + - urn:alm:descriptor:io.kubernetes:Secret + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfiguration + - displayName: Secret to enable TLS for Ops Manager allowing it to serve traffic over HTTPS. + path: security.tls.secretRef.name + x-descriptors: + - urn:alm:descriptor:io.kubernetes:Secret + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:OpsManagerConfiguration + - displayName: Number of ReplicaSet nodes for Application Database. + path: applicationDatabase.members + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:number + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ApplicationDatabase + - displayName: Secret containing the TLS certificate signed by known or custom CA. + path: applicationDatabase.security.tls.secretRef.name + x-descriptors: + - urn:alm:descriptor:io.kubernetes:Secret + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ApplicationDatabase + - displayName: ConfigMap with CA for Custom TLS Certificate + path: applicationDatabase.security.tls.ca + x-descriptors: + - urn:alm:descriptor:io.kubernetes:ConfigMap + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:ApplicationDatabase + - displayName: Enable Backup Infrastructure + path: backup.enabled + x-descriptors: + - urn:alm:descriptor:com.tectonic.ui:booleanSwitch + - urn:alm:descriptor:com.tectonic.ui:fieldGroup:BackupInfrastructure + - description: Application Database configuration + displayName: Application Database + path: applicationDatabase + - description: configuration + displayName: configuration + path: configuration + - description: Configures external connectivity + displayName: External Connectivity + path: externalConnectivity + statusDescriptors: + - description: | + The current state of the MongoDBOpsManager. + displayName: Phase + path: opsManager.phase + - description: Type of deployment + displayName: Type + path: type + version: v1 + description: | + The MongoDB Enterprise Kubernetes Operator enables easy deploys of MongoDB + into Kubernetes clusters, using our management, monitoring and backup + platforms, Ops Manager and Cloud Manager. + + ## Before You Start + + To start using the operator you''ll need an account in MongoDB Cloud Manager or + a MongoDB Ops Manager deployment. + + * [Create a Secret with your OpsManager API key](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-operator-credentials/#procedure) + + * [Create a ConfigMap with your OpsManager project ID and URL](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/create-project-using-configmap/) + + By installing this integration, you will be able to deploy MongoDB instances + with a single simple command. + + ## Required Parameters + + * `opsManager` or `cloudManager` - Enter the name of the ConfigMap containing project information + * `credentials` - Enter the name of the Secret containing your OpsManager credentials + * `type` - Enter MongoDB Deployment Types ("Standalone", "ReplicaSet", "ShardedCluster" + + ## Supported MongoDB Deployment Types ## + + * Standalone: An instance of mongod that is running as a single server and + not as part of a replica set, this is, it does not do any kind of + replication. + + * Replica Set: A replica set in MongoDB is a group of mongod processes that + maintain the same data set. Replica sets provide redundancy and high + availability, and are the basis for all production deployments. This section + introduces replication in MongoDB as well as the components and architecture + of replica sets. The section also provides tutorials for common tasks + related to replica sets. + + * Sharded Cluster: The set of nodes comprising a sharded MongoDB deployment. + A sharded cluster consists of config servers, shards, and one or more mongos + routing processes. Sharding is a A database architecture that partitions + data by key ranges and distributes the data among two or more database + instances. Sharding enables horizontal scaling. + + ## Requirements for deploying MongoDB OpsManager + + * In order to deploy resources of type MongoDB OpsManager, you will need to + create a secret containing the [credentials](https://docs.mongodb.com/kubernetes-operator/stable/tutorial/plan-om-resource/#om-rsrc-prereqs) + for the Global Owner user + + ## Security ## + + The operator can enable TLS for all traffic between servers and also between + clients and servers. Before enabling `security.tls.enabled` to `true` you + should create your certificates. or you can leave the operator to create all + the certificates for you. The operator ability to create certs is been + deprecated due to Kubernetes API changes. + + For more information, please read the official MongoDB + Kubernetes Operator [docs](https://docs.mongodb.com/kubernetes-operator/stable/). + displayName: MongoDB Enterprise Operator + icon: + - base64data: iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAJEXpUWHRSYXcgcHJvZmlsZSB0eXBlIGV4aWYAAHjarVhtdiMpDPzPKfYIDUIIHYfP9/YGe/wtQXcnsZ1JMjP2xLQBg1CVSmLc+O/f6f7BiwIFF1ly0pQOvKJGDQUP+divsj79EdfnesVzCN8/9Lt7IKCL0NL+mtM5/+r39wK7KXjidwvldg7UjwN67hDyw0LnRmQWBTz0cyE9F6KwB/y5QNnHOpJmeX+EOnbbr5Pk/efsI7VjHcSfo4/fo8B7nbEPhTDI04HPQHEbQPbnHRUbwCe+YKKnjOe4ejxdlsAhr/x0vLPKPaJyP/lP+h9AobT7HTo+OjPd7ct+z6+d75aL3+1M7d75Qz/3oz4e5/qbs2c359inKzHBpek81HWU9YSJWCTS+lnCW/DHeJb1VryzA3sbIO9Hw44Vz+oDvD999N0XP/1YbfMNJsYwgqANoQEb68skQUOjwxk29vYzCCl1oBaoAV5Cb7ht8WtfXds1n7Fx95gZPBbzK9bs42+8P11oTqO890e+fQW7ggUFzDDk7BOzAIifF494Ofh6P74MVwKCvNycccBy1L1EZX9yy3hEC2jCREa7Y81LPxeAi7A3wxhPQOBIntgnf0gI4j38mIFPwUIZQRMqIPDMocPKEIkSwMnB9sZvxK+5gcPuhmYBCKZEAmiUCrCKEDbwR2IGhwoTR2ZOLJxZuSRKMXFKSZKJXxGSKCxJRLKolEw5Zs4pS84uay4alCCOrElFs6qWgk0LVi74dcGEUmqoVGPlmqrUXLWWBvq02LilJi27pq300KlDJ3rq0nPXXoYfoNKIg0caMvLQUSaoNmnGyTNNmXnqLDdq3m1Yn97fR81fqIWFlE2UGzX8VORawpucsGEGxEL0QFwMARA6GGZH9jEGZ9AZZocGRAUHWMkGTveGGBCMwwee/sbuDbkPuLkY/wi3cCHnDLq/gZwz6D5B7hm3F6h1yzbtILcQsjA0px6E8MOEkUvIxZLat1t3d9QCRxsxap9zbTJnSpC9Ujts4Njb6FI9zspJeXbVkeaYtbVJSEezUW6JaKAvwg/D5hQZLDanrtM00jbEY0rHKkDDT6qjjyI1Tvi0x0mumC00PWvDJgQFlzlr6JBLDpCAfhT8JmmB17ocZZ0GOWg/HHfrHjt+t10LAbGArAzLYWMFIjiYSgUyBMqQThxLoUockGq0iRauh56ughvMVW77wZ9+oOWHXtjDEyFKmyAyYgHI19rzRglrZxYvpcA/8Ec1h7rT63Q63Tw690qqSBQJdCs5llETtVGW9VzNejNAzPo0VWt1MD+hwMgT1lTWuj1MBWGlfqQ8kPXMvgMxs56QdF+17rOBX7WS9IlLzsj0nkswang2SsLdcyIt4xRwm+8UBaGTU0gRkaOh10kbtJLBoye6g78sscDpBA9P6YMn4ngidXfgQR1AIWLLjFyG1Mbw/UzR2d7Z2yfcx6EhKA+P6DfFAW1nywjatUeUGk5/Hc+t+2zgkxYhUnAuglk6BGE0m4lCmm4eaSwCwWjITao1orWjGS3EjpZENeNoxg6Qc0pZEYQv5m4m+E+rg/b47bE2dXwVCQDlNY2me6QRBA1iGCEhRbBjNe8F0L/N03a/bc8FWAUaKJ7FAsVBF7mPWO/Ahnz+XNZCdu86wOgwYwXw4fSOAb+8M1bowkooSoXgmAKCKaaBSwER/RBBCHJR5F0klsyWSyrl2vVkchv+ay0Z5IgTNARSNpvOJbKgdkog+dGr8b23CUVLwm3MXGAv9zf5i0grEqY2dchhniumDwkX78a3afXWuruDC3R9mMCg2ZH4pFQxsNVXIAEKVghKRpe2vqIfodLqTwXAD0EOsNTbjSm4FrCboDvIQtJa77P5ihzfpOrk0jpKqQEZ7DHj30T4X6IfnjjiviTJynfQ74d8NyRZ9rkzoXsbghrGJoIikuGb1hDza7FCQ/LrfeLpbnpOR3Asbg+2S4ERh9mALLv3h+dZXowU1hkdQYwG7ohDpp6qnEf9eXpzI9cWdmgiBua6CmmpVo28HNFiAtLnGDi/IqehYLLd3Urk7acMROiNULaywxE4lTNlYaszIj8MXSMIAxMLMiO81TxpLxc+CIX7plJ8UvScIGDEPQ49k2B8RYKHQut9i9BqjOQWhtomW3G6pguDF2NuDWpCnjZpyP5zL/y6dd8IhbzrPyQdZJhmjcKstRWoSBtK9xFbVKVqmeuN+i+Z/1TdVUuQfAgywAEVaqBb5jGvGCf+AbMfNsTNwZtkGeOslliVhF3371oCOWdAc1jWzoXOnfdCFO6VqDKjipiVCMkYgm2VSwIM1S8Fr33UuDLJhwg2GbEQRgIFRCgbAvlCuOD03tu7Qu8SSNxJSi3FYFjpE76mhtw+vUM+N0WU2lNeBwpqB4ofqpRdBsYiKONYcc3BfWosqbYCLxy8q5HfqNnu2s3qCbWCytHwsH1WvnPmihPU+zgkNxTMioQiqPKROhd1/PDXWS0Fn7nOvWNDLB3FmJYHN24vKtdqBTMuc/gFLogWAJRONyL636yEhYjY7Uv7T7q5vYnIXaXI4a12X+6Ezxni0lHxJpgdU+jNVbkDq+bfqkNeRT8KUJzPWBRn64tFuCcNAotWugWLirEIpXvd1MX+DaXc8K6Q/U9WkwT7ruqDnuh2+ukAQWQJ6SNBGIVWhI7g1qpdEMsDPMINBJBdGLWMKxhmwIhVoOPeYSGyrx28rx0dlxoL9WTGIj1ZjYIyEXV5UsKN/SqRUBi27+vRd9sa5fQjoqPf0ejoDEdZ4UjI0kdWVC3mRZArW4GP0hO6hmi+a2a6auawa2bU2YKyMMAD+2qGKrJ4lNuofE7Zhg1LnMnSI1IGDg0esfENVp1sQ7J0F91M8I1uCJakKNxHE/C0FNw+Ajg3QhWWmrsdcIR5ak2cp9aIA03kpImJTclWlaYGPtVWWk0HfmBnOq84dF1xglVxGWdK2GuVx4o8mvyRO7pD+0Up9evW/TleGy73BV77WqdpX0Is8iEsdgnx+yZeJ0hmIupmwlUcl5BT7SKus9BBm/ft6+xqXfwzibyq3OxgyhFHqt/IHuuMUMrBHLhVjyI/7AoDgDkkjh8GiTETsfU/ZHuEtrDMfYEAAAGFaUNDUElDQyBwcm9maWxlAAB4nH2RPUjDQBzFX1O1UioiVhBxyFB1sSAq4qhVKEKFUCu06mBy6YfQpCFJcXEUXAsOfixWHVycdXVwFQTBDxA3NydFFynxf2mhRYwHx/14d+9x9w4QqkWmWW1jgKbbZjIeE9OZFTHwiiD60IMRdMjMMmYlKQHP8XUPH1/vojzL+9yfo0vNWgzwicQzzDBt4nXiqU3b4LxPHGYFWSU+Jx416YLEj1xX6vzGOe+ywDPDZio5RxwmFvMtrLQwK5ga8SRxRNV0yhfSdVY5b3HWimXWuCd/YSirLy9xneYg4ljAIiSIUFDGBoqwEaVVJ8VCkvZjHv4B1y+RSyHXBhg55lGCBtn1g//B726t3MR4PSkUA9pfHOdjCAjsArWK43wfO07tBPA/A1d601+qAtOfpFeaWuQI6N4GLq6bmrIHXO4A/U+GbMqu5Kcp5HLA+xl9UwbovQWCq/XeGvs4fQBS1FXiBjg4BIbzlL3m8e7O1t7+PdPo7wdVb3KbaWTEXAAADRxpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+Cjx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IlhNUCBDb3JlIDQuNC4wLUV4aXYyIj4KIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIKICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIKICAgIHhtbG5zOmRjPSJodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyIKICAgIHhtbG5zOkdJTVA9Imh0dHA6Ly93d3cuZ2ltcC5vcmcveG1wLyIKICAgIHhtbG5zOnRpZmY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vdGlmZi8xLjAvIgogICAgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIgogICB4bXBNTTpEb2N1bWVudElEPSJnaW1wOmRvY2lkOmdpbXA6ZDk1YjhmMjctMWM0NS00YjU1LWEwZTMtNmNmMjM0Yzk1ZWVkIgogICB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmVhMGY5MTI5LWJlMDItNDVjOS1iNGU4LTU3N2MxZTBiZGJhNyIKICAgeG1wTU06T3JpZ2luYWxEb2N1bWVudElEPSJ4bXAuZGlkOjcyNmY4ZGFlLTM4ZTYtNGQ4Ni1hNTI4LWM0NTc4ZGE4ODA0NSIKICAgZGM6Rm9ybWF0PSJpbWFnZS9wbmciCiAgIEdJTVA6QVBJPSIyLjAiCiAgIEdJTVA6UGxhdGZvcm09Ik1hYyBPUyIKICAgR0lNUDpUaW1lU3RhbXA9IjE2MzQ4MzgwMTYyMTQ2MTMiCiAgIEdJTVA6VmVyc2lvbj0iMi4xMC4yNCIKICAgdGlmZjpPcmllbnRhdGlvbj0iMSIKICAgeG1wOkNyZWF0b3JUb29sPSJHSU1QIDIuMTAiPgogICA8eG1wTU06SGlzdG9yeT4KICAgIDxyZGY6U2VxPgogICAgIDxyZGY6bGkKICAgICAgc3RFdnQ6YWN0aW9uPSJzYXZlZCIKICAgICAgc3RFdnQ6Y2hhbmdlZD0iLyIKICAgICAgc3RFdnQ6aW5zdGFuY2VJRD0ieG1wLmlpZDo1YWNhZmVhMC0xZmY5LTRiMmUtYmY0NC02NTM3MzYwMGQzNjEiCiAgICAgIHN0RXZ0OnNvZnR3YXJlQWdlbnQ9IkdpbXAgMi4xMCAoTWFjIE9TKSIKICAgICAgc3RFdnQ6d2hlbj0iMjAyMS0xMC0yMVQxODo0MDoxNiswMTowMCIvPgogICAgPC9yZGY6U2VxPgogICA8L3htcE1NOkhpc3Rvcnk+CiAgPC9yZGY6RGVzY3JpcHRpb24+CiA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgCjw/eHBhY2tldCBlbmQ9InciPz6528V0AAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAB3RJTUUH5QoVESgQ+iToFAAAA8xJREFUeNrlW01PU0EUPTPV+oqb4h+wENYKXbmzsjLEKPAHwB1xQ6N7adiboBtrSAT5AaQmBpuYSN25MS17k5Zf0MemFGznungttCkf782bmTels2w6mbnnnnPv3DvzYrBhrMytIT01gz9/f5temkVv/NMUwKsg1MFEGvlizeTy3ALj9zuuGAf4T2QzydEBACwHINXzwwSOE29N7iAWqe7BsoOYsEdITx2ZigcsIupnzqh/8SC0/6Wx+aNy8yTg6X7rWsfEbu96/71JAGQzyY7n/Rg2AcZ3dQdFswA0Exs+je8KYUZ3UDQXA1bmlgFsScwkMFrEx++F4QXgPN/LaZpQR6IxiY2SO6QSGMj3Qd00jpPE5+FkgDz1B3kAMYt8sTQ8AGQzSTTHyqG83z+qcBpplVLQK4Hm2KpC473U2BzLDgcDwgY+QwFRIwP4knLjuwFRIQv0MGB5PgnntKwFAMUs0MMA53Rem/Ge25I4ufvCXgkQVrVXsSSW7JTAq7lpCJQNnK4IEJNhW2jqGdDGsrH6QrB5GyXwWMKXLoi5gdnL8dwuCXjRvy4xs0vjVGDonMa9MNlALQPiJxlJOcvruOlM2yMBzuQ3Q3Al44BFADA8lJ9LrtSKnD2wBwAhe/hhIVIZpWxiQJgG5qHkohYBoPP4q6tks2Qfh1GBzu3xhWQckM0eWgAIfprrBE+SN4LZBACTNIQzF4KO5EAnmxgQwhtckj2WMeBA8gARpqQ9sAcAAfnrbLk4QGBUsQcAHmIzXFLLrbZFDMgXS1KZoN2W1DHVwj6iUH8O4FQKPCcWc3t6AkGCTin0dpUDQPhq6OREgNixD4BmvBBYBlKNTaqpuChVD8B2wQWj98EnOrVA3hf4YHExJLb1l3FUsBeAfLEG0Bef//Y8H28FqSW2VT2p1VgNUi5QLKC4z1qCqoBYt78fkC/WfMWCwMUM21H5oFrzA4n4xrUt724xQy0fxRRVkd/LKQ0lWgHYLrgAvfQXN1vXSYAAmlUeS7VH63yxBMIVUvDdB1jX8S2BmZbYp70scNkRmXtXaQkOXN4b3FJNfbMAAEDzzoLcFRhV4TReaztOGAPAiwdPLgDh8OqUR7M6XoiaB6CbGtts4cLzwbtv1N8Z7hiv+Rsi823xzb0KRB8T7gMA3jxj59dcZoz3snBUY+VpCmD7nautXGcva2Aog8Siqa/Hov1sbuAxJZXgHC/o1Hz0Ehgsmn71/FIxaXz0AAwS8sj0ihYAcBb5CVJ9weFnwLnR1K6PHgC9FyJsFCVwq+9afAQlIITbnxXMjv+6222dh4/VtAAAAABJRU5ErkJggg== + mediatype: image/png + install: + spec: + deployments: + - name: mongodb-enterprise-operator + spec: + replicas: 1 + selector: + matchLabels: + app.kubernetes.io/component: controller + app.kubernetes.io/instance: mongodb-enterprise-operator + app.kubernetes.io/name: mongodb-enterprise-operator + strategy: {} + template: + metadata: + labels: + app.kubernetes.io/component: controller + app.kubernetes.io/instance: mongodb-enterprise-operator + app.kubernetes.io/name: mongodb-enterprise-operator + spec: + containers: + - args: + - -watch-resource=mongodb + - -watch-resource=opsmanagers + - -watch-resource=mongodbusers + command: + - /usr/local/bin/mongodb-enterprise-operator + env: + - name: OPERATOR_ENV + value: prod + - name: MDB_DEFAULT_ARCHITECTURE + value: non-static + - name: WATCH_NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.annotations['olm.targetNamespaces'] + - name: NAMESPACE + valueFrom: + fieldRef: + fieldPath: metadata.namespace + - name: MANAGED_SECURITY_CONTEXT + value: "true" + - name: CLUSTER_CLIENT_TIMEOUT + value: "10" + - name: IMAGE_PULL_POLICY + value: Always + - name: MONGODB_ENTERPRISE_DATABASE_IMAGE + value: quay.io/mongodb/mongodb-enterprise-database-ubi + - name: INIT_DATABASE_IMAGE_REPOSITORY + value: quay.io/mongodb/mongodb-enterprise-init-database-ubi + - name: INIT_DATABASE_VERSION + value: 1.30.0 + - name: DATABASE_VERSION + value: 1.30.0 + - name: OPS_MANAGER_IMAGE_REPOSITORY + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi + - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY + value: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi + - name: INIT_OPS_MANAGER_VERSION + value: 1.30.0 + - name: INIT_APPDB_IMAGE_REPOSITORY + value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi + - name: INIT_APPDB_VERSION + value: 1.30.0 + - name: OPS_MANAGER_IMAGE_PULL_POLICY + value: Always + - name: AGENT_IMAGE + value: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1 + - name: MDB_AGENT_IMAGE_REPOSITORY + value: quay.io/mongodb/mongodb-agent-ubi + - name: MONGODB_IMAGE + value: mongodb-enterprise-server + - name: MONGODB_REPO_URL + value: quay.io/mongodb + - name: MDB_IMAGE_TYPE + value: ubi8 + - name: PERFORM_FAILOVER + value: "true" + - name: MDB_WEBHOOK_REGISTER_CONFIGURATION + value: "false" + - name: MDB_MAX_CONCURRENT_RECONCILES + value: "1" + - name: RELATED_IMAGE_MONGODB_ENTERPRISE_DATABASE_IMAGE_1_30_0 + value: quay.io/mongodb/mongodb-enterprise-database-ubi:1.30.0 + - name: RELATED_IMAGE_INIT_DATABASE_IMAGE_REPOSITORY_1_30_0 + value: quay.io/mongodb/mongodb-enterprise-init-database-ubi:1.30.0 + - name: RELATED_IMAGE_INIT_OPS_MANAGER_IMAGE_REPOSITORY_1_30_0 + value: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi:1.30.0 + - name: RELATED_IMAGE_INIT_APPDB_IMAGE_REPOSITORY_1_30_0 + value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi:1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_1_8507_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_1_8507_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_1_8507_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_1_8507_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_10_8627_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_11_8645_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_12_8669_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_12_8669_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_12_8669_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_12_8669_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_2_8531_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_3_8550_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_4_8567_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_6_8587_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_7_8596_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_8_8615_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_107_0_9_8621_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_0_8694_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_1_8718_1 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_1_8718_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_1_8718_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_1_8718_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_2_8729_1 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_2_8729_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_2_8729_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_108_0_2_8729_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_30_7791_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_31_7825_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_32_7857_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_12_0_33_7866_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.30.0 + - name: RELATED_IMAGE_AGENT_IMAGE_13_27_0_9284_1 + value: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1 + - name: RELATED_IMAGE_AGENT_IMAGE_13_27_0_9284_1_1_28_0 + value: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1_1.28.0 + - name: RELATED_IMAGE_AGENT_IMAGE_13_27_0_9284_1_1_29_0 + value: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1_1.29.0 + - name: RELATED_IMAGE_AGENT_IMAGE_13_27_0_9284_1_1_30_0 + value: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1_1.30.0 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_0 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.0 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_1 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.1 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_2 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.2 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_3 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.3 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_4 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.4 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_5 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.5 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_6 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.6 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_7 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.7 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_8 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.8 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_9 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.9 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_10 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.10 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_11 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.11 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_12 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.12 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_13 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.13 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_14 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.14 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_15 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.15 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_16 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.16 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_17 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.17 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_18 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.18 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_19 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.19 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_20 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.20 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_21 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.21 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_22 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.22 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_23 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.23 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_24 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.24 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_6_0_25 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.25 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_0 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.0 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_1 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.1 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_2 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.2 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_3 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.3 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_4 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.4 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_6 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.6 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_7 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.7 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_8 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.8 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_9 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.9 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_10 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.10 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_11 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.11 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_7_0_12 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.12 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_8_0_0 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:8.0.0 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_8_0_1 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:8.0.1 + - name: RELATED_IMAGE_OPS_MANAGER_IMAGE_REPOSITORY_8_0_2 + value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:8.0.2 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_0_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.0-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_1_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.1-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_2_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.2-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_3_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.3-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_4_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.4-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_5_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.5-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_6_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.6-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_7_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.7-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_8_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.8-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_9_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.9-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_10_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.10-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_11_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.11-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_12_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.12-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_13_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.13-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_14_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.14-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_15_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.15-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_16_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.16-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_17_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.17-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_18_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.18-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_19_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.19-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_20_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.20-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_21_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:4.4.21-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_0_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.0-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_1_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.1-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_2_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.2-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_3_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.3-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_4_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.4-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_5_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.5-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_6_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.6-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_7_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.7-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_8_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.8-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_9_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.9-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_10_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.10-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_11_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.11-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_12_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.12-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_13_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.13-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_14_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.14-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_15_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.15-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_16_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.16-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_17_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.17-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_18_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:5.0.18-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_6_0_0_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:6.0.0-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_6_0_1_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:6.0.1-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_6_0_2_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:6.0.2-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_6_0_3_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:6.0.3-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_6_0_4_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:6.0.4-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_6_0_5_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:6.0.5-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_8_0_0_ubi8 + value: quay.io/mongodb/mongodb-enterprise-server:8.0.0-ubi8 + - name: RELATED_IMAGE_MONGODB_IMAGE_8_0_0_ubi9 + value: quay.io/mongodb/mongodb-enterprise-server:8.0.0-ubi9 + - name: RELATED_IMAGE_MONGODB_IMAGE_4_2_11_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.11-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_2_2_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.2-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_2_24_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.24-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_2_6_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.6-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_2_8_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.8-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_0_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.0-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_11_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.11-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_4_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.4-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_4_4_21_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.21-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_1_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.1-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_5_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.5-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_6_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.6-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_7_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.7-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_14_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.14-ent + - name: RELATED_IMAGE_MONGODB_IMAGE_5_0_18_ent + value: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.18-ent + image: quay.io/mongodb/mongodb-enterprise-operator-ubi:1.30.0 + imagePullPolicy: Always + name: mongodb-enterprise-operator + resources: + limits: + cpu: 1100m + memory: 1Gi + requests: + cpu: 500m + memory: 200Mi + serviceAccountName: mongodb-enterprise-operator + permissions: + - rules: + - apiGroups: + - "" + resources: + - services + verbs: + - get + - list + - watch + - create + - update + - delete + - apiGroups: + - "" + resources: + - secrets + - configmaps + verbs: + - get + - list + - create + - update + - delete + - watch + - apiGroups: + - apps + resources: + - statefulsets + verbs: + - create + - get + - list + - watch + - delete + - update + - apiGroups: + - "" + resources: + - pods + verbs: + - get + - list + - watch + - delete + - deletecollection + - apiGroups: + - mongodb.com + resources: + - mongodb + - mongodb/finalizers + - mongodbusers + - mongodbusers/finalizers + - opsmanagers + - opsmanagers/finalizers + - mongodbmulticluster + - mongodbmulticluster/finalizers + - mongodb/status + - mongodbusers/status + - opsmanagers/status + - mongodbmulticluster/status + verbs: + - '*' + - apiGroups: + - "" + resources: + - persistentvolumeclaims + verbs: + - get + - delete + - list + - watch + - patch + - update + serviceAccountName: mongodb-enterprise-operator + strategy: deployment + installModes: + - supported: true + type: OwnNamespace + - supported: true + type: SingleNamespace + - supported: false + type: MultiNamespace + - supported: true + type: AllNamespaces + keywords: + - mongodb + - databases + - nosql + links: + - name: Documentation + url: https://docs.opsmanager.mongodb.com/current/tutorial/install-k8s-operator/index.html + maintainers: + - email: support@mongodb.com + name: MongoDB, Inc + maturity: stable + provider: + name: MongoDB, Inc + relatedImages: + - image: quay.io/mongodb/mongodb-enterprise-database-ubi:1.30.0 + name: mongodb-enterprise-database-image-1-30-0 + - image: quay.io/mongodb/mongodb-enterprise-init-database-ubi:1.30.0 + name: init-database-image-repository-1-30-0 + - image: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi:1.30.0 + name: init-ops-manager-image-repository-1-30-0 + - image: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi:1.30.0 + name: init-appdb-image-repository-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1 + name: agent-image-107-0-1-8507-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.28.0 + name: agent-image-107-0-1-8507-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.29.0 + name: agent-image-107-0-1-8507-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.1.8507-1_1.30.0 + name: agent-image-107-0-1-8507-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1 + name: agent-image-107-0-10-8627-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.28.0 + name: agent-image-107-0-10-8627-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.29.0 + name: agent-image-107-0-10-8627-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.10.8627-1_1.30.0 + name: agent-image-107-0-10-8627-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1 + name: agent-image-107-0-11-8645-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.28.0 + name: agent-image-107-0-11-8645-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.29.0 + name: agent-image-107-0-11-8645-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.11.8645-1_1.30.0 + name: agent-image-107-0-11-8645-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1 + name: agent-image-107-0-12-8669-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1_1.28.0 + name: agent-image-107-0-12-8669-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1_1.29.0 + name: agent-image-107-0-12-8669-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.12.8669-1_1.30.0 + name: agent-image-107-0-12-8669-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1 + name: agent-image-107-0-2-8531-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.28.0 + name: agent-image-107-0-2-8531-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.29.0 + name: agent-image-107-0-2-8531-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.2.8531-1_1.30.0 + name: agent-image-107-0-2-8531-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1 + name: agent-image-107-0-3-8550-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.28.0 + name: agent-image-107-0-3-8550-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.29.0 + name: agent-image-107-0-3-8550-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.3.8550-1_1.30.0 + name: agent-image-107-0-3-8550-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1 + name: agent-image-107-0-4-8567-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.28.0 + name: agent-image-107-0-4-8567-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.29.0 + name: agent-image-107-0-4-8567-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.4.8567-1_1.30.0 + name: agent-image-107-0-4-8567-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1 + name: agent-image-107-0-6-8587-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.28.0 + name: agent-image-107-0-6-8587-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.29.0 + name: agent-image-107-0-6-8587-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.6.8587-1_1.30.0 + name: agent-image-107-0-6-8587-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1 + name: agent-image-107-0-7-8596-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.28.0 + name: agent-image-107-0-7-8596-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.29.0 + name: agent-image-107-0-7-8596-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.7.8596-1_1.30.0 + name: agent-image-107-0-7-8596-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1 + name: agent-image-107-0-8-8615-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.28.0 + name: agent-image-107-0-8-8615-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.29.0 + name: agent-image-107-0-8-8615-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.8.8615-1_1.30.0 + name: agent-image-107-0-8-8615-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1 + name: agent-image-107-0-9-8621-1 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.28.0 + name: agent-image-107-0-9-8621-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.29.0 + name: agent-image-107-0-9-8621-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:107.0.9.8621-1_1.30.0 + name: agent-image-107-0-9-8621-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1 + name: agent-image-108-0-0-8694-1 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.28.0 + name: agent-image-108-0-0-8694-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.29.0 + name: agent-image-108-0-0-8694-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.0.8694-1_1.30.0 + name: agent-image-108-0-0-8694-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1 + name: agent-image-108-0-1-8718-1 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1_1.28.0 + name: agent-image-108-0-1-8718-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1_1.29.0 + name: agent-image-108-0-1-8718-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.1.8718-1_1.30.0 + name: agent-image-108-0-1-8718-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1 + name: agent-image-108-0-2-8729-1 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1_1.28.0 + name: agent-image-108-0-2-8729-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1_1.29.0 + name: agent-image-108-0-2-8729-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:108.0.2.8729-1_1.30.0 + name: agent-image-108-0-2-8729-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1 + name: agent-image-12-0-30-7791-1 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.28.0 + name: agent-image-12-0-30-7791-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.29.0 + name: agent-image-12-0-30-7791-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.30.7791-1_1.30.0 + name: agent-image-12-0-30-7791-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1 + name: agent-image-12-0-31-7825-1 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.28.0 + name: agent-image-12-0-31-7825-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.29.0 + name: agent-image-12-0-31-7825-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.31.7825-1_1.30.0 + name: agent-image-12-0-31-7825-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1 + name: agent-image-12-0-32-7857-1 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.28.0 + name: agent-image-12-0-32-7857-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.29.0 + name: agent-image-12-0-32-7857-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.32.7857-1_1.30.0 + name: agent-image-12-0-32-7857-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1 + name: agent-image-12-0-33-7866-1 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.28.0 + name: agent-image-12-0-33-7866-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.29.0 + name: agent-image-12-0-33-7866-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:12.0.33.7866-1_1.30.0 + name: agent-image-12-0-33-7866-1-1-30-0 + - image: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1 + name: agent-image-13-27-0-9284-1 + - image: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1_1.28.0 + name: agent-image-13-27-0-9284-1-1-28-0 + - image: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1_1.29.0 + name: agent-image-13-27-0-9284-1-1-29-0 + - image: quay.io/mongodb/mongodb-agent-ubi:13.27.0.9284-1_1.30.0 + name: agent-image-13-27-0-9284-1-1-30-0 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.0 + name: ops-manager-image-repository-6-0-0 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.1 + name: ops-manager-image-repository-6-0-1 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.2 + name: ops-manager-image-repository-6-0-2 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.3 + name: ops-manager-image-repository-6-0-3 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.4 + name: ops-manager-image-repository-6-0-4 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.5 + name: ops-manager-image-repository-6-0-5 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.6 + name: ops-manager-image-repository-6-0-6 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.7 + name: ops-manager-image-repository-6-0-7 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.8 + name: ops-manager-image-repository-6-0-8 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.9 + name: ops-manager-image-repository-6-0-9 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.10 + name: ops-manager-image-repository-6-0-10 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.11 + name: ops-manager-image-repository-6-0-11 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.12 + name: ops-manager-image-repository-6-0-12 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.13 + name: ops-manager-image-repository-6-0-13 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.14 + name: ops-manager-image-repository-6-0-14 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.15 + name: ops-manager-image-repository-6-0-15 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.16 + name: ops-manager-image-repository-6-0-16 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.17 + name: ops-manager-image-repository-6-0-17 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.18 + name: ops-manager-image-repository-6-0-18 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.19 + name: ops-manager-image-repository-6-0-19 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.20 + name: ops-manager-image-repository-6-0-20 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.21 + name: ops-manager-image-repository-6-0-21 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.22 + name: ops-manager-image-repository-6-0-22 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.23 + name: ops-manager-image-repository-6-0-23 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.24 + name: ops-manager-image-repository-6-0-24 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:6.0.25 + name: ops-manager-image-repository-6-0-25 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.0 + name: ops-manager-image-repository-7-0-0 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.1 + name: ops-manager-image-repository-7-0-1 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.2 + name: ops-manager-image-repository-7-0-2 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.3 + name: ops-manager-image-repository-7-0-3 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.4 + name: ops-manager-image-repository-7-0-4 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.6 + name: ops-manager-image-repository-7-0-6 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.7 + name: ops-manager-image-repository-7-0-7 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.8 + name: ops-manager-image-repository-7-0-8 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.9 + name: ops-manager-image-repository-7-0-9 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.10 + name: ops-manager-image-repository-7-0-10 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.11 + name: ops-manager-image-repository-7-0-11 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:7.0.12 + name: ops-manager-image-repository-7-0-12 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:8.0.0 + name: ops-manager-image-repository-8-0-0 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:8.0.1 + name: ops-manager-image-repository-8-0-1 + - image: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi:8.0.2 + name: ops-manager-image-repository-8-0-2 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.0-ubi8 + name: mongodb-image-4-4-0-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.1-ubi8 + name: mongodb-image-4-4-1-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.2-ubi8 + name: mongodb-image-4-4-2-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.3-ubi8 + name: mongodb-image-4-4-3-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.4-ubi8 + name: mongodb-image-4-4-4-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.5-ubi8 + name: mongodb-image-4-4-5-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.6-ubi8 + name: mongodb-image-4-4-6-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.7-ubi8 + name: mongodb-image-4-4-7-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.8-ubi8 + name: mongodb-image-4-4-8-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.9-ubi8 + name: mongodb-image-4-4-9-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.10-ubi8 + name: mongodb-image-4-4-10-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.11-ubi8 + name: mongodb-image-4-4-11-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.12-ubi8 + name: mongodb-image-4-4-12-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.13-ubi8 + name: mongodb-image-4-4-13-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.14-ubi8 + name: mongodb-image-4-4-14-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.15-ubi8 + name: mongodb-image-4-4-15-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.16-ubi8 + name: mongodb-image-4-4-16-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.17-ubi8 + name: mongodb-image-4-4-17-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.18-ubi8 + name: mongodb-image-4-4-18-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.19-ubi8 + name: mongodb-image-4-4-19-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.20-ubi8 + name: mongodb-image-4-4-20-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:4.4.21-ubi8 + name: mongodb-image-4-4-21-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.0-ubi8 + name: mongodb-image-5-0-0-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.1-ubi8 + name: mongodb-image-5-0-1-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.2-ubi8 + name: mongodb-image-5-0-2-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.3-ubi8 + name: mongodb-image-5-0-3-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.4-ubi8 + name: mongodb-image-5-0-4-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.5-ubi8 + name: mongodb-image-5-0-5-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.6-ubi8 + name: mongodb-image-5-0-6-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.7-ubi8 + name: mongodb-image-5-0-7-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.8-ubi8 + name: mongodb-image-5-0-8-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.9-ubi8 + name: mongodb-image-5-0-9-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.10-ubi8 + name: mongodb-image-5-0-10-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.11-ubi8 + name: mongodb-image-5-0-11-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.12-ubi8 + name: mongodb-image-5-0-12-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.13-ubi8 + name: mongodb-image-5-0-13-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.14-ubi8 + name: mongodb-image-5-0-14-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.15-ubi8 + name: mongodb-image-5-0-15-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.16-ubi8 + name: mongodb-image-5-0-16-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.17-ubi8 + name: mongodb-image-5-0-17-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:5.0.18-ubi8 + name: mongodb-image-5-0-18-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:6.0.0-ubi8 + name: mongodb-image-6-0-0-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:6.0.1-ubi8 + name: mongodb-image-6-0-1-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:6.0.2-ubi8 + name: mongodb-image-6-0-2-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:6.0.3-ubi8 + name: mongodb-image-6-0-3-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:6.0.4-ubi8 + name: mongodb-image-6-0-4-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:6.0.5-ubi8 + name: mongodb-image-6-0-5-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:8.0.0-ubi8 + name: mongodb-image-8-0-0-ubi8 + - image: quay.io/mongodb/mongodb-enterprise-server:8.0.0-ubi9 + name: mongodb-image-8-0-0-ubi9 + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.11-ent + name: mongodb-image-4-2-11-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.2-ent + name: mongodb-image-4-2-2-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.24-ent + name: mongodb-image-4-2-24-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.6-ent + name: mongodb-image-4-2-6-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.2.8-ent + name: mongodb-image-4-2-8-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.0-ent + name: mongodb-image-4-4-0-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.11-ent + name: mongodb-image-4-4-11-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.4-ent + name: mongodb-image-4-4-4-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:4.4.21-ent + name: mongodb-image-4-4-21-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.1-ent + name: mongodb-image-5-0-1-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.5-ent + name: mongodb-image-5-0-5-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.6-ent + name: mongodb-image-5-0-6-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.7-ent + name: mongodb-image-5-0-7-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.14-ent + name: mongodb-image-5-0-14-ent + - image: quay.io/mongodb/mongodb-enterprise-appdb-database-ubi:5.0.18-ent + name: mongodb-image-5-0-18-ent + replaces: mongodb-enterprise.v1.29.0 + version: 1.30.0 + webhookdefinitions: + - admissionReviewVersions: + - v1 + deploymentName: mongodb-enterprise-operator + failurePolicy: Ignore + generateName: validate-mongodb.mongodb.com + rules: + - apiGroups: + - mongodb.com + apiVersions: + - v1 + operations: + - CREATE + - UPDATE + resources: + - mongodb + sideEffects: None + timeoutSeconds: 5 + type: ValidatingAdmissionWebhook + webhookPath: /validate-mongodb-com-v1-mongodb + - admissionReviewVersions: + - v1 + deploymentName: mongodb-enterprise-operator + failurePolicy: Ignore + generateName: validate-mongodbmulticluster.mongodb.com + rules: + - apiGroups: + - mongodb.com + apiVersions: + - v1 + operations: + - CREATE + - UPDATE + resources: + - mongodbmulticluster + sideEffects: None + timeoutSeconds: 5 + type: ValidatingAdmissionWebhook + webhookPath: /validate-mongodb-com-v1-mongodbmulticluster + - admissionReviewVersions: + - v1 + deploymentName: mongodb-enterprise-operator + failurePolicy: Ignore + generateName: validate-opsmanagers.mongodb.com + rules: + - apiGroups: + - mongodb.com + apiVersions: + - v1 + operations: + - CREATE + - UPDATE + resources: + - opsmanagers + sideEffects: None + timeoutSeconds: 5 + type: ValidatingAdmissionWebhook + webhookPath: /validate-mongodb-com-v1-mongodbopsmanager diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodb.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodb.yaml new file mode 100644 index 00000000000..73350d80f69 --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodb.yaml @@ -0,0 +1,2658 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.15.0 + creationTimestamp: null + name: mongodb.mongodb.com +spec: + group: mongodb.com + names: + kind: MongoDB + listKind: MongoDBList + plural: mongodb + shortNames: + - mdb + singular: mongodb + scope: Namespaced + versions: + - additionalPrinterColumns: + - description: Current state of the MongoDB deployment. + jsonPath: .status.phase + name: Phase + type: string + - description: Version of MongoDB server. + jsonPath: .status.version + name: Version + type: string + - description: The type of MongoDB deployment. One of 'ReplicaSet', 'ShardedCluster' + and 'Standalone'. + jsonPath: .spec.type + name: Type + type: string + - description: The time since the MongoDB resource was created. + jsonPath: .metadata.creationTimestamp + name: Age + type: date + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + additionalMongodConfig: + description: |- + AdditionalMongodConfig is additional configuration that can be passed to + each data-bearing mongod at runtime. Uses the same structure as the mongod + configuration file: + https://docs.mongodb.com/manual/reference/configuration-options/ + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the BackupAgent + processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file before + rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for the + mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the mongodb + processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the BackupAgent + processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + backup: + description: |- + Backup contains configuration options for configuring + backup for this MongoDB resource + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + autoTerminateOnDeletion: + description: |- + AutoTerminateOnDeletion indicates if the Operator should stop and terminate the Backup before the cleanup, + when the MongoDB CR is deleted + type: boolean + encryption: + description: Encryption settings + properties: + kmip: + description: Kmip corresponds to the KMIP configuration assigned + to the Ops Manager Project's configuration. + properties: + client: + description: KMIP Client configuration + properties: + clientCertificatePrefix: + description: |- + A prefix used to construct KMIP client certificate (and corresponding password) Secret names. + The names are generated using the following pattern: + KMIP Client Certificate (TLS Secret): + --kmip-client + KMIP Client Certificate Password: + --kmip-client-password + The expected key inside is called "password". + type: string + type: object + required: + - client + type: object + type: object + mode: + enum: + - enabled + - disabled + - terminated + type: string + snapshotSchedule: + properties: + clusterCheckpointIntervalMin: + enum: + - 15 + - 30 + - 60 + type: integer + dailySnapshotRetentionDays: + description: Number of days to retain daily snapshots. Setting + 0 will disable this rule. + maximum: 365 + minimum: 0 + type: integer + fullIncrementalDayOfWeek: + description: Day of the week when Ops Manager takes a full + snapshot. This ensures a recent complete backup. Ops Manager + sets the default value to SUNDAY. + enum: + - SUNDAY + - MONDAY + - TUESDAY + - WEDNESDAY + - THURSDAY + - FRIDAY + - SATURDAY + type: string + monthlySnapshotRetentionMonths: + description: Number of months to retain weekly snapshots. + Setting 0 will disable this rule. + maximum: 36 + minimum: 0 + type: integer + pointInTimeWindowHours: + description: Number of hours in the past for which a point-in-time + snapshot can be created. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 15 + - 30 + - 60 + - 90 + - 120 + - 180 + - 360 + type: integer + referenceHourOfDay: + description: Hour of the day to schedule snapshots using a + 24-hour clock, in UTC. + maximum: 23 + minimum: 0 + type: integer + referenceMinuteOfHour: + description: Minute of the hour to schedule snapshots, in + UTC. + maximum: 59 + minimum: 0 + type: integer + snapshotIntervalHours: + description: Number of hours between snapshots. + enum: + - 6 + - 8 + - 12 + - 24 + type: integer + snapshotRetentionDays: + description: Number of days to keep recent snapshots. + maximum: 365 + minimum: 1 + type: integer + weeklySnapshotRetentionWeeks: + description: Number of weeks to retain weekly snapshots. Setting + 0 will disable this rule + maximum: 365 + minimum: 0 + type: integer + type: object + type: object + cloudManager: + properties: + configMapRef: + properties: + name: + type: string + type: object + type: object + clusterDomain: + format: hostname + type: string + configServerCount: + type: integer + configSrv: + properties: + additionalMongodConfig: + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + description: |- + Configuring logRotation is not allowed under this section. + Please use the most top level resource fields for this; spec.Agent + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for + the mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation for + the mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the + name "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array + type: object + x-kubernetes-preserve-unknown-fields: true + configSrvPodSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + connectivity: + properties: + replicaSetHorizons: + description: |- + ReplicaSetHorizons holds list of maps of horizons to be configured in each of MongoDB processes. + Horizons map horizon names to the node addresses for each process in the replicaset, e.g.: + [ + { + "internal": "my-rs-0.my-internal-domain.com:31843", + "external": "my-rs-0.my-external-domain.com:21467" + }, + { + "internal": "my-rs-1.my-internal-domain.com:31843", + "external": "my-rs-1.my-external-domain.com:21467" + }, + ... + ] + The key of each item in the map is an arbitrary, user-chosen string that + represents the name of the horizon. The value of the item is the host and, + optionally, the port that this mongod node will be connected to from. + items: + additionalProperties: + type: string + type: object + type: array + type: object + credentials: + description: Name of the Secret holding credentials information + type: string + duplicateServiceObjects: + description: |- + In few service mesh options for ex: Istio, by default we would need to duplicate the + service objects created per pod in all the clusters to enable DNS resolution. Users can + however configure their ServiceMesh with DNS proxy(https://istio.io/latest/docs/ops/configuration/traffic-management/dns-proxy/) + enabled in which case the operator doesn't need to create the service objects per cluster. This options tells the operator + whether it should create the service objects in all the clusters or not. By default, if not specified the operator would create the duplicate svc objects. + type: boolean + externalAccess: + description: ExternalAccessConfiguration provides external access + configuration. + properties: + externalDomain: + description: An external domain that is used for exposing MongoDB + to the outside world. + type: string + externalService: + description: Provides a way to override the default (NodePort) + Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be added to the + externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + featureCompatibilityVersion: + type: string + logLevel: + enum: + - DEBUG + - INFO + - WARN + - ERROR + - FATAL + type: string + memberConfig: + description: MemberConfig allows to specify votes, priorities and + tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + x-kubernetes-preserve-unknown-fields: true + members: + description: Amount of members for this MongoDB Replica Set + type: integer + mongodsPerShardCount: + type: integer + mongos: + properties: + additionalMongodConfig: + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + description: |- + Configuring logRotation is not allowed under this section. + Please use the most top level resource fields for this; spec.Agent + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for + the mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation for + the mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the + name "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array + type: object + x-kubernetes-preserve-unknown-fields: true + mongosCount: + type: integer + mongosPodSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + opsManager: + properties: + configMapRef: + properties: + name: + type: string + type: object + type: object + persistent: + type: boolean + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + prometheus: + description: Prometheus configurations. + properties: + metricsPath: + description: Indicates path to the metrics endpoint. + pattern: ^\/[a-z0-9]+$ + type: string + passwordSecretRef: + description: Name of a Secret containing a HTTP Basic Auth Password. + properties: + key: + description: Key is the key in the secret storing this password. + Defaults to "password" + type: string + name: + description: Name is the name of the secret storing this user's + password + type: string + required: + - name + type: object + port: + description: Port where metrics endpoint will bind to. Defaults + to 9216. + type: integer + tlsSecretKeyRef: + description: |- + Name of a Secret (type kubernetes.io/tls) holding the certificates to use in the + Prometheus endpoint. + properties: + key: + description: Key is the key in the secret storing this password. + Defaults to "password" + type: string + name: + description: Name is the name of the secret storing this user's + password + type: string + required: + - name + type: object + username: + description: HTTP Basic Auth Username for metrics endpoint. + type: string + required: + - passwordSecretRef + - username + type: object + security: + properties: + authentication: + description: |- + Authentication holds various authentication related settings that affect + this MongoDB resource. + properties: + agents: + description: Agents contains authentication configuration + properties for the agents + properties: + automationLdapGroupDN: + type: string + automationPasswordSecretRef: + description: SecretKeySelector selects a key of a Secret. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + automationUserName: + type: string + clientCertificateSecretRef: + type: object + x-kubernetes-preserve-unknown-fields: true + mode: + description: Mode is the desired Authentication mode that + the agents will use + type: string + required: + - mode + type: object + enabled: + type: boolean + ignoreUnknownUsers: + description: IgnoreUnknownUsers maps to the inverse of auth.authoritativeSet + type: boolean + internalCluster: + type: string + ldap: + description: LDAP Configuration + properties: + authzQueryTemplate: + type: string + bindQueryPasswordSecretRef: + properties: + name: + type: string + required: + - name + type: object + bindQueryUser: + type: string + caConfigMapRef: + description: Allows to point at a ConfigMap/key with a + CA file to mount on the Pod + properties: + key: + description: The key to select. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + servers: + items: + type: string + type: array + timeoutMS: + type: integer + transportSecurity: + enum: + - tls + - none + type: string + userCacheInvalidationInterval: + type: integer + userToDNMapping: + type: string + validateLDAPServerConfig: + type: boolean + type: object + modes: + items: + enum: + - X509 + - SCRAM + - SCRAM-SHA-1 + - MONGODB-CR + - SCRAM-SHA-256 + - LDAP + type: string + type: array + requireClientTLSAuthentication: + description: Clients should present valid TLS certificates + type: boolean + required: + - enabled + type: object + certsSecretPrefix: + type: string + roles: + items: + properties: + authenticationRestrictions: + items: + properties: + clientSource: + items: + type: string + type: array + serverAddress: + items: + type: string + type: array + type: object + type: array + db: + type: string + privileges: + items: + properties: + actions: + items: + type: string + type: array + resource: + properties: + cluster: + type: boolean + collection: + type: string + db: + type: string + type: object + required: + - actions + - resource + type: object + type: array + role: + type: string + roles: + items: + properties: + db: + type: string + role: + type: string + required: + - db + - role + type: object + type: array + required: + - db + - role + type: object + type: array + tls: + properties: + additionalCertificateDomains: + items: + type: string + type: array + ca: + description: |- + CA corresponds to a ConfigMap containing an entry for the CA certificate (ca.pem) + used to validate the certificates created already. + type: string + enabled: + description: |- + DEPRECATED please enable TLS by setting `security.certsSecretPrefix` or `security.tls.secretRef.prefix`. + Enables TLS for this resource. This will make the operator try to mount a + Secret with a defined name (-cert). + This is only used when enabling TLS on a MongoDB resource, and not on the + AppDB, where TLS is configured by setting `secretRef.Name`. + type: boolean + type: object + type: object + service: + description: |- + DEPRECATED please use `spec.statefulSet.spec.serviceName` to provide a custom service name. + this is an optional service, it will get the name "-service" in case not provided + type: string + shard: + properties: + additionalMongodConfig: + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + description: |- + Configuring logRotation is not allowed under this section. + Please use the most top level resource fields for this; spec.Agent + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for + the mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation for + the mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the + name "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array + type: object + x-kubernetes-preserve-unknown-fields: true + shardCount: + type: integer + shardOverrides: + description: |- + ShardOverrides allow for overriding the configuration of a specific shard. + It replaces deprecated spec.shard.shardSpecificPodSpec field. When spec.shard.shardSpecificPodSpec is still defined then + spec.shard.shardSpecificPodSpec is applied first to the particular shard and then spec.shardOverrides is applied on top + of that (if defined for the same shard). + items: + properties: + additionalMongodConfig: + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for + the mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation + for the mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have + total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log + file before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have + total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log + file before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + clusterSpecList: + items: + description: |- + ClusterSpecItemOverride is almost exact copy of ClusterSpecItem object. + The object is used in ClusterSpecList in ShardedClusterComponentOverrideSpec in shard overrides. + The difference lies in some fields being optional, e.g. Members to make it possible to NOT override fields and rely on + what was set in top level shard configuration. + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + x-kubernetes-preserve-unknown-fields: true + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + type: object + type: array + memberConfig: + description: Process configuration override for this shard. + Used in SingleCluster only. The number of items specified + must be >= spec.mongodsPerShardCount or spec.shardOverride.members. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + x-kubernetes-preserve-unknown-fields: true + members: + description: Number of member nodes in this shard. Used only + in SingleCluster. For MultiCluster the number of members is + specified in ShardOverride.ClusterSpecList. + type: integer + podSpec: + description: The following override fields work for SingleCluster + only. For MultiCluster - fields from specific clusters are + used. + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + shardNames: + items: + type: string + minItems: 1 + type: array + statefulSet: + description: Statefulset override for this particular shard. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around + Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - shardNames + type: object + type: array + shardPodSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + shardSpecificPodSpec: + description: |- + ShardSpecificPodSpec allows you to provide a Statefulset override per shard. + DEPRECATED please use spec.shard.shardOverrides instead + items: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: array + statefulSet: + description: |- + StatefulSetConfiguration provides the statefulset override for each of the cluster's statefulset + if "StatefulSetConfiguration" is specified at cluster level under "clusterSpecList" that takes precedence over + the global one + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around Labels + and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + topology: + description: |- + Topology sets the desired cluster topology of MongoDB resources + It defaults (if empty or not set) to SingleCluster. If MultiCluster specified, + then clusterSpecList field is mandatory and at least one member cluster has to be specified. + enum: + - SingleCluster + - MultiCluster + type: string + type: + enum: + - Standalone + - ReplicaSet + - ShardedCluster + type: string + version: + pattern: ^[0-9]+.[0-9]+.[0-9]+(-.+)?$|^$ + type: string + required: + - credentials + - type + - version + type: object + x-kubernetes-preserve-unknown-fields: true + status: + properties: + backup: + properties: + statusName: + type: string + required: + - statusName + type: object + configServerCount: + type: integer + featureCompatibilityVersion: + type: string + lastTransition: + type: string + link: + type: string + members: + type: integer + message: + type: string + mongodsPerShardCount: + type: integer + mongosCount: + type: integer + observedGeneration: + format: int64 + type: integer + phase: + type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array + resourcesNotReady: + items: + description: ResourceNotReady describes the dependent resource which + is not ready yet + properties: + errors: + items: + properties: + message: + type: string + reason: + type: string + type: object + type: array + kind: + description: ResourceKind specifies a kind of a Kubernetes resource. + Used in status of a Custom Resource + type: string + message: + type: string + name: + type: string + required: + - kind + - name + type: object + type: array + shardCount: + type: integer + sizeStatusInClusters: + description: MongodbShardedSizeStatusInClusters describes the number + and sizes of replica sets members deployed across member clusters + properties: + configServerMongodsInClusters: + additionalProperties: + type: integer + type: object + mongosCountInClusters: + additionalProperties: + type: integer + type: object + shardMongodsInClusters: + additionalProperties: + type: integer + type: object + shardOverridesInClusters: + additionalProperties: + additionalProperties: + type: integer + type: object + type: object + type: object + version: + type: string + warnings: + items: + type: string + type: array + required: + - phase + - version + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodbmulticluster.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodbmulticluster.yaml new file mode 100644 index 00000000000..82efcce20fd --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodbmulticluster.yaml @@ -0,0 +1,1070 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.15.0 + creationTimestamp: null + name: mongodbmulticluster.mongodb.com +spec: + group: mongodb.com + names: + kind: MongoDBMultiCluster + listKind: MongoDBMultiClusterList + plural: mongodbmulticluster + shortNames: + - mdbmc + singular: mongodbmulticluster + scope: Namespaced + versions: + - additionalPrinterColumns: + - description: Current state of the MongoDB deployment. + jsonPath: .status.phase + name: Phase + type: string + - description: The time since the MongoDBMultiCluster resource was created. + jsonPath: .metadata.creationTimestamp + name: Age + type: date + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + additionalMongodConfig: + description: |- + AdditionalMongodConfig is additional configuration that can be passed to + each data-bearing mongod at runtime. Uses the same structure as the mongod + configuration file: + https://docs.mongodb.com/manual/reference/configuration-options/ + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the BackupAgent + processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file before + rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for the + mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the mongodb + processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the BackupAgent + processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + backup: + description: |- + Backup contains configuration options for configuring + backup for this MongoDB resource + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + autoTerminateOnDeletion: + description: |- + AutoTerminateOnDeletion indicates if the Operator should stop and terminate the Backup before the cleanup, + when the MongoDB CR is deleted + type: boolean + encryption: + description: Encryption settings + properties: + kmip: + description: Kmip corresponds to the KMIP configuration assigned + to the Ops Manager Project's configuration. + properties: + client: + description: KMIP Client configuration + properties: + clientCertificatePrefix: + description: |- + A prefix used to construct KMIP client certificate (and corresponding password) Secret names. + The names are generated using the following pattern: + KMIP Client Certificate (TLS Secret): + --kmip-client + KMIP Client Certificate Password: + --kmip-client-password + The expected key inside is called "password". + type: string + type: object + required: + - client + type: object + type: object + mode: + enum: + - enabled + - disabled + - terminated + type: string + snapshotSchedule: + properties: + clusterCheckpointIntervalMin: + enum: + - 15 + - 30 + - 60 + type: integer + dailySnapshotRetentionDays: + description: Number of days to retain daily snapshots. Setting + 0 will disable this rule. + maximum: 365 + minimum: 0 + type: integer + fullIncrementalDayOfWeek: + description: Day of the week when Ops Manager takes a full + snapshot. This ensures a recent complete backup. Ops Manager + sets the default value to SUNDAY. + enum: + - SUNDAY + - MONDAY + - TUESDAY + - WEDNESDAY + - THURSDAY + - FRIDAY + - SATURDAY + type: string + monthlySnapshotRetentionMonths: + description: Number of months to retain weekly snapshots. + Setting 0 will disable this rule. + maximum: 36 + minimum: 0 + type: integer + pointInTimeWindowHours: + description: Number of hours in the past for which a point-in-time + snapshot can be created. + enum: + - 1 + - 2 + - 3 + - 4 + - 5 + - 6 + - 7 + - 15 + - 30 + - 60 + - 90 + - 120 + - 180 + - 360 + type: integer + referenceHourOfDay: + description: Hour of the day to schedule snapshots using a + 24-hour clock, in UTC. + maximum: 23 + minimum: 0 + type: integer + referenceMinuteOfHour: + description: Minute of the hour to schedule snapshots, in + UTC. + maximum: 59 + minimum: 0 + type: integer + snapshotIntervalHours: + description: Number of hours between snapshots. + enum: + - 6 + - 8 + - 12 + - 24 + type: integer + snapshotRetentionDays: + description: Number of days to keep recent snapshots. + maximum: 365 + minimum: 1 + type: integer + weeklySnapshotRetentionWeeks: + description: Number of weeks to retain weekly snapshots. Setting + 0 will disable this rule + maximum: 365 + minimum: 0 + type: integer + type: object + type: object + cloudManager: + properties: + configMapRef: + properties: + name: + type: string + type: object + type: object + clusterDomain: + format: hostname + type: string + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external access + configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default (NodePort) + Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be added + to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the name + "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around + Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array + connectivity: + properties: + replicaSetHorizons: + description: |- + ReplicaSetHorizons holds list of maps of horizons to be configured in each of MongoDB processes. + Horizons map horizon names to the node addresses for each process in the replicaset, e.g.: + [ + { + "internal": "my-rs-0.my-internal-domain.com:31843", + "external": "my-rs-0.my-external-domain.com:21467" + }, + { + "internal": "my-rs-1.my-internal-domain.com:31843", + "external": "my-rs-1.my-external-domain.com:21467" + }, + ... + ] + The key of each item in the map is an arbitrary, user-chosen string that + represents the name of the horizon. The value of the item is the host and, + optionally, the port that this mongod node will be connected to from. + items: + additionalProperties: + type: string + type: object + type: array + type: object + credentials: + description: Name of the Secret holding credentials information + type: string + duplicateServiceObjects: + description: |- + In few service mesh options for ex: Istio, by default we would need to duplicate the + service objects created per pod in all the clusters to enable DNS resolution. Users can + however configure their ServiceMesh with DNS proxy(https://istio.io/latest/docs/ops/configuration/traffic-management/dns-proxy/) + enabled in which case the operator doesn't need to create the service objects per cluster. This options tells the operator + whether it should create the service objects in all the clusters or not. By default, if not specified the operator would create the duplicate svc objects. + type: boolean + externalAccess: + description: ExternalAccessConfiguration provides external access + configuration. + properties: + externalDomain: + description: An external domain that is used for exposing MongoDB + to the outside world. + type: string + externalService: + description: Provides a way to override the default (NodePort) + Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be added to the + externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + featureCompatibilityVersion: + type: string + logLevel: + enum: + - DEBUG + - INFO + - WARN + - ERROR + - FATAL + type: string + opsManager: + properties: + configMapRef: + properties: + name: + type: string + type: object + type: object + persistent: + type: boolean + prometheus: + description: Prometheus configurations. + properties: + metricsPath: + description: Indicates path to the metrics endpoint. + pattern: ^\/[a-z0-9]+$ + type: string + passwordSecretRef: + description: Name of a Secret containing a HTTP Basic Auth Password. + properties: + key: + description: Key is the key in the secret storing this password. + Defaults to "password" + type: string + name: + description: Name is the name of the secret storing this user's + password + type: string + required: + - name + type: object + port: + description: Port where metrics endpoint will bind to. Defaults + to 9216. + type: integer + tlsSecretKeyRef: + description: |- + Name of a Secret (type kubernetes.io/tls) holding the certificates to use in the + Prometheus endpoint. + properties: + key: + description: Key is the key in the secret storing this password. + Defaults to "password" + type: string + name: + description: Name is the name of the secret storing this user's + password + type: string + required: + - name + type: object + username: + description: HTTP Basic Auth Username for metrics endpoint. + type: string + required: + - passwordSecretRef + - username + type: object + security: + properties: + authentication: + description: |- + Authentication holds various authentication related settings that affect + this MongoDB resource. + properties: + agents: + description: Agents contains authentication configuration + properties for the agents + properties: + automationLdapGroupDN: + type: string + automationPasswordSecretRef: + description: SecretKeySelector selects a key of a Secret. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + automationUserName: + type: string + clientCertificateSecretRef: + type: object + x-kubernetes-preserve-unknown-fields: true + mode: + description: Mode is the desired Authentication mode that + the agents will use + type: string + required: + - mode + type: object + enabled: + type: boolean + ignoreUnknownUsers: + description: IgnoreUnknownUsers maps to the inverse of auth.authoritativeSet + type: boolean + internalCluster: + type: string + ldap: + description: LDAP Configuration + properties: + authzQueryTemplate: + type: string + bindQueryPasswordSecretRef: + properties: + name: + type: string + required: + - name + type: object + bindQueryUser: + type: string + caConfigMapRef: + description: Allows to point at a ConfigMap/key with a + CA file to mount on the Pod + properties: + key: + description: The key to select. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the ConfigMap or its + key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + servers: + items: + type: string + type: array + timeoutMS: + type: integer + transportSecurity: + enum: + - tls + - none + type: string + userCacheInvalidationInterval: + type: integer + userToDNMapping: + type: string + validateLDAPServerConfig: + type: boolean + type: object + modes: + items: + enum: + - X509 + - SCRAM + - SCRAM-SHA-1 + - MONGODB-CR + - SCRAM-SHA-256 + - LDAP + type: string + type: array + requireClientTLSAuthentication: + description: Clients should present valid TLS certificates + type: boolean + required: + - enabled + type: object + certsSecretPrefix: + type: string + roles: + items: + properties: + authenticationRestrictions: + items: + properties: + clientSource: + items: + type: string + type: array + serverAddress: + items: + type: string + type: array + type: object + type: array + db: + type: string + privileges: + items: + properties: + actions: + items: + type: string + type: array + resource: + properties: + cluster: + type: boolean + collection: + type: string + db: + type: string + type: object + required: + - actions + - resource + type: object + type: array + role: + type: string + roles: + items: + properties: + db: + type: string + role: + type: string + required: + - db + - role + type: object + type: array + required: + - db + - role + type: object + type: array + tls: + properties: + additionalCertificateDomains: + items: + type: string + type: array + ca: + description: |- + CA corresponds to a ConfigMap containing an entry for the CA certificate (ca.pem) + used to validate the certificates created already. + type: string + enabled: + description: |- + DEPRECATED please enable TLS by setting `security.certsSecretPrefix` or `security.tls.secretRef.prefix`. + Enables TLS for this resource. This will make the operator try to mount a + Secret with a defined name (-cert). + This is only used when enabling TLS on a MongoDB resource, and not on the + AppDB, where TLS is configured by setting `secretRef.Name`. + type: boolean + type: object + type: object + statefulSet: + description: |- + StatefulSetConfiguration provides the statefulset override for each of the cluster's statefulset + if "StatefulSetConfiguration" is specified at cluster level under "clusterSpecList" that takes precedence over + the global one + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around Labels + and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + topology: + description: |- + Topology sets the desired cluster topology of MongoDB resources + It defaults (if empty or not set) to SingleCluster. If MultiCluster specified, + then clusterSpecList field is mandatory and at least one member cluster has to be specified. + enum: + - SingleCluster + - MultiCluster + type: string + type: + enum: + - Standalone + - ReplicaSet + - ShardedCluster + type: string + version: + pattern: ^[0-9]+.[0-9]+.[0-9]+(-.+)?$|^$ + type: string + required: + - credentials + - type + - version + type: object + x-kubernetes-preserve-unknown-fields: true + status: + properties: + backup: + properties: + statusName: + type: string + required: + - statusName + type: object + clusterStatusList: + description: ClusterStatusList holds a list of clusterStatuses corresponding + to each cluster + properties: + clusterStatuses: + items: + description: |- + ClusterStatusItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + lastTransition: + type: string + members: + type: integer + message: + type: string + observedGeneration: + format: int64 + type: integer + phase: + type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array + resourcesNotReady: + items: + description: ResourceNotReady describes the dependent + resource which is not ready yet + properties: + errors: + items: + properties: + message: + type: string + reason: + type: string + type: object + type: array + kind: + description: ResourceKind specifies a kind of a Kubernetes + resource. Used in status of a Custom Resource + type: string + message: + type: string + name: + type: string + required: + - kind + - name + type: object + type: array + warnings: + items: + type: string + type: array + required: + - phase + type: object + type: array + type: object + featureCompatibilityVersion: + type: string + lastTransition: + type: string + link: + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + phase: + type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array + resourcesNotReady: + items: + description: ResourceNotReady describes the dependent resource which + is not ready yet + properties: + errors: + items: + properties: + message: + type: string + reason: + type: string + type: object + type: array + kind: + description: ResourceKind specifies a kind of a Kubernetes resource. + Used in status of a Custom Resource + type: string + message: + type: string + name: + type: string + required: + - kind + - name + type: object + type: array + version: + type: string + warnings: + items: + type: string + type: array + required: + - phase + - version + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodbusers.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodbusers.yaml new file mode 100644 index 00000000000..74f79dd6b79 --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_mongodbusers.yaml @@ -0,0 +1,185 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.15.0 + creationTimestamp: null + name: mongodbusers.mongodb.com +spec: + group: mongodb.com + names: + kind: MongoDBUser + listKind: MongoDBUserList + plural: mongodbusers + shortNames: + - mdbu + singular: mongodbuser + scope: Namespaced + versions: + - additionalPrinterColumns: + - description: The current state of the MongoDB User. + jsonPath: .status.phase + name: Phase + type: string + - description: The time since the MongoDB User resource was created. + jsonPath: .metadata.creationTimestamp + name: Age + type: date + name: v1 + schema: + openAPIV3Schema: + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + connectionStringSecretName: + type: string + db: + type: string + mongodbResourceRef: + properties: + name: + type: string + namespace: + type: string + required: + - name + type: object + passwordSecretKeyRef: + description: |- + SecretKeyRef is a reference to a value in a given secret in the same + namespace. Based on: + https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.15/#secretkeyselector-v1-core + properties: + key: + type: string + name: + type: string + required: + - name + type: object + roles: + items: + properties: + db: + type: string + name: + type: string + required: + - db + - name + type: object + type: array + username: + type: string + required: + - db + - username + type: object + status: + properties: + db: + type: string + lastTransition: + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + phase: + type: string + project: + type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array + resourcesNotReady: + items: + description: ResourceNotReady describes the dependent resource which + is not ready yet + properties: + errors: + items: + properties: + message: + type: string + reason: + type: string + type: object + type: array + kind: + description: ResourceKind specifies a kind of a Kubernetes resource. + Used in status of a Custom Resource + type: string + message: + type: string + name: + type: string + required: + - kind + - name + type: object + type: array + roles: + items: + properties: + db: + type: string + name: + type: string + required: + - db + - name + type: object + type: array + username: + type: string + warnings: + items: + type: string + type: array + required: + - db + - phase + - project + - username + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_opsmanagers.yaml b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_opsmanagers.yaml new file mode 100644 index 00000000000..b734a5e53be --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/manifests/mongodb.com_opsmanagers.yaml @@ -0,0 +1,1910 @@ +apiVersion: apiextensions.k8s.io/v1 +kind: CustomResourceDefinition +metadata: + annotations: + controller-gen.kubebuilder.io/version: v0.15.0 + creationTimestamp: null + name: opsmanagers.mongodb.com +spec: + group: mongodb.com + names: + kind: MongoDBOpsManager + listKind: MongoDBOpsManagerList + plural: opsmanagers + shortNames: + - om + singular: opsmanager + scope: Namespaced + versions: + - additionalPrinterColumns: + - description: The number of replicas of MongoDBOpsManager. + jsonPath: .spec.replicas + name: Replicas + type: integer + - description: The version of MongoDBOpsManager. + jsonPath: .spec.version + name: Version + type: string + - description: The current state of the MongoDBOpsManager. + jsonPath: .status.opsManager.phase + name: State (OpsManager) + type: string + - description: The current state of the MongoDBOpsManager Application Database. + jsonPath: .status.applicationDatabase.phase + name: State (AppDB) + type: string + - description: The current state of the MongoDBOpsManager Backup Daemon. + jsonPath: .status.backup.phase + name: State (Backup) + type: string + - description: The time since the MongoDBOpsManager resource was created. + jsonPath: .metadata.creationTimestamp + name: Age + type: date + - description: Warnings. + jsonPath: .status.warnings + name: Warnings + type: string + name: v1 + schema: + openAPIV3Schema: + description: The MongoDBOpsManager resource allows you to deploy Ops Manager + within your Kubernetes cluster + properties: + apiVersion: + description: |- + APIVersion defines the versioned schema of this representation of an object. + Servers should convert recognized schemas to the latest internal value, and + may reject unrecognized values. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources + type: string + kind: + description: |- + Kind is a string value representing the REST resource this object represents. + Servers may infer this from the endpoint the client submits requests to. + Cannot be updated. + In CamelCase. + More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds + type: string + metadata: + type: object + spec: + properties: + adminCredentials: + description: |- + AdminSecret is the secret for the first admin user to create + has the fields: "Username", "Password", "FirstName", "LastName" + type: string + applicationDatabase: + properties: + additionalMongodConfig: + description: |- + AdditionalMongodConfig are additional configurations that can be passed to + each data-bearing mongod at runtime. Uses the same structure as the mongod + configuration file: + https://docs.mongodb.com/manual/reference/configuration-options/ + type: object + x-kubernetes-preserve-unknown-fields: true + agent: + description: specify configuration like startup flags and automation + config settings for the AutomationAgent and MonitoringAgent + properties: + backupAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + logLevel: + type: string + logRotate: + description: DEPRECATED please use mongod.logRotate + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + maxLogFileDurationHours: + type: integer + mongod: + description: AgentLoggingMongodConfig contain settings for + the mongodb processes configured by the agent + properties: + auditlogRotate: + description: LogRotate configures audit log rotation for + the mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + logRotate: + description: LogRotate configures log rotation for the + mongodb processes + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log file + before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + systemLog: + description: SystemLog configures system log of mongod + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + monitoringAgent: + properties: + logRotate: + description: LogRotate configures log rotation for the + BackupAgent processes + properties: + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + OM only supports ints + type: integer + timeThresholdHrs: + description: Number of hours after which this MongoDB + Agent rotates the log file. + type: integer + type: object + type: object + readinessProbe: + properties: + environmentVariables: + additionalProperties: + type: string + type: object + type: object + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + systemLog: + description: DEPRECATED please use mongod.systemLog + properties: + destination: + type: string + logAppend: + type: boolean + path: + type: string + required: + - destination + - logAppend + - path + type: object + type: object + automationConfig: + description: |- + AutomationConfigOverride holds any fields that will be merged on top of the Automation Config + that the operator creates for the AppDB. Currently only the process.disabled and logRotate field is recognized. + properties: + processes: + items: + description: OverrideProcess contains fields that we can + override on the AutomationConfig processes. + properties: + disabled: + type: boolean + logRotate: + description: CrdLogRotate is the crd definition of LogRotate + including fields in strings while the agent supports + them as float64 + properties: + includeAuditLogsWithMongoDBLogs: + description: |- + set to 'true' to have the Automation Agent rotate the audit files along + with mongodb log files + type: boolean + numTotal: + description: maximum number of log files to have + total + type: integer + numUncompressed: + description: maximum number of log files to leave + uncompressed + type: integer + percentOfDiskspace: + description: |- + Maximum percentage of the total disk space these log files should take up. + The string needs to be able to be converted to float64 + type: string + sizeThresholdMB: + description: |- + Maximum size for an individual log file before rotation. + The string needs to be able to be converted to float64. + Fractional values of MB are supported. + type: string + timeThresholdHrs: + description: maximum hours for an individual log + file before rotation + type: integer + required: + - sizeThresholdMB + - timeThresholdHrs + type: object + name: + type: string + required: + - disabled + - name + type: object + type: array + replicaSet: + properties: + settings: + description: |- + MapWrapper is a wrapper for a map to be used by other structs. + The CRD generator does not support map[string]interface{} + on the top level and hence we need to work around this with + a wrapping struct. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + cloudManager: + properties: + configMapRef: + properties: + name: + type: string + type: object + type: object + clusterDomain: + type: string + clusterSpecList: + items: + description: |- + ClusterSpecItem is the mongodb multi-cluster spec that is specific to a + particular Kubernetes cluster, this maps to the statefulset created in each cluster + properties: + clusterName: + description: |- + ClusterName is name of the cluster where the MongoDB Statefulset will be scheduled, the + name should have a one on one mapping with the service-account created in the central cluster + to talk to the workload clusters. + type: string + externalAccess: + description: ExternalAccessConfiguration provides external + access configuration for Multi-Cluster. + properties: + externalDomain: + description: An external domain that is used for exposing + MongoDB to the outside world. + type: string + externalService: + description: Provides a way to override the default + (NodePort) Service + properties: + annotations: + additionalProperties: + type: string + description: A map of annotations that shall be + added to the externally available Service. + type: object + spec: + description: A wrapper for the Service spec object. + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + type: object + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica + Set + type: integer + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB + resources only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + service: + description: this is an optional service, it will get the + name "-service" in case not provided + type: string + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array + connectivity: + properties: + replicaSetHorizons: + description: |- + ReplicaSetHorizons holds list of maps of horizons to be configured in each of MongoDB processes. + Horizons map horizon names to the node addresses for each process in the replicaset, e.g.: + [ + { + "internal": "my-rs-0.my-internal-domain.com:31843", + "external": "my-rs-0.my-external-domain.com:21467" + }, + { + "internal": "my-rs-1.my-internal-domain.com:31843", + "external": "my-rs-1.my-external-domain.com:21467" + }, + ... + ] + The key of each item in the map is an arbitrary, user-chosen string that + represents the name of the horizon. The value of the item is the host and, + optionally, the port that this mongod node will be connected to from. + items: + additionalProperties: + type: string + type: object + type: array + type: object + credentials: + description: Name of the Secret holding credentials information + type: string + featureCompatibilityVersion: + type: string + memberConfig: + description: MemberConfig allows to specify votes, priorities + and tags for each of the mongodb process. + items: + properties: + priority: + type: string + tags: + additionalProperties: + type: string + type: object + votes: + type: integer + type: object + type: array + members: + description: Amount of members for this MongoDB Replica Set + maximum: 50 + minimum: 3 + type: integer + monitoringAgent: + description: |- + Specify configuration like startup flags just for the MonitoringAgent. + These take precedence over + the flags set in AutomationAgent + properties: + startupOptions: + additionalProperties: + type: string + description: |- + StartupParameters can be used to configure the startup parameters with which the agent starts. That also contains + log rotation settings as defined here: + type: object + required: + - startupOptions + type: object + opsManager: + properties: + configMapRef: + properties: + name: + type: string + type: object + type: object + passwordSecretKeyRef: + description: |- + PasswordSecretKeyRef contains a reference to the secret which contains the password + for the mongodb-ops-manager SCRAM-SHA user + properties: + key: + type: string + name: + type: string + required: + - name + type: object + podSpec: + properties: + persistence: + description: Note, that this field is used by MongoDB resources + only, let's keep it here for simplicity + properties: + multiple: + properties: + data: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + journal: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + logs: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + single: + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + type: object + podTemplate: + type: object + x-kubernetes-preserve-unknown-fields: true + type: object + prometheus: + description: Enables Prometheus integration on the AppDB. + properties: + metricsPath: + description: Indicates path to the metrics endpoint. + pattern: ^\/[a-z0-9]+$ + type: string + passwordSecretRef: + description: Name of a Secret containing a HTTP Basic Auth + Password. + properties: + key: + description: Key is the key in the secret storing this + password. Defaults to "password" + type: string + name: + description: Name is the name of the secret storing this + user's password + type: string + required: + - name + type: object + port: + description: Port where metrics endpoint will bind to. Defaults + to 9216. + type: integer + tlsSecretKeyRef: + description: |- + Name of a Secret (type kubernetes.io/tls) holding the certificates to use in the + Prometheus endpoint. + properties: + key: + description: Key is the key in the secret storing this + password. Defaults to "password" + type: string + name: + description: Name is the name of the secret storing this + user's password + type: string + required: + - name + type: object + username: + description: HTTP Basic Auth Username for metrics endpoint. + type: string + required: + - passwordSecretRef + - username + type: object + security: + properties: + authentication: + description: |- + Authentication holds various authentication related settings that affect + this MongoDB resource. + properties: + agents: + description: Agents contains authentication configuration + properties for the agents + properties: + automationLdapGroupDN: + type: string + automationPasswordSecretRef: + description: SecretKeySelector selects a key of a + Secret. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the Secret or its + key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + automationUserName: + type: string + clientCertificateSecretRef: + type: object + x-kubernetes-preserve-unknown-fields: true + mode: + description: Mode is the desired Authentication mode + that the agents will use + type: string + required: + - mode + type: object + enabled: + type: boolean + ignoreUnknownUsers: + description: IgnoreUnknownUsers maps to the inverse of + auth.authoritativeSet + type: boolean + internalCluster: + type: string + ldap: + description: LDAP Configuration + properties: + authzQueryTemplate: + type: string + bindQueryPasswordSecretRef: + properties: + name: + type: string + required: + - name + type: object + bindQueryUser: + type: string + caConfigMapRef: + description: Allows to point at a ConfigMap/key with + a CA file to mount on the Pod + properties: + key: + description: The key to select. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the ConfigMap or + its key must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + servers: + items: + type: string + type: array + timeoutMS: + type: integer + transportSecurity: + enum: + - tls + - none + type: string + userCacheInvalidationInterval: + type: integer + userToDNMapping: + type: string + validateLDAPServerConfig: + type: boolean + type: object + modes: + items: + enum: + - X509 + - SCRAM + - SCRAM-SHA-1 + - MONGODB-CR + - SCRAM-SHA-256 + - LDAP + type: string + type: array + requireClientTLSAuthentication: + description: Clients should present valid TLS certificates + type: boolean + required: + - enabled + type: object + certsSecretPrefix: + type: string + roles: + items: + properties: + authenticationRestrictions: + items: + properties: + clientSource: + items: + type: string + type: array + serverAddress: + items: + type: string + type: array + type: object + type: array + db: + type: string + privileges: + items: + properties: + actions: + items: + type: string + type: array + resource: + properties: + cluster: + type: boolean + collection: + type: string + db: + type: string + type: object + required: + - actions + - resource + type: object + type: array + role: + type: string + roles: + items: + properties: + db: + type: string + role: + type: string + required: + - db + - role + type: object + type: array + required: + - db + - role + type: object + type: array + tls: + properties: + additionalCertificateDomains: + items: + type: string + type: array + ca: + description: |- + CA corresponds to a ConfigMap containing an entry for the CA certificate (ca.pem) + used to validate the certificates created already. + type: string + enabled: + description: |- + DEPRECATED please enable TLS by setting `security.certsSecretPrefix` or `security.tls.secretRef.prefix`. + Enables TLS for this resource. This will make the operator try to mount a + Secret with a defined name (-cert). + This is only used when enabling TLS on a MongoDB resource, and not on the + AppDB, where TLS is configured by setting `secretRef.Name`. + type: boolean + type: object + type: object + service: + description: this is an optional service, it will get the name + "-svc" in case not provided + type: string + topology: + enum: + - SingleCluster + - MultiCluster + type: string + type: + enum: + - Standalone + - ReplicaSet + - ShardedCluster + type: string + version: + pattern: ^[0-9]+.[0-9]+.[0-9]+(-.+)?$|^$ + type: string + required: + - version + type: object + backup: + description: Backup + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + blockStores: + items: + description: |- + DataStoreConfig is the description of the config used to reference to database. Reused by Oplog and Block stores + Optionally references the user if the Mongodb is configured with authentication + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + mongodbResourceRef: + properties: + name: + type: string + namespace: + type: string + required: + - name + type: object + mongodbUserRef: + properties: + name: + type: string + required: + - name + type: object + name: + type: string + required: + - mongodbResourceRef + - name + type: object + type: array + enabled: + description: Enabled indicates if Backups will be enabled for + this Ops Manager. + type: boolean + encryption: + description: Encryption settings + properties: + kmip: + description: Kmip corresponds to the KMIP configuration assigned + to the Ops Manager Project's configuration. + properties: + server: + description: KMIP Server configuration + properties: + ca: + description: |- + CA corresponds to a ConfigMap containing an entry for the CA certificate (ca.pem) + used for KMIP authentication + type: string + url: + description: |- + KMIP Server url in the following format: hostname:port + Valid examples are: + 10.10.10.3:5696 + my-kmip-server.mycorp.com:5696 + kmip-svc.svc.cluster.local:5696 + pattern: '[^\:]+:[0-9]{0,5}' + type: string + required: + - ca + - url + type: object + required: + - server + type: object + type: object + externalServiceEnabled: + type: boolean + fileSystemStores: + items: + properties: + name: + type: string + required: + - name + type: object + type: array + headDB: + description: HeadDB specifies configuration options for the HeadDB + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + jvmParameters: + items: + type: string + type: array + logging: + properties: + LogBackAccessRef: + description: LogBackAccessRef points at a ConfigMap/key with + the logback access configuration file to mount on the Pod + properties: + name: + type: string + type: object + LogBackRef: + description: LogBackRef points at a ConfigMap/key with the + logback configuration file to mount on the Pod + properties: + name: + type: string + type: object + type: object + members: + description: Members indicate the number of backup daemon pods + to create. + minimum: 1 + type: integer + opLogStores: + description: OplogStoreConfigs describes the list of oplog store + configs used for backup + items: + description: |- + DataStoreConfig is the description of the config used to reference to database. Reused by Oplog and Block stores + Optionally references the user if the Mongodb is configured with authentication + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + mongodbResourceRef: + properties: + name: + type: string + namespace: + type: string + required: + - name + type: object + mongodbUserRef: + properties: + name: + type: string + required: + - name + type: object + name: + type: string + required: + - mongodbResourceRef + - name + type: object + type: array + queryableBackupSecretRef: + description: |- + QueryableBackupSecretRef references the secret which contains the pem file which is used + for queryable backup. This will be mounted into the Ops Manager pod. + properties: + name: + type: string + required: + - name + type: object + s3OpLogStores: + description: S3OplogStoreConfigs describes the list of s3 oplog + store configs used for backup. + items: + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + customCertificate: + description: |- + Set this to "true" to use the appDBCa as a CA to access S3. + Deprecated: This has been replaced by CustomCertificateSecretRefs, + In the future all custom certificates, which includes the appDBCa + for s3Config should be configured in CustomCertificateSecretRefs instead. + type: boolean + customCertificateSecretRefs: + description: |- + CustomCertificateSecretRefs is a list of valid Certificate Authority certificate secrets + that apply to the associated S3 bucket. + items: + description: SecretKeySelector selects a key of a Secret. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: array + irsaEnabled: + description: |- + This is only set to "true" when a user is running in EKS and is using AWS IRSA to configure + S3 snapshot store. For more details refer this: https://aws.amazon.com/blogs/opensource/introducing-fine-grained-iam-roles-service-accounts/ + type: boolean + mongodbResourceRef: + properties: + name: + type: string + namespace: + type: string + required: + - name + type: object + mongodbUserRef: + properties: + name: + type: string + required: + - name + type: object + name: + type: string + pathStyleAccessEnabled: + type: boolean + s3BucketEndpoint: + type: string + s3BucketName: + type: string + s3RegionOverride: + type: string + s3SecretRef: + properties: + name: + type: string + required: + - name + type: object + required: + - name + - pathStyleAccessEnabled + - s3BucketEndpoint + - s3BucketName + - s3SecretRef + type: object + type: array + s3Stores: + items: + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + customCertificate: + description: |- + Set this to "true" to use the appDBCa as a CA to access S3. + Deprecated: This has been replaced by CustomCertificateSecretRefs, + In the future all custom certificates, which includes the appDBCa + for s3Config should be configured in CustomCertificateSecretRefs instead. + type: boolean + customCertificateSecretRefs: + description: |- + CustomCertificateSecretRefs is a list of valid Certificate Authority certificate secrets + that apply to the associated S3 bucket. + items: + description: SecretKeySelector selects a key of a Secret. + properties: + key: + description: The key of the secret to select from. Must + be a valid secret key. + type: string + name: + description: |- + Name of the referent. + More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names + TODO: Add other useful fields. apiVersion, kind, uid? + type: string + optional: + description: Specify whether the Secret or its key + must be defined + type: boolean + required: + - key + type: object + x-kubernetes-map-type: atomic + type: array + irsaEnabled: + description: |- + This is only set to "true" when a user is running in EKS and is using AWS IRSA to configure + S3 snapshot store. For more details refer this: https://aws.amazon.com/blogs/opensource/introducing-fine-grained-iam-roles-service-accounts/ + type: boolean + mongodbResourceRef: + properties: + name: + type: string + namespace: + type: string + required: + - name + type: object + mongodbUserRef: + properties: + name: + type: string + required: + - name + type: object + name: + type: string + pathStyleAccessEnabled: + type: boolean + s3BucketEndpoint: + type: string + s3BucketName: + type: string + s3RegionOverride: + type: string + s3SecretRef: + properties: + name: + type: string + required: + - name + type: object + required: + - name + - pathStyleAccessEnabled + - s3BucketEndpoint + - s3BucketName + - s3SecretRef + type: object + type: array + statefulSet: + description: |- + StatefulSetConfiguration holds the optional custom StatefulSet + that should be merged into the operator created one. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around + Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - enabled + type: object + clusterDomain: + format: hostname + type: string + clusterName: + description: |- + Deprecated: This has been replaced by the ClusterDomain which should be + used instead + format: hostname + type: string + clusterSpecList: + items: + description: ClusterSpecOMItem defines members cluster details for + Ops Manager multi-cluster deployment. + properties: + backup: + description: |- + Backup contains settings to override from top-level `spec.backup` for this member cluster. + If the value is not set here, then the value is taken from `spec.backup`. + properties: + assignmentLabels: + description: Assignment Labels set in the Ops Manager + items: + type: string + type: array + headDB: + description: HeadDB specifies configuration options for + the HeadDB + properties: + labelSelector: + type: object + x-kubernetes-preserve-unknown-fields: true + storage: + type: string + storageClass: + type: string + type: object + jvmParameters: + items: + type: string + type: array + members: + description: Members indicate the number of backup daemon + pods to create. + minimum: 0 + type: integer + statefulSet: + description: StatefulSetConfiguration specified optional + overrides for backup datemon statefulset. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper + around Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + type: object + clusterDomain: + description: Cluster domain to override the default *.svc.cluster.local + if the default cluster domain has been changed on a cluster + level. + format: hostname + type: string + clusterName: + description: |- + ClusterName is name of the cluster where the Ops Manager Statefulset will be scheduled. + The operator is using ClusterName to find API credentials in `mongodb-enterprise-operator-member-list` config map to use for this member cluster. + If the credentials are not found, then the member cluster is considered unreachable and ignored in the reconcile process. + type: string + configuration: + additionalProperties: + type: string + description: |- + The configuration properties passed to Ops Manager and Backup Daemon in this cluster. + If specified (not empty) then this field overrides `spec.configuration` field entirely. + If not specified, then `spec.configuration` field is used for the Ops Manager and Backup Daemon instances in this cluster. + type: object + externalConnectivity: + description: |- + MongoDBOpsManagerExternalConnectivity if sets allows for the creation of a Service for + accessing Ops Manager instances in this member cluster from outside the Kubernetes cluster. + If specified (even if provided empty) then this field overrides `spec.externalConnectivity` field entirely. + If not specified, then `spec.externalConnectivity` field is used for the Ops Manager and Backup Daemon instances in this cluster. + properties: + annotations: + additionalProperties: + type: string + description: Annotations is a list of annotations to be + directly passed to the Service object. + type: object + clusterIP: + description: ClusterIP IP that will be assigned to this + Service when creating a ClusterIP type Service + type: string + externalTrafficPolicy: + description: |- + ExternalTrafficPolicy mechanism to preserve the client source IP. + Only supported on GCE and Google Kubernetes Engine. + enum: + - Cluster + - Local + type: string + loadBalancerIP: + description: LoadBalancerIP IP that will be assigned to + this LoadBalancer. + type: string + port: + description: Port in which this `Service` will listen to, + this applies to `NodePort`. + format: int32 + type: integer + type: + description: Type of the `Service` to be created. + enum: + - LoadBalancer + - NodePort + - ClusterIP + type: string + required: + - type + type: object + jvmParameters: + description: |- + JVM parameters to pass to Ops Manager and Backup Daemon instances in this member cluster. + If specified (not empty) then this field overrides `spec.jvmParameters` field entirely. + If not specified, then `spec.jvmParameters` field is used for the Ops Manager and Backup Daemon instances in this cluster. + items: + type: string + type: array + members: + description: Number of Ops Manager instances in this member + cluster. + type: integer + statefulSet: + description: |- + Configure custom StatefulSet configuration to override in Ops Manager's statefulset in this member cluster. + If specified (even if provided empty) then this field overrides `spec.externalConnectivity` field entirely. + If not specified, then `spec.externalConnectivity` field is used for the Ops Manager and Backup Daemon instances in this cluster. + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around + Labels and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + required: + - members + type: object + type: array + configuration: + additionalProperties: + type: string + description: The configuration properties passed to Ops Manager/Backup + Daemon + type: object + externalConnectivity: + description: |- + MongoDBOpsManagerExternalConnectivity if sets allows for the creation of a Service for + accessing this Ops Manager resource from outside the Kubernetes cluster. + properties: + annotations: + additionalProperties: + type: string + description: Annotations is a list of annotations to be directly + passed to the Service object. + type: object + clusterIP: + description: ClusterIP IP that will be assigned to this Service + when creating a ClusterIP type Service + type: string + externalTrafficPolicy: + description: |- + ExternalTrafficPolicy mechanism to preserve the client source IP. + Only supported on GCE and Google Kubernetes Engine. + enum: + - Cluster + - Local + type: string + loadBalancerIP: + description: LoadBalancerIP IP that will be assigned to this LoadBalancer. + type: string + port: + description: Port in which this `Service` will listen to, this + applies to `NodePort`. + format: int32 + type: integer + type: + description: Type of the `Service` to be created. + enum: + - LoadBalancer + - NodePort + - ClusterIP + type: string + required: + - type + type: object + internalConnectivity: + description: |- + InternalConnectivity if set allows for overriding the settings of the default service + used for internal connectivity to the OpsManager servers. + properties: + annotations: + additionalProperties: + type: string + description: Annotations is a list of annotations to be directly + passed to the Service object. + type: object + clusterIP: + description: ClusterIP IP that will be assigned to this Service + when creating a ClusterIP type Service + type: string + externalTrafficPolicy: + description: |- + ExternalTrafficPolicy mechanism to preserve the client source IP. + Only supported on GCE and Google Kubernetes Engine. + enum: + - Cluster + - Local + type: string + loadBalancerIP: + description: LoadBalancerIP IP that will be assigned to this LoadBalancer. + type: string + port: + description: Port in which this `Service` will listen to, this + applies to `NodePort`. + format: int32 + type: integer + type: + description: Type of the `Service` to be created. + enum: + - LoadBalancer + - NodePort + - ClusterIP + type: string + required: + - type + type: object + jvmParameters: + description: Custom JVM parameters passed to the Ops Manager JVM + items: + type: string + type: array + logging: + properties: + LogBackAccessRef: + description: LogBackAccessRef points at a ConfigMap/key with the + logback access configuration file to mount on the Pod + properties: + name: + type: string + type: object + LogBackRef: + description: LogBackRef points at a ConfigMap/key with the logback + configuration file to mount on the Pod + properties: + name: + type: string + type: object + type: object + opsManagerURL: + description: |- + OpsManagerURL specified the URL with which the operator and AppDB monitoring agent should access Ops Manager instance (or instances). + When not set, the operator is using FQDN of Ops Manager's headless service `{name}-svc.{namespace}.svc.cluster.local` to connect to the instance. If that URL cannot be used, then URL in this field should be provided for the operator to connect to Ops Manager instances. + It defaults (and if not set) to SingleCluster. If MultiCluster specified, + then clusterSpecList field is mandatory and at least one member cluster has to be specified. + type: string + replicas: + minimum: 1 + type: integer + security: + description: Configure HTTPS. + properties: + certsSecretPrefix: + type: string + tls: + properties: + ca: + type: string + secretRef: + properties: + name: + type: string + required: + - name + type: object + type: object + type: object + statefulSet: + description: Configure custom StatefulSet configuration + properties: + metadata: + description: StatefulSetMetadataWrapper is a wrapper around Labels + and Annotations + properties: + annotations: + additionalProperties: + type: string + type: object + labels: + additionalProperties: + type: string + type: object + type: object + spec: + type: object + x-kubernetes-preserve-unknown-fields: true + required: + - spec + type: object + topology: + description: |- + Topology sets the desired cluster topology of Ops Manager deployment. + It defaults (and if not set) to SingleCluster. If MultiCluster specified, + then clusterSpecList field is mandatory and at least one member cluster has to be specified. + enum: + - SingleCluster + - MultiCluster + type: string + version: + type: string + required: + - applicationDatabase + - version + type: object + status: + properties: + applicationDatabase: + properties: + backup: + properties: + statusName: + type: string + required: + - statusName + type: object + clusterStatusList: + items: + properties: + clusterName: + type: string + members: + type: integer + type: object + type: array + configServerCount: + type: integer + featureCompatibilityVersion: + type: string + lastTransition: + type: string + link: + type: string + members: + type: integer + message: + type: string + mongodsPerShardCount: + type: integer + mongosCount: + type: integer + observedGeneration: + format: int64 + type: integer + phase: + type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array + resourcesNotReady: + items: + description: ResourceNotReady describes the dependent resource + which is not ready yet + properties: + errors: + items: + properties: + message: + type: string + reason: + type: string + type: object + type: array + kind: + description: ResourceKind specifies a kind of a Kubernetes + resource. Used in status of a Custom Resource + type: string + message: + type: string + name: + type: string + required: + - kind + - name + type: object + type: array + shardCount: + type: integer + sizeStatusInClusters: + description: MongodbShardedSizeStatusInClusters describes the + number and sizes of replica sets members deployed across member + clusters + properties: + configServerMongodsInClusters: + additionalProperties: + type: integer + type: object + mongosCountInClusters: + additionalProperties: + type: integer + type: object + shardMongodsInClusters: + additionalProperties: + type: integer + type: object + shardOverridesInClusters: + additionalProperties: + additionalProperties: + type: integer + type: object + type: object + type: object + version: + type: string + warnings: + items: + type: string + type: array + required: + - phase + - version + type: object + backup: + properties: + clusterStatusList: + items: + properties: + clusterName: + type: string + replicas: + type: integer + type: object + type: array + lastTransition: + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + phase: + type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array + resourcesNotReady: + items: + description: ResourceNotReady describes the dependent resource + which is not ready yet + properties: + errors: + items: + properties: + message: + type: string + reason: + type: string + type: object + type: array + kind: + description: ResourceKind specifies a kind of a Kubernetes + resource. Used in status of a Custom Resource + type: string + message: + type: string + name: + type: string + required: + - kind + - name + type: object + type: array + version: + type: string + warnings: + items: + type: string + type: array + required: + - phase + type: object + opsManager: + properties: + clusterStatusList: + items: + properties: + clusterName: + type: string + replicas: + type: integer + type: object + type: array + lastTransition: + type: string + message: + type: string + observedGeneration: + format: int64 + type: integer + phase: + type: string + pvc: + items: + properties: + phase: + type: string + statefulsetName: + type: string + required: + - phase + - statefulsetName + type: object + type: array + replicas: + type: integer + resourcesNotReady: + items: + description: ResourceNotReady describes the dependent resource + which is not ready yet + properties: + errors: + items: + properties: + message: + type: string + reason: + type: string + type: object + type: array + kind: + description: ResourceKind specifies a kind of a Kubernetes + resource. Used in status of a Custom Resource + type: string + message: + type: string + name: + type: string + required: + - kind + - name + type: object + type: array + url: + type: string + version: + type: string + warnings: + items: + type: string + type: array + required: + - phase + type: object + type: object + required: + - spec + type: object + served: true + storage: true + subresources: + status: {} +status: + acceptedNames: + kind: "" + plural: "" + conditions: null + storedVersions: null diff --git a/operators/mongodb-enterprise/1.30.0/metadata/annotations.yaml b/operators/mongodb-enterprise/1.30.0/metadata/annotations.yaml new file mode 100644 index 00000000000..2f3bd574163 --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/metadata/annotations.yaml @@ -0,0 +1,15 @@ +annotations: + # Core bundle annotations. + operators.operatorframework.io.bundle.mediatype.v1: registry+v1 + operators.operatorframework.io.bundle.manifests.v1: manifests/ + operators.operatorframework.io.bundle.metadata.v1: metadata/ + operators.operatorframework.io.bundle.package.v1: mongodb-enterprise + operators.operatorframework.io.bundle.channels.v1: stable + operators.operatorframework.io.bundle.channel.default.v1: stable + operators.operatorframework.io.metrics.builder: operator-sdk-v1.26.1 + operators.operatorframework.io.metrics.mediatype.v1: metrics+v1 + operators.operatorframework.io.metrics.project_layout: go.kubebuilder.io/v3 + # Annotations for testing. + operators.operatorframework.io.test.mediatype.v1: scorecard+v1 + operators.operatorframework.io.test.config.v1: tests/scorecard/ + com.redhat.openshift.versions: v4.6 diff --git a/operators/mongodb-enterprise/1.30.0/tests/scorecard/config.yaml b/operators/mongodb-enterprise/1.30.0/tests/scorecard/config.yaml new file mode 100644 index 00000000000..89bdfbe4df9 --- /dev/null +++ b/operators/mongodb-enterprise/1.30.0/tests/scorecard/config.yaml @@ -0,0 +1,70 @@ +apiVersion: scorecard.operatorframework.io/v1alpha3 +kind: Configuration +metadata: + name: config +stages: +- parallel: true + tests: + - entrypoint: + - scorecard-test + - basic-check-spec + image: quay.io/operator-framework/scorecard-test:v1.12.0 + labels: + suite: basic + test: basic-check-spec-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-bundle-validation + image: quay.io/operator-framework/scorecard-test:v1.12.0 + labels: + suite: olm + test: olm-bundle-validation-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-crds-have-validation + image: quay.io/operator-framework/scorecard-test:v1.12.0 + labels: + suite: olm + test: olm-crds-have-validation-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-crds-have-resources + image: quay.io/operator-framework/scorecard-test:v1.12.0 + labels: + suite: olm + test: olm-crds-have-resources-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-spec-descriptors + image: quay.io/operator-framework/scorecard-test:v1.12.0 + labels: + suite: olm + test: olm-spec-descriptors-test + storage: + spec: + mountPath: {} + - entrypoint: + - scorecard-test + - olm-status-descriptors + image: quay.io/operator-framework/scorecard-test:v1.12.0 + labels: + suite: olm + test: olm-status-descriptors-test + storage: + spec: + mountPath: {} +storage: + spec: + mountPath: {} diff --git a/operators/mongodb-enterprise/ci.yaml b/operators/mongodb-enterprise/ci.yaml index ba0f619132e..a1cdd44469a 100644 --- a/operators/mongodb-enterprise/ci.yaml +++ b/operators/mongodb-enterprise/ci.yaml @@ -8,4 +8,7 @@ reviewers: - lsierant - nammn - mms-build-account -merge: False \ No newline at end of file + - MaciejKaras + - fealebenpae + - Julien-Ben +merge: False