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
kindstring
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
metadataobject
specobjectrequired
additionalMongodConfigobject
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/
agentobject
startupOptionsobject
backupobject
Backup contains configuration options for configuring backup for this MongoDB resource
assignmentLabels[]string
Assignment Labels set in the Ops Manager
autoTerminateOnDeletionboolean
AutoTerminateOnDeletion indicates if the Operator should stop and terminate the Backup before the cleanup, when the MongoDB CR is deleted
encryptionobject
Encryption settings
kmipobject
Kmip corresponds to the KMIP configuration assigned to the Ops Manager Project's configuration.
clientobjectrequired
KMIP Client configuration
clientCertificatePrefixstring
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): <clientCertificatePrefix>-<CR Name>-kmip-client KMIP Client Certificate Password: <clientCertificatePrefix>-<CR Name>-kmip-client-password The expected key inside is called "password".
modestring
enum: enabled, disabled, terminated
snapshotScheduleobject
clusterCheckpointIntervalMininteger
enum: 15, 30, 60
dailySnapshotRetentionDaysinteger
Number of days to retain daily snapshots. Setting 0 will disable this rule.
minimum: 0
maximum: 365
fullIncrementalDayOfWeekstring
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.
Hour of the day to schedule snapshots using a 24-hour clock, in UTC.
minimum: 0
maximum: 23
referenceMinuteOfHourinteger
Minute of the hour to schedule snapshots, in UTC.
minimum: 0
maximum: 59
snapshotIntervalHoursinteger
Number of hours between snapshots.
enum: 6, 8, 12, 24
snapshotRetentionDaysinteger
Number of days to keep recent snapshots.
minimum: 1
maximum: 365
weeklySnapshotRetentionWeeksinteger
Number of weeks to retain weekly snapshots. Setting 0 will disable this rule
minimum: 0
maximum: 365
cloudManagerobject
configMapRefobject
namestring
clusterDomainstring
format: hostname
clusterSpecListobject
ClusterSpecList holds a list with a clusterSpec corresponding to each cluster
clusterSpecs[]object
clusterNamestring
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.
exposedExternallyboolean
ExposedExternally determines whether a NodePort service should be created for the resource
membersintegerrequired
Amount of members for this MongoDB Replica Set
servicestring
this is an optional service, it will get the name "<rsName>-service" in case not provided
statefulSetobject
StatefulSetConfiguration holds the optional custom StatefulSet that should be merged into the operator created one.
specobjectrequired
connectivityobject
replicaSetHorizons[]object
credentialsstringrequired
Name of the Secret holding credentials information
duplicateServiceObjectsboolean
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.
featureCompatibilityVersionstring
logLevelstring
enum: DEBUG, INFO, WARN, ERROR, FATAL
opsManagerobject
configMapRefobject
namestring
persistentboolean
securityobject
authenticationobject
Authentication holds various authentication related settings that affect this MongoDB resource.
agentsobject
Agents contains authentication configuration properties for the agents
automationLdapGroupDNstring
automationPasswordSecretRefobject
SecretKeySelector selects a key of a Secret.
keystringrequired
The key of the secret to select from. Must be a valid secret key.
namestring
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?
optionalboolean
Specify whether the Secret or its key must be defined
automationUserNamestring
clientCertificateSecretRefobject
modestringrequired
Mode is the desired Authentication mode that the agents will use
enabledbooleanrequired
ignoreUnknownUsersboolean
IgnoreUnknownUsers maps to the inverse of auth.authoritativeSet
internalClusterstring
ldapobject
LDAP Configuration
authzQueryTemplatestring
bindQueryPasswordSecretRefobject
namestringrequired
bindQueryUserstring
caConfigMapRefobject
Allows to point at a ConfigMap/key with a CA file to mount on the Pod
keystringrequired
The key to select.
namestring
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?
optionalboolean
Specify whether the ConfigMap or its key must be defined
servers[]string
timeoutMSinteger
transportSecuritystring
enum: tls, none
userCacheInvalidationIntervalinteger
userToDNMappingstring
validateLDAPServerConfigboolean
modes[]string
requireClientTLSAuthenticationboolean
Clients should present valid TLS certificates
certsSecretPrefixstring
roles[]object
authenticationRestrictions[]object
clientSource[]string
serverAddress[]string
dbstringrequired
privileges[]object
actions[]stringrequired
resourceobjectrequired
clusterboolean
collectionstring
dbstring
rolestringrequired
roles[]object
dbstringrequired
rolestringrequired
tlsobject
additionalCertificateDomains[]string
castring
CA corresponds to a ConfigMap containing an entry for the CA certificate (ca.pem) used to validate the certificates created already.
enabledboolean
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 (<resource-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`.
statefulSetobject
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
specobjectrequired
typestringrequired
enum: ReplicaSet
versionstringrequired
pattern: ^[0-9]+.[0-9]+.[0-9]+(-.+)?$|^$
statusobject
backupobject
statusNamestringrequired
clusterStatusListobject
ClusterStatusList holds a list of clusterStatuses corresponding to each cluster
clusterStatuses[]object
clusterNamestring
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.
lastTransitionstring
membersinteger
messagestring
observedGenerationinteger
format: int64
phasestringrequired
resourcesNotReady[]object
errors[]object
messagestring
reasonstring
kindstringrequired
ResourceKind specifies a kind of a Kubernetes resource. Used in status of a Custom Resource
messagestring
namestringrequired
warnings[]string
lastTransitionstring
linkstring
messagestring
observedGenerationinteger
format: int64
phasestringrequired
resourcesNotReady[]object
errors[]object
messagestring
reasonstring
kindstringrequired
ResourceKind specifies a kind of a Kubernetes resource. Used in status of a Custom Resource