MongoDBMulti
mongodb.com / v1
apiVersion: mongodb.com/v1
kind: MongoDBMulti
metadata:
name: example
apiVersion
string
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
kind
string
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
metadata
object
spec object required
additionalMongodConfig
object
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/
agent object
startupOptions
object
backup object
Backup contains configuration options for configuring backup for this MongoDB resource
assignmentLabels
[]string
Assignment Labels set in the Ops Manager
autoTerminateOnDeletion
boolean
AutoTerminateOnDeletion indicates if the Operator should stop and terminate the Backup before the cleanup, when the MongoDB CR is deleted
encryption object
Encryption settings
kmip object
Kmip corresponds to the KMIP configuration assigned to the Ops Manager Project's configuration.
client object required
KMIP Client configuration
clientCertificatePrefix
string
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".
mode
string
enum:
enabled, disabled, terminatedsnapshotSchedule object
clusterCheckpointIntervalMin
integer
enum:
15, 30, 60
dailySnapshotRetentionDays
integer
Number of days to retain daily snapshots. Setting 0 will disable this rule.
minimum:
0maximum:
365
fullIncrementalDayOfWeek
string
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
monthlySnapshotRetentionMonths
integer
Number of months to retain weekly snapshots. Setting 0 will disable this rule.
minimum:
0maximum:
36
pointInTimeWindowHours
integer
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
referenceHourOfDay
integer
Hour of the day to schedule snapshots using a 24-hour clock, in UTC.
minimum:
0maximum:
23
referenceMinuteOfHour
integer
Minute of the hour to schedule snapshots, in UTC.
minimum:
0maximum:
59
snapshotIntervalHours
integer
Number of hours between snapshots.
enum:
6, 8, 12, 24
snapshotRetentionDays
integer
Number of days to keep recent snapshots.
minimum:
1maximum:
365
weeklySnapshotRetentionWeeks
integer
Number of weeks to retain weekly snapshots. Setting 0 will disable this rule
minimum:
0maximum:
365cloudManager object
configMapRef object
name
string
clusterDomain
string
format:
hostnameclusterSpecList object
ClusterSpecList holds a list with a clusterSpec corresponding to each cluster
clusterSpecs []object
clusterName
string
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.
exposedExternally
boolean
ExposedExternally determines whether a NodePort service should be created for the resource
members
integer required
Amount of members for this MongoDB Replica Set
service
string
this is an optional service, it will get the name "<rsName>-service" in case not provided
statefulSet object
StatefulSetConfiguration holds the optional custom StatefulSet that should be merged into the operator created one.
spec
object required
connectivity object
replicaSetHorizons
[]object
credentials
string required
Name of the Secret holding credentials information
duplicateServiceObjects
boolean
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.
featureCompatibilityVersion
string
logLevel
string
enum:
DEBUG, INFO, WARN, ERROR, FATALopsManager object
configMapRef object
name
string
persistent
boolean
security object
authentication object
Authentication holds various authentication related settings that affect this MongoDB resource.
agents object
Agents contains authentication configuration properties for the agents
automationLdapGroupDN
string
automationPasswordSecretRef object
SecretKeySelector selects a key of a Secret.
key
string required
The key of the secret to select from. Must be a valid secret key.
name
string
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?
optional
boolean
Specify whether the Secret or its key must be defined
automationUserName
string
clientCertificateSecretRef
object
mode
string required
Mode is the desired Authentication mode that the agents will use
enabled
boolean required
ignoreUnknownUsers
boolean
IgnoreUnknownUsers maps to the inverse of auth.authoritativeSet
internalCluster
string
ldap object
LDAP Configuration
authzQueryTemplate
string
bindQueryPasswordSecretRef object
name
string required
bindQueryUser
string
caConfigMapRef object
Allows to point at a ConfigMap/key with a CA file to mount on the Pod
key
string required
The key to select.
name
string
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?
optional
boolean
Specify whether the ConfigMap or its key must be defined
servers
[]string
timeoutMS
integer
transportSecurity
string
enum:
tls, none
userCacheInvalidationInterval
integer
userToDNMapping
string
validateLDAPServerConfig
boolean
modes
[]string
requireClientTLSAuthentication
boolean
Clients should present valid TLS certificates
certsSecretPrefix
string
roles []object
authenticationRestrictions []object
clientSource
[]string
serverAddress
[]string
db
string required
privileges []object
actions
[]string required
resource object required
cluster
boolean
collection
string
db
string
role
string required
roles []object
db
string required
role
string required
tls object
additionalCertificateDomains
[]string
ca
string
CA corresponds to a ConfigMap containing an entry for the CA certificate (ca.pem) used to validate the certificates created already.
enabled
boolean
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`.
statefulSet object
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
spec
object required
type
string required
enum:
ReplicaSet
version
string required
pattern:
^[0-9]+.[0-9]+.[0-9]+(-.+)?$|^$status object
backup object
statusName
string required
clusterStatusList object
ClusterStatusList holds a list of clusterStatuses corresponding to each cluster
clusterStatuses []object
clusterName
string
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.
lastTransition
string
members
integer
message
string
observedGeneration
integer
format:
int64
phase
string required
resourcesNotReady []object
errors []object
message
string
reason
string
kind
string required
ResourceKind specifies a kind of a Kubernetes resource. Used in status of a Custom Resource
message
string
name
string required
warnings
[]string
lastTransition
string
link
string
message
string
observedGeneration
integer
format:
int64
phase
string required
resourcesNotReady []object
errors []object
message
string
reason
string
kind
string required
ResourceKind specifies a kind of a Kubernetes resource. Used in status of a Custom Resource
message
string
name
string required
version
string required
warnings
[]string
No matches. Try .spec.additionalMongodConfig for an exact path