# Default values for psmdb-cluster. # This is a YAML-formatted file. # Declare variables to be passed into your templates. # Platform type: kubernetes, openshift # platform: kubernetes # Cluster DNS Suffix # clusterServiceDNSSuffix: svc.cluster.local # clusterServiceDNSMode: "Internal" finalizers: ## Set this if you want that operator deletes the primary pod last - delete-psmdb-pods-in-order ## Set this if you want to delete database persistent volumes on cluster deletion # - delete-psmdb-pvc nameOverride: "" fullnameOverride: "" crVersion: 1.15.0 pause: false unmanaged: false allowUnsafeConfigurations: false # ignoreAnnotations: # - service.beta.kubernetes.io/aws-load-balancer-backend-protocol # ignoreLabels: # - rack multiCluster: enabled: false # DNSSuffix: svc.clusterset.local updateStrategy: SmartUpdate upgradeOptions: versionServiceEndpoint: https://check.percona.com apply: disabled schedule: "0 2 * * *" setFCV: false image: repository: percona/percona-server-mongodb tag: 6.0.9-7 imagePullPolicy: Always # imagePullSecrets: [] # initImage: # repository: percona/percona-server-mongodb-operator # tag: 1.14.0 # initContainerSecurityContext: {} # tls: # # 90 days in hours # certValidityDuration: 2160h secrets: {} # If you set users secret here the operator will use existing one or generate random values # If not set the operator generates the default secret with name -secrets # users: my-cluster-name-secrets # encryptionKey: my-cluster-name-mongodb-encryption-key pmm: enabled: false image: repository: percona/pmm-client tag: 2.41.0 serverHost: monitoring-service replsets: - name: rs0 size: 3 # terminationGracePeriodSeconds: 300 # externalNodes: # - host: 34.124.76.90 # - host: 34.124.76.91 # port: 27017 # votes: 0 # priority: 0 # - host: 34.124.76.92 # configuration: | # operationProfiling: # mode: slowOp # systemLog: # verbosity: 1 # serviceAccountName: percona-server-mongodb-operator # topologySpreadConstraints: # - labelSelector: # matchLabels: # app.kubernetes.io/name: percona-server-mongodb # maxSkew: 1 # topologyKey: kubernetes.io/hostname # whenUnsatisfiable: DoNotSchedule affinity: antiAffinityTopologyKey: "kubernetes.io/hostname" # advanced: # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # - labelSelector: # matchExpressions: # - key: security # operator: In # values: # - S1 # topologyKey: failure-domain.beta.kubernetes.io/zone # tolerations: [] # priorityClass: "" # annotations: {} # labels: {} # podSecurityContext: {} # containerSecurityContext: {} # nodeSelector: {} # livenessProbe: # failureThreshold: 4 # initialDelaySeconds: 60 # periodSeconds: 30 # timeoutSeconds: 10 # startupDelaySeconds: 7200 # readinessProbe: # failureThreshold: 8 # initialDelaySeconds: 10 # periodSeconds: 3 # successThreshold: 1 # timeoutSeconds: 2 # runtimeClassName: image-rc # storage: # engine: wiredTiger # wiredTiger: # engineConfig: # cacheSizeRatio: 0.5 # directoryForIndexes: false # journalCompressor: snappy # collectionConfig: # blockCompressor: snappy # indexConfig: # prefixCompression: true # inMemory: # engineConfig: # inMemorySizeRatio: 0.5 # sidecars: # - image: busybox # command: ["/bin/sh"] # args: ["-c", "while true; do echo echo $(date -u) 'test' >> /dev/null; sleep 5;done"] # name: rs-sidecar-1 # volumeMounts: # - mountPath: /volume1 # name: sidecar-volume-claim # - mountPath: /secret # name: sidecar-secret # - mountPath: /configmap # name: sidecar-config # sidecarVolumes: # - name: sidecar-secret # secret: # secretName: mysecret # - name: sidecar-config # configMap: # name: myconfigmap # sidecarPVCs: # - apiVersion: v1 # kind: PersistentVolumeClaim # metadata: # name: sidecar-volume-claim # spec: # resources: # requests: # storage: 1Gi # volumeMode: Filesystem # accessModes: # - ReadWriteOnce podDisruptionBudget: maxUnavailable: 1 # splitHorizons: # my-cluster-name-rs0-0: # external: rs0-0.mycluster.xyz # external-2: rs0-0.mycluster2.xyz # my-cluster-name-rs0-1: # external: rs0-1.mycluster.xyz # external-2: rs0-1.mycluster2.xyz # my-cluster-name-rs0-2: # external: rs0-2.mycluster.xyz # external-2: rs0-2.mycluster2.xyz expose: enabled: false exposeType: ClusterIP # loadBalancerSourceRanges: # - 10.0.0.0/8 # serviceAnnotations: # service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http # serviceLabels: # some-label: some-key # schedulerName: "" resources: limits: cpu: "300m" memory: "0.5G" requests: cpu: "300m" memory: "0.5G" volumeSpec: # emptyDir: {} # hostPath: # path: /data # type: Directory pvc: # annotations: # volume.beta.kubernetes.io/storage-class: example-hostpath # labels: # rack: rack-22 # storageClassName: standard # accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 3Gi # hostAliases: # - ip: "10.10.0.2" # hostnames: # - "host1" # - "host2" nonvoting: enabled: false # podSecurityContext: {} # containerSecurityContext: {} size: 3 # configuration: | # operationProfiling: # mode: slowOp # systemLog: # verbosity: 1 # serviceAccountName: percona-server-mongodb-operator affinity: antiAffinityTopologyKey: "kubernetes.io/hostname" # advanced: # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # - labelSelector: # matchExpressions: # - key: security # operator: In # values: # - S1 # topologyKey: failure-domain.beta.kubernetes.io/zone # tolerations: [] # priorityClass: "" # annotations: {} # labels: {} # nodeSelector: {} podDisruptionBudget: maxUnavailable: 1 resources: limits: cpu: "300m" memory: "0.5G" requests: cpu: "300m" memory: "0.5G" volumeSpec: # emptyDir: {} # hostPath: # path: /data # type: Directory pvc: # annotations: # volume.beta.kubernetes.io/storage-class: example-hostpath # labels: # rack: rack-22 # storageClassName: standard # accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 3Gi arbiter: enabled: false size: 1 # serviceAccountName: percona-server-mongodb-operator affinity: antiAffinityTopologyKey: "kubernetes.io/hostname" # advanced: # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # - labelSelector: # matchExpressions: # - key: security # operator: In # values: # - S1 # topologyKey: failure-domain.beta.kubernetes.io/zone # tolerations: [] # priorityClass: "" # annotations: {} # labels: {} # nodeSelector: {} sharding: enabled: true balancer: enabled: true configrs: size: 3 # terminationGracePeriodSeconds: 300 # externalNodes: # - host: 34.124.76.90 # - host: 34.124.76.91 # port: 27017 # votes: 0 # priority: 0 # - host: 34.124.76.92 # configuration: | # operationProfiling: # mode: slowOp # systemLog: # verbosity: 1 # serviceAccountName: percona-server-mongodb-operator # topologySpreadConstraints: # - labelSelector: # matchLabels: # app.kubernetes.io/name: percona-server-mongodb # maxSkew: 1 # topologyKey: kubernetes.io/hostname # whenUnsatisfiable: DoNotSchedule affinity: antiAffinityTopologyKey: "kubernetes.io/hostname" # advanced: # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # - labelSelector: # matchExpressions: # - key: security # operator: In # values: # - S1 # topologyKey: failure-domain.beta.kubernetes.io/zone # tolerations: [] # priorityClass: "" # annotations: {} # labels: {} # podSecurityContext: {} # containerSecurityContext: {} # nodeSelector: {} # livenessProbe: {} # readinessProbe: {} # runtimeClassName: image-rc # sidecars: # - image: busybox # command: ["/bin/sh"] # args: ["-c", "while true; do echo echo $(date -u) 'test' >> /dev/null; sleep 5;done"] # name: rs-sidecar-1 # volumeMounts: # - mountPath: /volume1 # name: sidecar-volume-claim # sidecarPVCs: [] # sidecarVolumes: [] podDisruptionBudget: maxUnavailable: 1 expose: enabled: false exposeType: ClusterIP # loadBalancerSourceRanges: # - 10.0.0.0/8 # serviceAnnotations: # service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http # serviceLabels: # some-label: some-key resources: limits: cpu: "300m" memory: "0.5G" requests: cpu: "300m" memory: "0.5G" volumeSpec: # emptyDir: {} # hostPath: # path: /data # type: Directory pvc: # annotations: # volume.beta.kubernetes.io/storage-class: example-hostpath # labels: # rack: rack-22 # storageClassName: standard # accessModes: [ "ReadWriteOnce" ] resources: requests: storage: 3Gi # hostAliases: # - ip: "10.10.0.2" # hostnames: # - "host1" # - "host2" mongos: size: 2 # terminationGracePeriodSeconds: 300 # configuration: | # systemLog: # verbosity: 1 # serviceAccountName: percona-server-mongodb-operator # topologySpreadConstraints: # - labelSelector: # matchLabels: # app.kubernetes.io/name: percona-server-mongodb # maxSkew: 1 # topologyKey: kubernetes.io/hostname # whenUnsatisfiable: DoNotSchedule affinity: antiAffinityTopologyKey: "kubernetes.io/hostname" # advanced: # podAffinity: # requiredDuringSchedulingIgnoredDuringExecution: # - labelSelector: # matchExpressions: # - key: security # operator: In # values: # - S1 # topologyKey: failure-domain.beta.kubernetes.io/zone # tolerations: [] # priorityClass: "" # annotations: {} # labels: {} # podSecurityContext: {} # containerSecurityContext: {} # nodeSelector: {} # livenessProbe: {} # readinessProbe: {} # runtimeClassName: image-rc # sidecars: # - image: busybox # command: ["/bin/sh"] # args: ["-c", "while true; do echo echo $(date -u) 'test' >> /dev/null; sleep 5;done"] # name: rs-sidecar-1 # volumeMounts: # - mountPath: /volume1 # name: sidecar-volume-claim # sidecarPVCs: [] # sidecarVolumes: [] podDisruptionBudget: maxUnavailable: 1 resources: limits: cpu: "300m" memory: "0.5G" requests: cpu: "300m" memory: "0.5G" expose: exposeType: ClusterIP # servicePerPod: true # loadBalancerSourceRanges: # - 10.0.0.0/8 # serviceAnnotations: # service.beta.kubernetes.io/aws-load-balancer-backend-protocol: http # serviceLabels: # some-label: some-key # auditLog: # destination: file # format: BSON # filter: '{}' # hostAliases: # - ip: "10.10.0.2" # hostnames: # - "host1" # - "host2" backup: enabled: true image: repository: percona/percona-backup-mongodb tag: 2.3.0 serviceAccountName: percona-server-mongodb-operator # annotations: # iam.amazonaws.com/role: role-arn # podSecurityContext: {} # containerSecurityContext: {} # resources: # limits: # cpu: "300m" # memory: "0.5G" # requests: # cpu: "300m" # memory: "0.5G" storages: # s3-us-west: # type: s3 # s3: # bucket: S3-BACKUP-BUCKET-NAME-HERE # credentialsSecret: my-cluster-name-backup-s3 # serverSideEncryption: # kmsKeyID: 1234abcd-12ab-34cd-56ef-1234567890ab # sseAlgorithm: aws:kms # sseCustomerAlgorithm: AES256 # sseCustomerKey: Y3VzdG9tZXIta2V5 # region: us-west-2 # prefix: "" # uploadPartSize: 10485760 # maxUploadParts: 10000 # storageClass: STANDARD # insecureSkipTLSVerify: false # minio: # type: s3 # s3: # bucket: MINIO-BACKUP-BUCKET-NAME-HERE # region: us-east-1 # credentialsSecret: my-cluster-name-backup-minio # endpointUrl: http://minio.psmdb.svc.cluster.local:9000/minio/ # prefix: "" # azure-blob: # type: azure # azure: # container: CONTAINER-NAME # prefix: PREFIX-NAME # credentialsSecret: SECRET-NAME pitr: enabled: false oplogOnly: false # oplogSpanMin: 10 # compressionType: gzip # compressionLevel: 6 tasks: # - name: daily-s3-us-west # enabled: true # schedule: "0 0 * * *" # keep: 3 # storageName: s3-us-west # compressionType: gzip # - name: weekly-s3-us-west # enabled: false # schedule: "0 0 * * 0" # keep: 5 # storageName: s3-us-west # compressionType: gzip # - name: weekly-s3-us-west-physical # enabled: false # schedule: "0 5 * * 0" # keep: 5 # type: physical # storageName: s3-us-west # compressionType: gzip # compressionLevel: 6 # If you set users here the secret will be constructed by helm with these values # users: # MONGODB_BACKUP_USER: backup # MONGODB_BACKUP_PASSWORD: backup123456 # MONGODB_DATABASE_ADMIN_USER: databaseAdmin # MONGODB_DATABASE_ADMIN_PASSWORD: databaseAdmin123456 # MONGODB_CLUSTER_ADMIN_USER: clusterAdmin # MONGODB_CLUSTER_ADMIN_PASSWORD: clusterAdmin123456 # MONGODB_CLUSTER_MONITOR_USER: clusterMonitor # MONGODB_CLUSTER_MONITOR_PASSWORD: clusterMonitor123456 # MONGODB_USER_ADMIN_USER: userAdmin # MONGODB_USER_ADMIN_PASSWORD: userAdmin123456 # PMM_SERVER_API_KEY: apikey # # PMM_SERVER_USER: admin # # PMM_SERVER_PASSWORD: admin