AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

Ops Manager 리소스 사양

Kubernetes Operator용 MongoDB 컨트롤러 는 사용자가 쓰기 (write) 사양 파일을 사용하여 컨테이너화된 MongoDB Ops Manager 배포서버 생성합니다.

MongoDB Ops Manager 리소스 사양을 만들거나 업데이트 후 Kubernetes Operator용 MongoDB 컨트롤러가 이 사양을 Kubernetes 환경에 적용 지시합니다. Kubernetes Operator는 MongoDB Ops Manager 필요한 서비스 및 사용자 지정 Kubernetes 리소스를 생성한 다음, MongoDB Ops Manager 와 해당 지원 애플리케이션 데이터베이스를 Kubernetes 환경의 컨테이너에 배포합니다.

Each Ops Manager resource uses an object specification in YAML to define the characteristics and settings of the deployment.

다음 예에서는 Ops Manager 배포를 위한 리소스 사양을 보여줍니다.

1apiVersion: mongodb.com/v1
2kind: MongoDBOpsManager
3metadata:
4 name: om
5spec:
6 topology: SingleCluster # optional, SingleCluster by default
7 opsManagerURL: https://link.to.configured.load-balancer.example.com # optional OM URL for the operator
8replicas: 1
9version: "8.0.0"
10 adminCredentials: ops-manager-admin-secret
11 configuration:
12 mms.fromEmailAddr: admin@example.com
13 mms.security.allowCORS: "false"
14 security:
15 tls:
16 ca: issuer-ca
17 backup:
18 enabled: true
19 encryption:
20 kmip:
21 server:
22 url: kmip.corp.mongodb.com:5696
23 ca: mongodb-kmip-certificate-authority-pem
24 headDB:
25 storage: "30Gi"
26 labelSelector:
27 matchLabels:
28 app: my-app
29 opLogStores:
30 - name: oplog1
31 # Sets labels for the oplog store.
32 assignmentLabels: ["test1", "test2"]
33 mongodbResourceRef:
34 name: my-oplog-db
35 mongodbUserRef:
36 name: my-oplog-user
37 s3Stores:
38 - name: s3store1
39 # Sets labels for the S3 store.
40 assignmentLabels: ["test1", "test2"]
41
42 mongodbResourceRef:
43 name: my-s3-metadata-db
44 mongodbUserRef:
45 name: my-s3-store-user
46 s3SecretRef:
47 name: my-s3-credentials
48 pathStyleAccessEnabled: true
49 s3BucketEndpoint: s3.region.amazonaws.com
50 s3BucketName: my-bucket
51 applicationDatabase:
52 passwordSecretKeyRef:
53 name: om-db-user-secret
54 key: password
55 members: 3
56 topology: SingleCluster
57 version: "7.0.21-ubi8"
58 featureCompatibilityVersion: "6.0" # During upgrade, set this FCV value to your currently deployed AppDB version.
59 security:
60 certsSecretPrefix: appdb
61 tls:
62 ca: issuer-ca
1apiVersion: mongodb.com/v1
2kind: MongoDBOpsManager
3metadata:
4 name: om
5spec:
6 topology: MultiCluster # optional, SingleCluster by default
7 opsManagerURL: https://link.to.configured.lb.example.com # optional OM URL for the operator
8 clusterSpecList: # optional ClusterSpecOMItem list, the type is different than ClusterSpecItem for AppDB and MongoDB
9 - clusterName: cluster-1 # required
10 replicas: 1 # required, OM application replicas
11 # optional parameters to override those defined at MongoDBOpsManager level
12 clusterDomain: cluster-1.example.com # optional, default cluster.local
13 jvmParameters: ["-Xmx4352m","-Xms4352m"]
14 externalConnectivity: # optional to override
15 type: LoadBalancer
16 port: 9090
17 annotations:
18 key: value
19 statefulSet: # StatefulSetSpecWrapper override
20 spec: {}
21 metadata: {}
22 configuration:
23 automation.versions.source: mongodb
24 mms.adminEmailAddr: cloud-manager-support@mongodb.com
25 backup: # MongoDBOpsManagerBackup, optional, we only support a subset of fields
26 members: 1 # backup daemon replicas, optional, default=1
27 assignmentLabels: [] # assignment labels to override
28 jvmParameters: ["-Xmx4352m","-Xms4352m"] # optional
29 statefulSet: # mdbc.StatefulSetConfiguration, optional to override for backup daemon
30 spec: {}
31 metadata: {}
32 - clusterName: cluster-2
33 replicas: 1
34
35 ....
36
37replicas: 1
38 version: "8.0.0"
39 adminCredentials: ops-manager-admin-secret
40 configuration:
41 mms.fromEmailAddr: admin@example.com
42 mms.security.allowCORS: "false"
43 backup:
44 enabled: true
45 encryption:
46 kmip:
47 server:
48 url: kmip.corp.mongodb.com:5696
49 ca: mongodb-kmip-certificate-authority-pem
50 headDB:
51 storage: "30Gi"
52 labelSelector:
53 matchLabels:
54 app: my-app
55 opLogStores:
56 - name: oplog1
57 # Sets labels for the oplog store.
58 assignmentLabels: ["test1", "test2"]
59 mongodbResourceRef:
60 name: my-oplog-db
61 mongodbUserRef:
62 name: my-oplog-user
63 s3Stores:
64 - name: s3store1
65 # Sets labels for the S3 store.
66 assignmentLabels: ["test1", "test2"]
67
68 mongodbResourceRef:
69 name: my-s3-metadata-db
70 mongodbUserRef:
71 name: my-s3-store-user
72 s3SecretRef:
73 name: my-s3-credentials
74 pathStyleAccessEnabled: true
75 s3BucketEndpoint: s3.region.amazonaws.com
76 s3BucketName: my-bucket
77 security:
78 tls:
79 ca: issuer-ca
80 applicationDatabase:
81 passwordSecretKeyRef:
82 name: om-db-user-secret
83 key: password
84 version: "8.0.0-ubi8"
85 topology: MultiCluster
86 clusterSpecList:
87 - clusterName: cluster1.example.com
88 members: 4
89 - clusterName: cluster2.example.com
90 members: 3
91 - clusterName: cluster3.example.com
92 members: 2
93 security:
94 certsSecretPrefix: appdb
95 tls:
96 ca: issuer-ca

이 섹션에서는 모든 Ops Manager 리소스에 대해 사용해야 하는 설정에 대해 설명합니다.

apiVersion

유형: 문자열

필수. MongoDB Kubernetes 리소스 스키마의 버전입니다.

kind

유형: 문자열

필수. 생성할 MongoDB Kubernetes 리소스의 종류입니다. 이를 MongoDBOpsManager 으로 설정합니다.

metadata.name

유형: 문자열

필수. 생성 중인 MongoDB Kubernetes 리소스의 이름입니다.

리소스 이름은 44자 이내여야 합니다.

spec.version

유형: 문자열

필수. 이 MongoDB Kubernetes 리소스에 설치하려는 Ops Manager의 버전입니다.

spec.adminCredentials

유형: 문자열

Required. Name of the Kubernetes secret you created for the Ops Manager admin user. When you deploy the Ops Manager resource, Kubernetes Operator creates a user with these credentials.

참고

단일 클러스터 Kubernetes 배포에 시크릿이 저장되지 않도록 하려면 모든 시크릿시크릿 저장 도구로 마이그레이션 할 수 있습니다. 여러 Kubernetes 클러스터에 대한 배포는 HashiCorp Vault와 같은 시크릿 저장 도구에 시크릿을 저장하는 것을 지원하지 않습니다.

관리 사용자에게는 전역 소유자 역할이 부여됩니다.

spec.replicas

유형: integer

Conditional. Number of Ops Manager instances to run in parallel. If you specify SingleCluster in spec.topology, this parameter is required. The mimimum accepted value is 1.

If you specify MultiCluster in spec.topology, this parameter is ignored.

MongoDB Ops Manager 리소스는 다음 설정을 사용할 수도 있습니다.

spec.backup.fileSystemStores

유형: 문자열

파일 시스템 스냅샷 저장소 식별하는 이름입니다. 자세한 학습 은 Kubernetes Operator로 파일 시스템 백업 저장소 구성을 참조하세요.

spec.backup.logging.LogBackAccessRef

유형: 문자열

MongoDB Ops Manager 백업 로그를 구성하기 위한 사용자 지정 logback-access.xml 파일 이 포함된 ConfigMap에 대한 참조입니다.

ConfigMap의 키는 MongoDB Ops Manager 파드의 기본값 파일 을 대체하도록 logback-access.xml 의 이름과 정확히 일치해야 합니다.

학습 내용 은 CRD를 사용하여 MongoDB Ops Manager 로그 구성을 참조하세요.

spec.backup.logging.LogBackRef

유형: 문자열

사용자 지정 logback.xml 파일 이 포함된 ConfigMap에 대한 참조입니다. 이 파일 은 로그 로테이션 정책, 로그 수준 및 기타 로깅 매개변수를 포함하여 MongoDB Ops Manager 백업에 대한 일반적인 로깅 동작을 구성합니다.

ConfigMap의 키는 MongoDB Ops Manager 파드의 기본값 파일 을 대체하도록 logback-access.xml 의 이름과 정확히 일치해야 합니다. 학습 내용 은 CRD를 사용하여 MongoDB Ops Manager 로그 구성을 참조하세요.

spec.logging.LogBackAccessRef

유형: 문자열

MongoDB Ops Manager 로그를 구성하기 위한 사용자 지정 logback-access.xml 파일 이 포함된 ConfigMap에 대한 참조입니다.

MongoDB Ops Manager 파드의 기본값 파일 을 대체하려면 ConfigMap의 키는 정확히 logback-access.xml 여야 합니다.

학습 내용 은 CRD를 사용하여 MongoDB Ops Manager 로그 구성을 참조하세요.

spec.logging.LogBackRef

유형: 문자열

사용자 지정 logback.xml 파일 이 포함된 ConfigMap에 대한 참조입니다. 이 파일 은 로그 로테이션 정책, 로그 수준 및 기타 로깅 매개변수를 포함하여 MongoDB Ops Manager 의 일반적인 로깅 동작을 구성합니다.

MongoDB Ops Manager 파드의 기본값 파일 을 대체하려면 ConfigMap의 키는 정확히 logback.xml 여야 합니다.

학습 내용 은 CRD를 사용하여 MongoDB Ops Manager 로그 구성을 참조하세요.

참고

If the size of files the Ops Manager dashboard generates is larger than the storage space available in the emptyDir volume, consider overriding the emptyDir volume with a Persistent Volume to prevent pod crashes. To learn more, see spec.statefulSet.spec.template.spec.volumes.

spec.opsManagerURL

유형: 문자열

선택 사항. Operator의 URL MongoDB Ops Manager 리소스 (예:Kubernetes https://link.to.configured.lb.example.com)입니다.

  • 이 매개변수를 생략하는 경우, Kubernetes Operator는 MongoDB Ops Manager 인스턴스에 연결하기 위해 다음 URL 을 MongoDB Ops Manager 인스턴스의 기본값으로 사용합니다: <om-name>-svc.{namespace}.svc.cluster.local. MongoDB Ops Manager용 헤드리스 서비스의 FQDN 입니다.

  • 이 매개변수를 지정하면 이 URL을 다른 URL로 변경할 수 있습니다.

참고

Don't confuse the spec.opsManagerURL with the URL that you specify in a ConfigMap for a particular deployment to configure MongoDB deployments and Monitoring Agents for the Application Database. The Kubernetes Operator requires to have the spec.opsManagerURL to directly connect to Ops Manager instances and to configure Ops Manager and Application Database deployments. The Kubernetes Operator doesn't use the spec.opsManagerURL to manage particular MongoDB databases.

Change the spec.opsManagerURL parameter to a custom URL in the following cases:

  • 여러 Kubernetes 클러스터에 MongoDB Ops Manager를 배포하고 MongoDB Ops Manager 호스팅 파드에서 기본 URL 에 액세스할 수 없는 경우. 예를 들어, Kubernetes Operator를 배포한 클러스터가 아닌 다른 Kubernetes 클러스터에 MongoDB Ops Manager를 배포하는 경우, MongoDB Ops Manager 서비스의 FQDN 에 액세스하지 못할 수 있습니다. 이 경우 사용자 지정 URL을 지정할 수 있습니다.

  • 외부 도메인에서 MongoDB Ops Manager 인스턴스에 대한 외부 액세스를 구성할 때 사용자 지정 URL 을 지정할 수 있습니다. 또한 이를 위해서는 Kubernetes 연산자 및 애플리케이션 데이터베이스의 모니터링 에이전트가 기본 URL 대신 이 사용자 지정 URL을 사용해야 합니다.

spec.clusterDomain

유형: 문자열

Kubernetes assigns each Pod a FQDN. The Kubernetes Operator calculates the FQDN for each Pod using a provided clusterDomain. Kubernetes doesn't provide an API to query these hostnames.

spec.clusterName

중요

spec.clusterName은 더 이상 사용되지 않습니다.

대신 spec.clusterDomain를 사용하세요.

유형: 문자열

Kubernetes assigns each Pod a FQDN. The Kubernetes Operator calculates the FQDN for each Pod using a provided clusterName. Kubernetes doesn't provide an API to query these hostnames.

spec.configuration

유형: 컬렉션

Ops Manager configuration properties. See Ops Manager Configuration Settings for property names and descriptions. Each property takes a value of type string.

중요

Ops Manager가 배포된 Kubernetes 클러스터 외부에 배포된 MongoDB 리소스를 관리하는 경우 mms.centralUrl 설정을 spec.configuration 에 추가해야 합니다.

Ops Manager가 Kubernetes cluster 외부에 노출되는 URL로 값을 설정합니다.

학습 내용은 외부 MongoDB 배포 관리를 참조하세요.

spec.configuration.mms.featureFlag.automation.verifyDownloads

유형: 문자열

enabled 로 설정하면 MongoDB Agent는 Ops Manager 인스턴스가 managed하는 모든 MongoDB 배포에 대한 서명 파일이 필요합니다.

이 옵션을 활성화한 상태에서 MongoDB Agent를 업그레이드하면 현재 버전의 MongoDB Agent에는 새 MongoDB Agent 바이너리의 서명 파일이 필요합니다.

자세한 내용은 MongoDB 서명 확인을 참조하세요.

spec.configuration.mms.featureFlag.backup.queryable

유형: 부울

쿼리 가능 백업을 사용하지 않으려면 false 로 설정합니다.

spec.configuration.mms.featureFlag.backup.wt.queryable

유형: 부울

WiredTiger를 사용할 때 쿼리 가능한 백업 을 비활성화하려면 false 로 설정합니다.

spec.configuration.mms.mongoDbUsage.defaultUsageType

유형: 문자열

Kubernetes 서비스의 기본 서버 유형입니다.

허용되는 값은 PRODUCTION_SERVER, TEST_SERVER, DEV_SERVERRAM_POOL 입니다.

spec.jvmParameters

유형: 문자열 배열

선택 사항. 컨테이너를 통해 Ops Manager 애플리케이션으로 전달되는 JVM 매개변수입니다. 제공된 모든 매개변수는 Ops Manager 애플리케이션의 기본 JVM 매개변수를 대체합니다.

이 Kubernetes 연산자 매개변수의 기본값은 빈 목록입니다.

spec:
jvmParameters: ["-XX:+HeapDumpOnOutOfMemoryError","-XX:HeapDumpPath=/tmp"]

중요

JVM 메모리 힙(Memory Heap) 값 변경에 대한 책임은 본인이 감수해야 합니다.

Kubernetes Operator calculates its JVM memory heap values of the Ops Manager Application based on the container's memory. Changing the -Xms and -Xmx values can cause issues with Ops Manager.

spec.security.certsSecretPrefix

유형: 문자열

시크릿 에 접두사로 Kubernetes 붙일 텍스트 MongoDB Ops Manager의 TLS 키 및 인증서가 포함된 사용자 생성.

시크릿 이름을 <prefix>-<metadata.name>-cert 으로 지정해야 합니다.

HTTPS 를 통해 실행되도록 Ops Manager 인스턴스를 구성하는 방법을 알아보려면 Ops Manager 리소스 배포를 참조하세요.

spec.security.tls.ca

ConfigMap 의 이름 여기에는 MongoDB Ops Kubernetes Manager용 사용자 지정 CA 파일이 포함되어 있습니다.

중요

spec.security.tls.ca is required if you use a custom CA to sign your Ops Manager TLS certificates.

Kubernetes 연산자는 ConfigMap에서 Ops Manager 리소스 mms-ca.crt 에 대한 인증서 이름을 지정해야 합니다.

CA 는 다음을 충족하는 인증서에 서명합니다.

  • 클라이언트가 Ops Manager 애플리케이션에 연결하는 데 사용합니다.

  • 애플리케이션 데이터베이스 파드 의 에이전트가 MongoDB Ops Manager 와 통신하는 데 사용합니다.

경고

You must concatenate your custom CA file and the entire TLS certificate chain from downloads.mongodb.com to prevent Ops Manager from becoming inoperable if the application database restarts.

spec.security.tls.enabled

중요

spec.security.tls.enabled is deprecated and will be removed in a future release. To enable TLS, provide a value for the spec.security.certsSecretPrefix setting.

클라이언트와 Ops Manager 간의 TLS 인증서를 사용하여 통신을 암호화합니다.

spec.statefulSet.spec

유형: 컬렉션

Specification for the StatefulSet that the MongoDB Controllers for Kubernetes Operator creates for Ops Manager.

To review which fields you can add to spec.statefulSet.spec, see StatefulSetSpec v1 apps in the Kubernetes documentation.

spec.statefulSet.spec.template

유형: 컬렉션

Kubernetes Operator용 MongoDB 컨트롤러가 MongoDB Ops Manager 위해 생성하는 StatefulSet의 Kubernetes 파드에 대한 템플릿입니다.

참고

The Kubernetes Operator doesn't validate the fields you provide in spec.statefulSet.spec.template.

spec.statefulSet.spec.template.metadata

유형: 컬렉션

Kubernetes Operator용 MongoDB 컨트롤러가 MongoDB Ops Manager 위해 생성하는 StatefulSet 에 있는 Kubernetes Pods에 대한 메타데이터입니다.

To review which fields you can add to spec.statefulSet.spec.template.metadata, see the Kubernetes documentation.

spec.statefulSet.spec.template.spec

유형: 컬렉션

Kubernetes Operator용 MongoDB 컨트롤러가 MongoDB Ops Manager 위해 생성하는 StatefulSet 에 있는 Kubernetes 파드의 사양입니다.

To review the complete list of fields you can add to spec.statefulSet.spec.template.spec, see the Kubernetes documentation.

다음 예시 spec.statefulSet.spec.template.spec 는 Kubernetes Operator용 MongoDB 컨트롤러가 배포하는 하나의 MongoDB Ops Manager 컨테이너 대한 최소 및 최대 CPU 및 메모리 용량 정의합니다.

Ops Manager 구성 요소를 실행 호스트의 hardware, 소프트웨어 및 네트워킹 요구 사항에 대한 자세한 내용은 Ops Manager 설명서의 Ops Manager 시스템 요구 사항 을 참조하세요.

statefulSet:
spec:
template:
spec:
containers:
- name: mongodb-ops-manager
resources:
requests:
cpu: "4"
memory: "16Gi"
limits:
cpu: "8"
memory: "32Gi"
spec.statefulSet.spec.template.spec.containers

유형: 컬렉션

Kubernetes Operator용 MongoDB 컨트롤러가 MongoDB Ops Manager 용으로 생성하는 StatefulSet 의 Kubernetes Pods에 속하는 컨테이너 목록입니다.

Ops Manager container의 사양을 수정하려면 다음 예와 같이 name 필드를 사용하여 container의 정확한 이름을 제공해야 합니다.

backup:
statefulSet:
spec:
template:
spec:
containers:
- name: mongodb-ops-manager

참고

spec.statefulSet.spec.template.spec.containers 에 container를 추가하면 Kubernetes 연산자가 container를 Kubernetes 파드에 추가합니다. 이러한 컨테이너는 포드의 Ops Manager 컨테이너에 추가됩니다.

spec.statefulSet.spec.template.spec.containers.resources.requests.cpu

유형: 문자열

Minimum CPU capacity that must be available on a Kubernetes node to host the Ops Manager.

The requested value must be less than or equal to spec.statefulSet.spec.template.spec.containers.resources.limits.cpu.

spec.statefulSet.spec.template.spec.containers.resources.limits.cpu

유형: 문자열

Maximum CPU capacity for the node being created to host the Ops Manager. If omitted, this value is set to spec.statefulSet.spec.template.spec.containers.resources.requests.cpu.

spec.statefulSet.spec.template.spec.containers.resources.requests.memory

유형: 문자열

Minimum memory capacity that must be available on a Kubernetes node to host the Ops Manager on Kubernetes. This value is expressed as an integer followed by a unit of memory in JEDEC notation.

예시

Kubernetes의 Ops Manager에 6기가바이트의 메모리가 필요한 경우 이 값을 6Gi 로 설정합니다.

참고

MongoDB는 이 값을 최소 5Gi 이상으로 설정할 것을 권장합니다.

The requested value must be less than or equal to spec.statefulSet.spec.template.spec.containers.resources.limits.memory.

spec.statefulSet.spec.template.spec.containers.resources.limits.memory

유형: 문자열

Maximum memory capacity for the node being created to host the Ops Manager. If omitted, this value is set to spec.statefulSet.spec.template.spec.containers.resources.requests.memory.

Kubernetes Operator는 컨테이너의 메모리를 기반으로 Java 힙 크기에 대한 매개변수를 계산하고 설정합니다.

경고

이 값을 32GB 미만으로 제한

이 값을 32GB( 32Gi )보다 큰 값으로 설정하면 백업 서비스에 문제가 발생할 수 있습니다. 과도한 힙은 Ops Manager에서 예기치 않은 결과를 초래할 수 있습니다.

spec.statefulSet.spec.template.spec.volumes

유형: 컬렉션

Kubernetes Operator용 MongoDB 컨트롤러가 Ops Manager 용으로 생성하는 StatefulSet 에 컨테이너가 마운트할 수 있는 볼륨의 목록입니다.

Ops Manager 대시보드 사용하여 배포서버 에 대한 로그를 요청하고 임시 파일의 크기가 상당히 큰 경우,data Ops Manager StatefulSet의 Kubernetes 볼륨에 영구 볼륨을 사용하는 것이 좋습니다.

data Kubernetes 볼륨은 기본값 으로 emptyDir 유형을 사용합니다. 이를 재정의하고 영구 볼륨을 사용하려면 MongoDBOpsManager 리소스 에 다음 구성을 추가합니다.

statefulSet:
spec:
template:
spec:
volumes:
- name: data
persistentVolumeClaim:
claimName: <my-pvc>

Replace <my-pvc> with the name of your Kubernetes PersistentVolumeClaim.

이 섹션에서는 MongoDB Ops Manager의 외부 연결과 관련된 선택적 설정에 대해 설명합니다. 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 선택적 외부 연결 설정은 멀티 클러스터 설정을 참조하세요.

spec.externalConnectivity

유형: 컬렉션

MongoDB Ops Manager에 대한 외부 연결을 활성화하는 구성 객체입니다. 제공된 경우 Kubernetes Operator는 Kubernetes 서비스 를 생성합니다. 클러스터 외부에서 발생하는 트래픽이 Kubernetes MongoDB Ops Manager 애플리케이션에 도달할 수 있도록 허용합니다.

제공되지 않는 경우, Kubernetes 연산자는 Kubernetes 서비스를 생성하지 않습니다. 수동으로 생성하거나 외부 트래픽을 Kubernetes cluster의 Ops Manager 애플리케이션으로 라우팅할 수 있는 타사 솔루션을 사용해야 합니다.

spec.externalConnectivity.type

유형: 문자열

Kubernetes 서비스 ServiceType 외부에 MongoDB Ops Manager를 Kubernetes 노출합니다.

Required if spec.externalConnectivity.type is present.

허용되는 값은 LoadBalancerNodePort 입니다. cloud 공급자가 지원하는 경우 LoadBalancer 를 사용하는 것이 좋습니다. 로컬 배포에는 NodePort 을 사용합니다.

spec.externalConnectivity.port

유형: integer

Kubernetes 서비스가 Ops Manager 애플리케이션을 노출하여 외부 트래픽에 사용해야 하는 포트를 나타내는 값입니다.

  • If spec.externalConnectivity.type is NodePort:

    • Kubernetes 서비스는 이 포트를 통해 Ops Manager 애플리케이션을 외부 트래픽에 노출합니다.

    • If you don't provide a spec.externalConnectivity.port value, the Kubernetes service routes traffic to the Ops Manager Application from an available port selected randomly from the following default range: 30000-32767.

      참고

      이 포트를 통한 트래픽을 허용하도록 네트워크 방화벽을 구성해야 합니다.

  • If spec.externalConnectivity.type is LoadBalancer:

    • 클라우드 공급자가 생성하는 밸런서 리소스는 이 포트를 통해 Ops Manager 애플리케이션을 노출합니다.

    • If you don't provide a spec.externalConnectivity.port value, the Kubernetes service exposes the Ops Manager Application to external traffic through the default HTTP (8080) or HTTPS (8443) port.

spec.externalConnectivity.loadBalancerIP

유형: 문자열

Kubernetes 연산자가 생성할 때 Kubernetes 서비스가 사용하는 IP 주소 LoadBalancer 입니다.

This setting can only be used if your cloud provider supports it and spec.externalConnectivity.type is LoadBalancer. To learn more about the Type LoadBalancer, see the Kubernetes documentation.

spec.externalConnectivity.externalTrafficPolicy

유형: 문자열

Ops Manager Kubernetes 서비스에 대한 외부 트래픽에 대한 라우팅 정책입니다. 서비스는 이 설정의 값에 따라 외부 트래픽을 노드 로컬 또는 cluster 전체 엔드포인트로 라우팅합니다.

허용되는 값은 ClusterLocal입니다. 어떤 값이 요구 사항을 충족하는지 학습하려면 Kubernetes 문서에서 Kubernetes 의 소스 IP 를 참조하세요.

참고

Cluster 을 선택하면 Kubernetes 네트워크 경계에서 발생하는 네트워크 홉 중에 클라이언트의 Source-IP 가 손실됩니다.

spec.externalConnectivity.annotations

유형: 컬렉션

클라우드 공급자별 구성 설정을 제공할 수 있는 키-값 쌍입니다.

Amazon Web Services 의 주석TLS 지원 에 대해 자세히 학습 Kubernetes 설명서를 참조하세요.

이 섹션에서는 MongoDB Ops Manager의 백업과 관련된 선택적 설정에 대해 설명합니다. 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 선택적 백업 설정은 멀티 클러스터 설정을 참조하세요.

spec.backup.assignmentLabels

유형: 문자열 배열

백업 데몬 서비스 프로세스에 대한 할당 레이블 목록입니다. 할당 레이블을 사용하여 특정 백업 데몬 프로세스가 특정 프로젝트와 연결되어 있는지 식별합니다. Kubernetes Operator를 사용하여 할당 레이블을 설정하는 경우, 할당 레이블에 대해 Kubernetes 구성 파일에서 설정한 값이 MongoDB Ops Manager UI에 정의된 값을 재정의합니다. Kubernetes Operator를 사용하여 설정하지 않은 할당 레이블은 MongoDB Ops Manager UI에 설정된 값을 계속 사용합니다.

spec.backup.enabled

유형: 부울

Ops Manager 리소스에 대해 백업을 활성화하는 플래그입니다. false 로 설정하면 백업이 비활성화됩니다.

기본값은 true 입니다.

spec.backup.encryption

유형: 객체

백업 암호화 구성 설정이 포함된 객체입니다.

spec.backup.encryption.kmip

유형: 객체

KMIP 백업 암호화 구성 설정을 포함하는 객체입니다. 자세히 알아보려면 Ops Manager에 대한 KMIP 백업 암호화 구성을 참조하세요.

참고

If you set this parameter, the API key linked with the value of spec.credentials must have the Global Owner role.

spec.backup.encryption.kmip.server

유형: 객체

KMIP 백업 암호화 서버 구성 설정을 포함하는 객체입니다.

spec.backup.encryption.kmip.server.ca

유형: 문자열

Human-readable label that identifies the ConfigMap that contains an entry for the CA certificate (ca.pem) to use for KMIP authentication.

spec.backup.encryption.kmip.server.url

유형: 문자열

URL for the KMIP server that uses the hostname.port format (for example, 192.168.1.3:5696 or my-kmip-server.mycorp.com:5696).

spec.backup.headDB

유형: 컬렉션

헤드 데이터베이스 에 대한 구성 설정입니다. Kubernetes Operator가 Persistent Volume Claim 을 생성합니다. 지정된 구성으로.

스칼라
데이터 유형
설명

labelSelector

문자열

마운트된 볼륨을 디렉토리에 바인딩하는 데 사용되는 태그입니다.

storage

문자열

마운트해야 하는 영구 볼륨 의 최소 크기입니다. 이 값은 정수 뒤에 JEDEC 표기법으로 저장 단위를 붙여 표현합니다.

기본값은 30Gi 입니다.

학습 내용은 백업 디먼 하드웨어 요구 사항을 참조하세요.

예를 예시 헤드 데이터베이스 에 60 기가바이트의 저장 공간이 필요한 경우 이 값을 60Gi 로 설정하다 합니다.

storageClass

문자열

영구 볼륨 클레임에 지정된 저장 유형입니다. 이 스토리지 유형을 StorageClass 객체로 생성한 후, 이 객체 사양에서 사용할 수 있습니다.

Make sure to set the StorageClass reclaimPolicy to Retain. This ensures that data is retained when a Persistent Volume Claim is removed.

spec.backup.jvmParameters

유형: 문자열 배열

선택 사항. container를 통해 Ops Manager 백업 서비스에 전달된 JVM 매개변수입니다.

이 Kubernetes 연산자 매개변수의 기본값은 빈 목록입니다.

spec:
backup:
jvmParameters: ["-XX:+UseStringCache"]

경고

JVM 메모리 힙(Memory Heap) 값 변경에 대한 책임은 본인이 감수해야 합니다.

Kubernetes Operator calculates the JVM memory heap values of the backup service based on the container's memory. Changing the -Xms and -Xmx values can cause issues with Ops Manager.

spec.backup.members

유형: integer

Optional. Number of backup daemon services to deploy in Kubernetes. If not specified, defaults to 1. To ensure high availability for your backup service, deploy multiple backup daemons in Ops Manager.

spec.backup.opLogStores

유형: 컬렉션

백업 을 활성화 하는 경우 필수입니다. 백업 에 사용되는 oplog 저장소 의 배열입니다. 배열 의 각 항목은 Kubernetes Operator가 Kubernetes 클러스터 에 배포한 MongoDB database 리소스 를 참조합니다.

spec.backup.opLogStores.assignmentLabels

유형: 문자열 배열

oplog 스토어 의 할당 레이블 목록입니다. 할당 레이블을 사용하여 특정 oplog 스토어가 특정 프로젝트와 연결되어 있는지 식별합니다. Kubernetes Operator를 사용하여 할당 레이블을 설정하는 경우, 할당 레이블에 대해 Kubernetes 구성 파일에서 설정한 값이 MongoDB Ops Manager UI에 정의된 값을 재정의합니다. Kubernetes Operator를 사용하여 설정하지 않은 할당 레이블은 MongoDB Ops Manager UI에 설정된 값을 계속 사용합니다.

spec.backup.opLogStores.name

유형: 문자열

백업을 활성화하는 경우 필수입니다. oplog 스토어의 이름입니다.

중요

지정한 후에는 oplog 스토어의 이름을 편집하지 마세요.

spec.backup.opLogStores.mongodbResourceRef.name

유형: 문자열

백업을 활성화 하는 경우 필수입니다. oplog 슬라이스를 저장 하기 위해 생성하는 MongoDB 리소스 또는 MongoDBMultiCluster 리소스 의 이름입니다. 이 리소스 는 MongoDB Ops Manager 리소스 와 동일한 네임스페이스 에 배포 해야 합니다.

Oplog 데이터베이스는 SCRAM 인증 메커니즘만 지원합니다. 다른 인증 메커니즘은 활성화할 수 없습니다.

oplog 데이터베이스에서 SCRAM 인증을 활성화하는 경우 다음을 수행해야 합니다.

  • MongoDB 사용자 리소스를 생성하여 Ops Manager를 oplog 데이터베이스에 연결합니다.

  • Specify the name of the user in the Ops Manager resource definition.

이 이름을 가진 MongoDB database 리소스가 존재하지 않으면 backup 리소스는 Pending 상태가 됩니다. Kubernetes 연산자는 이 이름의 MongoDB database 리소스가 생성될 때까지 10초마다 재시도합니다.

참고

이 설정에서 참고하는 데이터베이스 리소스에 대한 보안 변경을 수행하면 Kubernetes 연산자가 Ops Manager 리소스를 자동으로 조정하기 시작합니다. Kubernetes 연산자는 변경 사항을 기반으로 Ops Manager 구성에서 mongoUrissl 플래그를 업데이트합니다.

spec.backup.opLogStores.mongodbUserRef.name

유형: 문자열

에서 SCRAM 인증이 활성화된 경우 필수입니다.Oplog Store Database 에 연결하는 데 사용되는 사용자 MongoDB Oplog Store Database 리소스의 이름입니다. 이 사용자 리소스를 MongoDB Ops Manager 리소스와 동일한 네임스페이스에 다음 역할을 모두 배포합니다.

spec.backup.blockStores

유형: 컬렉션

블록 저장소를 사용하여 백업을 활성화하는 경우 필수입니다. 백업에 사용되는 블록 저장소 의 배열입니다. 배열의 각 MongoDB database 항목은 Kubernetes Kubernetes Operator가 클러스터에 배포한 리소스를 참조합니다.

spec.backup.blockStores.assignmentLabels

유형: 문자열 배열

블록 저장소 의 할당 레이블 목록입니다. 할당 레이블을 사용하여 특정 블록 저장소가 특정 프로젝트와 연결되어 있는지 식별합니다. Kubernetes Operator를 사용하여 할당 레이블을 설정하는 경우, 할당 레이블에 대해 Kubernetes 구성 파일에서 설정한 값이 MongoDB Ops Manager UI에 정의된 값을 재정의합니다. Kubernetes Operator를 사용하여 설정하지 않은 할당 레이블은 MongoDB Ops Manager UI에 설정된 값을 계속 사용합니다.

spec.backup.blockStores.name

유형: 문자열

블록 저장소를 사용하여 백업을 활성화하는 경우 필수입니다. 블록 저장소의 이름입니다.

중요

일단 지정한 후에는 블록 저장소의 이름을 편집하지 마세요.

spec.backup.blockStores.mongodbResourceRef.name

유형: 문자열

블록 저장소를 사용하여 백업을 활성화하는 경우 필수입니다. 블록 저장소에 대해 생성하는 MongoDB database 리소스의 이름입니다. 이 데이터베이스 리소스를 MongoDB Ops Manager 리소스와 동일한 네임스페이스에 배포해야 합니다.

블록 저장소 데이터베이스는 SCRAM 인증 메커니즘만 지원합니다. 다른 인증 메커니즘은 활성화할 수 없습니다.

블록 저장소 데이터베이스에서 SCRAM 인증을 활성화하는 경우 다음을 수행해야 합니다.

  • Ops Manager를 블록 저장소 데이터베이스에 연결하는 MongoDB 사용자 리소스를 생성합니다.

  • Specify the name of the user in the Ops Manager resource definition.

이 이름을 가진 MongoDB database 리소스가 존재하지 않으면 backup 리소스는 Pending 상태가 됩니다. Kubernetes 연산자는 이 이름의 MongoDB database 리소스가 생성될 때까지 10초마다 재시도합니다.

참고

이 설정에서 참고하는 데이터베이스 리소스에 대한 보안 변경을 수행하면 Kubernetes 연산자가 Ops Manager 리소스를 자동으로 조정하기 시작합니다. Kubernetes 연산자는 변경 사항을 기반으로 Ops Manager 구성에서 mongoUrissl 플래그를 업데이트합니다.

spec.backup.blockStores.mongodbUserRef.name

유형: 문자열

블록 저장소 데이터베이스에서 SCRAM 인증이 활성화된 경우 필수입니다. 블록 저장소 데이터베이스에 연결하는 데 사용되는 MongoDB 사용자 리소스의 이름입니다. 이 사용자 리소스를 MongoDB Ops Manager 리소스와 동일한 네임스페이스에 다음 역할을 모두 배포합니다.

spec.backup.queryableBackupSecretRef.name

유형: 문자열

Name of the secret that contains the queryable.pem file from Ops Manager that you will use for accessing and querying backups based on your deployment's TLS requirements.The PEM file contains a public key certificate and its associated private key that are needed to access and run queries on backup snapshots in Ops Manager. To query backups, specify the value for this parameter. If not set, backups are not affected, but you can't query them.

spec.backup.statefulSet.spec

유형: 컬렉션

Specification for the StatefulSet that the MongoDB Controllers for Kubernetes Operator creates for the backup daemon service.

To review which fields you can add to spec.backup.statefulSet.spec, see StatefulSetSpec v1 apps in the Kubernetes documentation.

spec.backup.statefulSet.spec.template

유형: 컬렉션

Template for the Kubernetes Pods in the StatefulSet that the MongoDB Controllers for Kubernetes Operator creates for the backup daemon service.

참고

The Kubernetes Operator doesn't validate the fields you provide in spec.backup.statefulSet.spec.template.

spec.backup.statefulSet.spec.template.metadata

유형: 컬렉션

Metadata for the Kubernetes Pods in the StatefulSet that the MongoDB Controllers for Kubernetes Operator creates for the backup daemon service.

To review which fields you can add to spec.backup.statefulSet.spec.template.metadata, see the Kubernetes documentation.

spec.backup.statefulSet.spec.template.spec

유형: 컬렉션

Specifications of the Kubernetes Pods in the StatefulSet that the MongoDB Controllers for Kubernetes Operator creates for the backup daemon service.

To review the complete list of fields you can add to spec.backup.statefulSet.spec.template.spec, see the Kubernetes documentation.

다음 예시 spec.backup.statefulSet.spec.template.spec 는 Kubernetes 연산자용 MongoDB 컨트롤러가 배포하는 하나의 백업 데몬 서비스 컨테이너에 대한 최소 및 최대 CPU 및 메모리 용량 정의합니다.

Ops Manager 구성 요소를 실행 호스트의 hardware, 소프트웨어 및 네트워킹 요구 사항에 대한 자세한 내용은 Ops Manager 설명서의 Ops Manager 시스템 요구 사항 을 참조하세요.

statefulSet:
spec:
template:
spec:
containers:
- name: mongodb-backup-daemon
resources:
requests:
cpu: "4"
memory: "8Gi"
limits:
cpu: "8"
memory: "16Gi"
spec.backup.statefulSet.spec.template.spec.containers

유형: 컬렉션

List of containers that belong to the Kubernetes Pods in the StatefulSet that the MongoDB Controllers for Kubernetes Operator creates for the backup daemon service.

To modify the specifications of the backup daemon service container, you must provide the exact name of the container using the name field, as shown in the following example:

backup:
statefulSet:
spec:
template:
spec:
containers:
- name: mongodb-backup-daemon

참고

spec.backup.statefulSet.spec.template.spec.containers 에 컨테이너를 추가하면 Kubernetes Operator가 컨테이너를 Kubernetes pod에 추가합니다. 이러한 컨테이너는 포드의 백업 데몬 서비스 컨테이너에 추가됩니다.

spec.backup.statefulSet.spec.template.spec.containers.resources.requests.cpu

유형: 문자열

Kubernetes 노드 에서 사용할 수 있어야 하는 최소 CPU 용량 백업 데몬 서비스를 호스팅합니다.

The requested value must be less than or equal to spec.backup.statefulSet.spec.template.spec.containers.resources.limits.cpu.

spec.backup.statefulSet.spec.template.spec.containers.resources.limits.cpu

유형: 문자열

Maximum CPU capacity for the node being created to host the backup daemon service. If omitted, this value is set to spec.backup.statefulSet.spec.template.spec.containers.resources.requests.cpu.

spec.backup.statefulSet.spec.template.spec.containers.resources.requests.memory

유형: 문자열

Kubernetes 노드 에서 사용할 수 있어야 하는 최소 메모리 용량 Kubernetes에서 백업 데몬 서비스 를 호스팅합니다. 이 값은 JEDEC 표기법으로 정수와 그 뒤에 오는 메모리 단위로 표현됩니다.

참고

이 값을 최소 4.5Gi 이상으로 설정합니다. 4.5Gi 보다 작은 값은 오류가 발생할 수 있습니다.

The requested value must be less than or equal to spec.backup.statefulSet.spec.template.spec.containers.resources.limits.memory.

spec.backup.statefulSet.spec.template.spec.containers.resources.limits.memory

유형: 문자열

Maximum memory capacity for the node being created to host the backup daemon service. If omitted, this value is set to spec.backup.statefulSet.spec.template.spec.containers.resources.requests.memory.

Kubernetes Operator는 컨테이너의 메모리를 기반으로 Java 힙 크기에 대한 매개변수를 계산하고 설정합니다.

경고

이 값을 32GB 미만으로 제한

이 값을 32GB( 32Gi )보다 큰 값으로 설정하면 백업 서비스에 문제가 발생할 수 있습니다. 과도한 힙은 Ops Manager에서 예기치 않은 결과를 초래할 수 있습니다.

You can configure Ops Manager to use S3 for storing oplogs and backup snapshots, and secure connections to S3 with TLS using keys issued by custom CA.

To configure custom CA keys, use the ConfigMap with which you configured TLS for your Application Database as described on the TLS-Encrypted Connection (HTTPS) tab of Deploy an Ops Manager Resource. Set spec.applicationDatabase.security.tls.ca to this ConfigMap.

You can use TLS for both S3 and your Application Database, or for S3 only.

  • To use TLS for both, get certificates for both purposes from the same ca-pem referenced in the ConfigMap.

  • To use TLS for S3 only, don't define spec.security.applicationDatabase.certsSecretPrefix in your ConfigMap.

spec.backup.s3OpLogStores.assignmentLabels

유형: 문자열 배열

A list of assignment labels for S3 oplog stores. Use assignment labels to identify that specific S3 oplog stores are associated with particular projects. If you set assignment labels using the Kubernetes Operator, the values that you set in the Kubernetes configuration file for assignment labels override the values defined in the Ops Manager UI. Assignment labels that you don't set using the Kubernetes Operator continue to use the values set in the Ops Manager UI.

spec.backup.s3OpLogStores.customCertificate

유형: 부울

Deprecated. Use spec.backup.s3OpLogStores.customCertificateSecretRefs instead.

Flag that indicates whether you use AppDB certificates (appdb-ca) as the custom TLS certificate for your S3 oplog store. The default is False.

spec.backup.s3OpLogStores.customCertificateSecretRefs

유형: 객체 배열

List of custom certificates for your S3 oplog store using Kubernetes secrets. The base64-encoded x.509 certificate must already be present in a Kubernetes secret with a key and must be parsable by the Java CertifcateFactory. You can't specify multiple certificates in a chain in one secret. If you specify multiple certificates in a chain in one secret, Kubernetes Operator uses only the first certificate in the chain. If you also provide the customCertificate setting, Kubernetes Operator uses the spec.applicationDatabase.security.tls.ca as the custom certificate for backups.

Each entry in the list specifies the name and the key. If you specify multiple secrets, Kubernetes Operator uses all the certificates in the specified secrets.

이 설정을 제공하지 않으면 Ops Manager는 Ops Manager에서 사용하는 JVM 기본 신뢰 저장소를 사용합니다.

spec.backup.s3OpLogStores.customCertificateSecretRefs.name

유형: 문자열

Required to use custom certificates for your S3 oplog store. Kubernetes secret that contains the custom certificate.

spec.configuration.mms.mongoDbUsage.defaultUsageType

유형: 문자열

Kubernetes 서비스의 기본 서버 유형입니다.

spec.backup.s3OpLogStores.customCertificateSecretRefs.key

유형: 문자열

Required to use custom certificates for your S3 oplog store. File that represents the key in the secret that contains the base64-encoded x.509 certificate. If you don't specify this setting, the Kubernetes Operator can't utilize the custom certificate for S3 oplog store backups.

spec.backup.s3OpLogStores.irsaEnabled

유형: 부울

Flag that enables using AWS IAM roles for service accounts in AWS EKS to configure an S3 oplog store. The default is False. If you aren't using AWS EKS, this flag has no effect. When set to False, using AWS IAM roles for service accounts in EKS to configure an S3 oplog store is disabled. To learn more, see IAM roles for service accounts in EKS.

spec.backup.s3OpLogStores.name

유형: 문자열

Required to store the oplog using an S3 store. Name of the S3 oplog store.

spec.backup.s3OpLogStores.mongodbResourceRef.name

유형: 문자열

Name of the MongoDB database resource that you create to store metadata for the S3 oplog store. You must deploy this database resource in the same namespace as the Ops Manager resource.

참고

Omit this setting to use the Application Database to store metadata for the S3 oplog store.

If you omit this setting, you must also omit the spec.backup.s3OpLogStores.mongodbUserRef.name setting. The Kubernetes Operator handles SCRAM user authentication internally.

이 데이터베이스에서 SCRAM 인증을 활성화하는 경우 다음을 수행해야 합니다.

  • Ops Manager를 데이터베이스에 연결하는 MongoDB 사용자 리소스를 생성합니다.

  • Specify the name of the user in the Ops Manager resource definition.

spec.backup.s3OpLogStores.mongodbUserRef.name

유형: 문자열

Required if you created a MongoDB database resource to store S3 oplog metadata and SCRAM is enabled on this database. Name of the MongoDB user resource used to connect to the metadata database of the S3 oplog store. Deploy this user resource in the same namespace as the Ops Manager resource and with all of the following roles:

중요

Once specified, don't edit the name of the S3 metadata oplog store username.

spec.backup.s3OpLogStores.s3SecretRef.name

유형: 문자열

spec.backup.s3OpLogStores.irsaEnabledtrue로 설정하다 되지 않은 경우 S3 저장 사용하여 oplog 를 저장 데 필요합니다.

Name of the secret that contains the accessKey and secretKey fields. The backup daemon service uses the values of these fields as credentials to access your AWS S3 or S3-compatible bucket. To configure the S3 oplog store, you must specify both keys in the secret.

spec.backup.s3OpLogStores.irsaEnabledtrue로 설정하다 Amazon Web Services S3 자격 증명 파드 환경 변수로 마운트되므로 s3SecretRef를 설정하다 필요가 없습니다.

spec.backup.s3OpLogStores.pathStyleAccessEnabled

유형: 부울

버킷 엔드포인트 URL의 스타일을 나타냅니다.

설명
예시

true

경로 스타일 URL

s3.amazonaws.com/<bucket>

false

가상 호스트 스타일 URL

<bucket>.s3.amazonaws.com

Amazon Web Services 의 주석TLS 지원 에 대해 자세히 학습 Kubernetes 설명서를 참조하세요.

기본값은 true 입니다.

spec.backup.s3OpLogStores.s3BucketEndpoint

유형: 문자열

Required to store the oplog using an S3 store. URL of the AWS S3 bucket or S3-compatible bucket that hosts the oplog store.

참고

If your endpoint doesn't include a region in its URL, specify the s3RegionOverride field.

spec.backup.s3OpLogStores.s3BucketName

유형: 문자열

Required to store the oplog using an S3 store. Name of the AWS S3 bucket or S3-compatible bucket that hosts the oplog store.

spec.backup.s3OpLogStores.s3RegionOverride

유형: 문자열

Region where your S3-compatible bucket resides. Use this field only if your S3 oplog store's s3BucketEndpoint doesn't support region scoping. Region scoping is when your endpoint doesn't include a region in its URL.

Don't use this field with AWS S3 buckets. For more information, see S3 Blockstore Configuration.

spec.backup.s3Stores.assignmentLabels

유형: 문자열 배열

A list of assignment labels for the S3 or S3-compatible buckets where stores the database backup snapshots. Use assignment labels to identify that specific S3 stores are associated with particular projects. If you set assignment labels using the Kubernetes Operator, the values that you set in the Kubernetes configuration file for assignment labels override the values defined in the Ops Manager UI. Assignment labels that you don't set using the Kubernetes Operator continue to use the values set in the Ops Manager UI.

spec.backup.s3Stores.customCertificate

유형: 부울

Deprecated. Use spec.backup.s3Stores.customCertificateSecretRefs instead.

Flag that indicates whether you use Application Database's certificates (appdb-ca) as the custom TLS certificate for your S3 backups. The default is False.

spec.backup.s3Stores.customCertificateSecretRefs

유형: 객체 배열

List of custom certificates for your S3 snapshot store using Kubernetes secrets. The base64-encoded x.509 certificate must already be present in a Kubernetes secret with a key and must be parsable by the Java CertifcateFactory. You can't specify multiple certificates in a chain in one secret. If you specify multiple certificates in a chain in one secret, Kubernetes Operator uses only the first certificate in the chain. If you also provide the spec.backup.s3Stores.customCertificate setting, Kubernetes Operator uses the spec.applicationDatabase.security.tls.ca as the custom certificate for backups.

Each entry in the list specifies the name and the key. If you specify multiple secrets, Kubernetes Operator uses all the specified secrets.

이 설정을 제공하지 않으면 Kubernetes 연산자는 Ops Manager에서 백업에 사용하는 JVM 기본 신뢰 저장소를 사용합니다.

spec.backup.s3Stores.customCertificateSecretRefs.name

유형: 문자열

Required to use custom certificates for your S3 oplog store. Kubernetes secret that contains the custom certificate.

spec.backup.s3Stores.customCertificateSecretRefs.key

유형: 문자열

Required to use custom certificates for your S3 oplog store. File that represents the key in the secret that contains the base64-encoded x.509 certificate. If you don't specify this setting, Kubernetes Operator can't utilize the custom certificate for S3 snapshot store and defaults to the default trust store used by Ops Manager.

spec.backup.s3Stores.irsaEnabled

유형: 부울

Flag that enables using AWS IAM roles for service accounts in AWS EKS to configure an S3 snapshot store. The default is False. If you aren't using AWS EKS, this flag has no effect. When set to False, using AWS IAM roles for service accounts in EKS to configure an S3 snapshot store is disabled. To learn more, see IAM roles for service accounts in EKS.

spec.backup.s3Stores.name

유형: 문자열

Required to store the oplog using an S3 store. Name of the S3 snapshot store.

중요

Once specified, don't edit the name of the S3 snapshot store. This change will likely fail if backups use the old name. The consequences of a successful change are unpredictable.

spec.backup.s3Stores.mongodbResourceRef.name

유형: 문자열

Name of the MongoDB resource or MongoDBMultiCluster resource that you create to store metadata for the S3 snapshot store. You must deploy this database resource in the same namespace as the Ops Manager resource.

참고

Omit this setting to use the Application Database to store metadata for the S3 snapshot store.

If you omit this setting, you must also omit the spec.backup.s3Stores.mongodbUserRef.name setting. The Kubernetes Operator handles SCRAM user authentication internally.

이 데이터베이스에서 SCRAM 인증을 활성화하는 경우 다음을 수행해야 합니다.

  • Ops Manager를 데이터베이스에 연결하는 MongoDB 사용자 리소스를 생성합니다.

  • Specify the name of the user in the Ops Manager resource definition.

중요

Once specified, don't edit the name of the S3 snapshot store. This change will likely fail if backups use the old name. The consequences of a successful change are unpredictable.

이 이름을 가진 MongoDB database 리소스가 존재하지 않으면 backup 리소스는 Pending 상태가 됩니다. Kubernetes 연산자는 이 이름의 MongoDB database 리소스가 생성될 때까지 10초마다 재시도합니다.

참고

이 설정에서 참고하는 데이터베이스 리소스에 대한 보안 변경을 수행하면 Kubernetes 연산자가 Ops Manager 리소스를 자동으로 조정하기 시작합니다. Kubernetes 연산자는 변경 사항을 기반으로 Ops Manager 구성에서 mongoUrissl 플래그를 업데이트합니다.

spec.backup.s3Stores.mongodbUserRef.name

유형: 문자열

Required if you created a MongoDB database resource to store |s3| snapshot metadata and SCRAM is enabled on this database. Name of the MongoDB user resource used to connect to the metadata database of the S3 snapshot store. Deploy this user resource in the same namespace as the Ops Manager resource and with all of the following roles:

중요

Once specified, don't edit the name of the S3 metadata snapshot store username.

spec.backup.s3Stores.s3SecretRef.name

유형: 문자열

S3 저장 사용하여 백업을 활성화 하고 spec.backup.s3Stores.irsaEnabledtrue로 설정하다 하지 않은 경우 필요합니다.

Name of the secret that contains the accessKey and secretKey fields. The backup daemon service uses the values of these fields as credentials to access your AWS S3 or S3-compatible bucket. The S3 snapshot store can't be configured if the secret is missing either key.

spec.backup.s3Stores.irsaEnabledtrue로 설정하다 Amazon Web Services S3 자격 증명 파드 환경 변수로 마운트되므로 s3SecretRef를 설정하다 필요가 없습니다.

spec.backup.s3Stores.pathStyleAccessEnabled

유형: 부울

버킷 엔드포인트 URL의 스타일을 나타냅니다.

설명
예시

true

경로 스타일 URL

s3.amazonaws.com/<bucket>

false

가상 호스트 스타일 URL

<bucket>.s3.amazonaws.com

기본값은 true 입니다.

spec.backup.s3Stores.s3BucketEndpoint

유형: 문자열

Required if you enable Backup using an S3 store. URL of the AWS S3 bucket or S3-compatible bucket that hosts the snapshot store.

참고

If your endpoint doesn't include a region in its URL, specify the s3RegionOverride field.

spec.backup.s3Stores.s3BucketName

유형: 문자열

Required if you enable Backup using an S3 store. Name of the AWS S3 bucket or S3-compatible bucket that hosts the snapshot store.

spec.backup.s3Stores.s3RegionOverride

유형: 문자열

Region where your S3-compatible bucket resides. Use this field only if your S3 store's s3BucketEndpoint doesn't support region scoping. Region scoping is when your endpoint doesn't include a region in its URL.

Don't use this field with AWS S3 buckets. For more information, see S3 Blockstore Configuration.

이 섹션에서는 를 구성하기 위해 필요한 MongoDB Ops Manager 설정 외에 사용해야 하는 설정에 대해 Ops Manager Application Database 설명합니다.

spec.applicationDatabase.version

유형: 문자열

Required. Version of MongoDB installed on the Ops Manager Application Database. You must specify a compatible enterprise MongoDB version based on the tag in the container registry. For example, 8.0.0-ubi8. Starting in Kubernetes Operator version 1.20, tags no longer end in -ent.

중요

호환되는 MongoDB Server 버전을 선택하도록 합니다.

호환되는 버전은 MongoDB database 리소스가 사용하는 기본 이미지에 따라 다릅니다.

참고

If you update this value to a later version of MongoDB for the Application Database, the feature compatibility version remains at the MongoDB version you're upgrading from to give you the option to downgrade if necessary. If you want the feature compatibility version to match the new MongoDB version, you must manually set the featureCompatibilityVersion parameter under spec.applicationDatabase.

이 섹션에서는 Ops Manager Application Database 와 관련된 선택적 설정에 대해 설명합니다. 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 선택적 애플리케이션 데이터베이스 설정은 멀티 클러스터 설정을 참조하세요.

spec.applicationDatabase

유형: 컬렉션

MongoDB Ops Manager 애플리케이션 데이터베이스 리소스 정의입니다.

복제본 세트 리소스 사양의 다음 설정은 선택 사항입니다.

spec.applicationDatabase.agent.logLevel

유형: 문자열

기본값: INFO

Configures the level of Automation Agent logging inside the Pod. Accepted values include:

  • DEBUG

  • INFO

  • WARN

  • ERROR

  • FATAL

spec.applicationDatabase.agent.<component>.logRotate

유형: 객체

구성 요소 를 다음 값 중 하나로 바꿉니다.

  • mongod

  • monitoringAgent

MongoDB configuration object for rotating the MongoDB logs of a process. To use the agent.<component>.logRotate settings, you must set systemLog.destination to file because you can't use the agent.<component>.logRotate settings if you're writing logs to the host's syslog system.

참고

If the size of files the Ops Manager dashboard generates is larger than the storage space available in the emptyDir volume, consider overriding the emptyDir volume with a Persistent Volume to prevent pod crashes. To learn more, see spec.statefulSet.spec.template.spec.volumes.

spec.applicationDatabase.agent.mongod.logRotate.numTotal

유형: integer

기본값: 0

Total number of log files that Ops Manager retains. If you don't change the default, Ops Manager bases rotation on your other agent.<compenet>.logRotate settings.

spec.applicationDatabase.agent.mongod.logRotate.numUncompressed

유형: integer

기본값: 5

현재 로그 파일을 포함하여 압축되지 않은 상태로 둘 수 있는 최대 총 로그 파일 수입니다.

spec.applicationDatabase.agent.mongod.logRotate.percentOfDiskspace

유형: 숫자

기본값: 0.02

MongoDB Ops Manager 가 10진수로 표시된 로그 파일을 저장 하는 데 사용할 수 있는 총 디스크 공간의 최대 백분율입니다. 이 제한을 초과하면 MongoDB Ops Manager 는 이 제한에 도달할 때까지 압축된 로그 파일을 삭제합니다. MongoDB Ops Manager 는 가장 오래된 로그 파일을 먼저 삭제합니다.

spec.applicationDatabase.agent.<component>.logRotate.sizeThresholdMB

유형: 숫자

구성 요소 를 다음 값 중 하나로 바꿉니다.

  • mongod

  • monitoringAgent

Required if rotating logs. Maximum size in MB for an individual log file before Ops Manager rotates it. Ops Manager rotates the log file immediately if it meets the value given in either this sizeThresholdMB or the logRotate.timeThresholdHrs limit.

spec.applicationDatabase.agent.<component>.logRotate.timeThresholdHrs

유형: integer

구성 요소 를 다음 값 중 하나로 바꿉니다.

  • mongod

  • monitoringAgent

Required if rotating logs. Maximum duration in hours for an individual log file before the next rotation. The time is since the last rotation. Ops Manager rotates the log file immediately if it meets the value given in either timeThresholdHrs or the logRotate.sizeThresholdM limit.

spec.applicationDatabase.agent.mongod.auditlogRotate

유형: 객체

프로세스 의 MongoDB 감사 로그를 순환시키기 위한 MongoDB 구성 객체 입니다.

spec.applicationDatabase.agent.mongod.auditlogRotate.numTotal

유형: integer

기본값: 0

Total number of audit log files that Ops Manager retains. If you don't change the default value, Ops Manager bases rotation on your other agent.mongod.auditlogRotate settings.

spec.applicationDatabase.agent.mongod.auditlogRotate.numUncompressed

유형: integer

기본값: 5

현재 감사 로그 파일 을 포함하여 압축되지 않은 상태로 둘 수 있는 최대 총 감사 로그 파일 수입니다.

spec.applicationDatabase.agent.mongod.auditlogRotate.percentOfDiskspace

유형: 숫자

기본값: 0.02

MongoDB Ops Manager 가 10진수로 표시된 감사 로그 파일을 저장 하는 데 사용할 수 있는 총 디스크 공간의 최대 백분율입니다. 이 제한을 초과하면 MongoDB Ops Manager 는 이 제한에 도달할 때까지 압축된 감사 로그 파일을 삭제합니다. MongoDB Ops Manager 는 가장 오래된 감사 로그 파일을 먼저 삭제합니다.

spec.applicationDatabase.agent.mongod.auditlogRotate.sizeThresholdMB

유형: 숫자

Required if rotating audit logs. Maximum size in MB for an individual audit log file before Ops Manager rotates it. Ops Manager rotates the audit log file immediately if it reaches the value in either sizeThresholdMB or the auditlogRotate.timeThresholdHrs limit.

spec.applicationDatabase.agent.mongod.auditlogRotate.timeThresholdHrs

유형: integer

Required if rotating audit logs. Maximum duration in hours for an individual audit log file before the next rotation. The time is since the last rotation. Ops Manager rotates the audit log file immediately if it reaches the value in either timeThresholdHrs or the auditlogRotate.sizeThresholdM limit.

spec.applicationDatabase.agent.startupOptions

유형: 객체

시작 옵션에 대한 MongoDB 구성 객체입니다. 사용 가능한 필드는 MongoDB Agent 설정 을 참조하세요.

spec.applicationDatabase.agent.systemLog

유형: 객체

systemLog 옵션을 구성하기 위한 MongoDB 구성 객체입니다.

spec.applicationDatabase.agent.systemLog.path

유형: 문자열

기본값입니다: /var/log/mongodb-mms-automation/mongodb.log

The path of the log file to which mongod or mongos should send all diagnostic logging information, rather than the standard output or the host's syslog. MongoDB creates the log file at the specified path.

Linux 패키지 init 스크립트는 systemLog.path 이(가) 기본값에서 변경될 것으로 예상하지 않습니다. Linux 패키지를 사용하면서 systemLog.path 을(를) 변경하는 경우 자체 init 스크립트를 사용하고 내장 스크립트를 비활성화해야 합니다.

spec.applicationDatabase.agent.systemLog.logAppend

유형: 부울

기본값입니다: false

When true, mongos or mongod appends new entries to the end of the existing log file when the mongos or mongod instance restarts. Without this option, mongod will back up the existing log and create a new file.

spec.applicationDatabase.agent.systemLog.destination

유형: 문자열

The destination to which MongoDB sends all log output. Specify either file or syslog. If you specify file, you must also specify systemLog.path.

If you don't specify systemLog.path, MongoDB sends all log output to standard output.

경고

시스템 로그 데몬은 MongoDB가 메시지를 발행할 때가 아니라 메시지를 기록할 때 타임스탬프를 생성합니다. 이 동작은 특히 시스템 부하가 심한 경우 로그 항목에 대한 잘못된 타임스탬프를 초래할 수 있습니다. 정확한 타임스탬프를 보장하려면 프로덕션 시스템에 대해 file 옵션을 사용하는 것이 좋습니다.

spec.applicationDatabase.externalAccess

유형: 컬렉션

외부 연결을 위해 클러스터를 노출하는 사양입니다. Kubernetes 클러스터 외부에서 MongoDB 리소스에 연결하는 방법을 알아보려면 Kubernetes 외부에서 MongoDB 데이터베이스 리소스에 연결하기를 참조하세요.

spec.externalAccess를 추가하면 Kubernetes Operator는 복제본 세트의 각 Pod에 대한 외부 서비스를 생성합니다. 외부 서비스는 클러스터의 각 MongoDB 데이터베이스 Pod에 대한 외부 진입점을 제공합니다. 각 외부 서비스에는 외부 서비스를 특정 Pod와 일치시키는 셀렉터(selector)가 있습니다.

이 설정을 값없이 추가하면 Kubernetes Operator는 다음과 같은 기본값을 사용하여 외부 서비스를 생성합니다.

필드
설명

Name

<pod-name>-svc-external

외부 서비스의 이름입니다. 이 값은 변경할 수 없습니다.

Type

LoadBalancer

외부 LoadBalancer 서비스를 생성합니다.

Port

<Port Number>

A port for mongod.

publishNotReadyAddress

true

Specifies that DNS records are created even if the Pod isn't ready. Do not set to false for any database Pod.

spec.externalAccess.externalService

유형: 컬렉션

spec.externalAccess 에서 기본값을 재정의하기 위한 사양입니다.

spec.externalAccess 설정을 지정하면 Kubernetes Operator가 기본값을 사용하여 외부 로드 밸런서 서비스를 자동으로 생성합니다. 필요에 따라 특정 값을 재정의하거나 새 값을 추가할 수 있습니다. 예를 들어, 밸런서가 필요하지 않은 NodePort services를 생성하려는 경우, Kubernetes 스펙에서 오버라이드를 구성해야 합니다.

externalAccess:
externalService:
annotations:
# cloud-specific annotations for the service
spec:
type: NodePort # default is LoadBalancer
# you can specify other spec overrides if necessary

Kubernetes 사양에 대한 자세한 내용은 Kubernetes 설명서의 ServiceSpec을 참조하세요.

spec.externalAccess.externalService.annotations

유형: 컬렉션

배포서버 의 모든 클러스터에 cloud 제공자별 구성 설정을 추가할 수 있는 키-값 쌍입니다. 자세한 학습 은 주석 및 Kubernetes cloud 제공자 설명서를 참조하세요.

주석 을 사용하여 Kubernetes Operator 배포에서 사용하는 외부 서비스에 대한 자리 표시자 값을 지정할 수 있습니다. Kubernetes Operator는 다음 표에 설명된 대로 이러한 값을 올바른 값으로 자동으로 바꿉니다. 자리 표시자를 사용하면 특정 파드의 각 서비스에 특정 어노테이션을 제공할 수 있습니다.

설명

{resourceName}

{namespace}

{podIndex}

StatefulSet 에 의해 할당되고 현재 외부 서비스의 대상이 되는 파드의 인덱스입니다.

{podName}

{resourceName}-{podIndex} 과 같습니다.

{statefulSetName}

The StatefulSet. Equal to {resourceName}.

{externalServiceName}

지정한 자리 표시자 값을 기반으로 외부 서비스의 생성된 이름입니다. {resourceName}-{podIndex}-svc-external 과 같습니다.

{mongodProcessDomain}

The domain name of the server that is hosting the mongod process. Equal to spec.externalAccess.externalDomain if specified. Otherwise, equal to the domain used for the mongod process FQDN.

예를 들어 프로세스 호스트 이름 mdb-rs-1.example.com 의 경우 example.com 은 도메인 이름입니다.

{mongodProcessFQDN}

The mongod process hostname set in the automation configuration.

프로세스 호스트 이름은 배포서버 구성에 따라 다릅니다. 을(를) 사용하도록 external domains 배포서버 구성한 경우 프로세스 호스트 이름은 다음 형식을 사용합니다.

{resourceName}-{podIndex}.{mongodProcessDomain}

예를 들면 다음과 같습니다. mdb-rs-1.example.com

배포에서 외부 도메인을 사용하지 않는 경우 프로세스 호스트 이름은 다음 형식을 사용합니다.

{resourceName}-{podIndex}.{resourceName}-{podIndex}-svc.{namespace}.svc.cluster.local

예를 들면 다음과 같습니다. mdb-rs-1.mdb-rs-1-svc.ns.svc.cluster.local

참고

표에 지정된 대로 알려진 자리 표시자 값만 사용해야 하며 자리 표시자가 비어 있거나 null 값을 사용하지 않도록 해야 합니다. 또한 단일 MongoDB 리소스 배포서버 에 다중 Kubernetes 클러스터 배포와 관련된 자리 표시자를 사용할 수 없습니다.

그렇지 않으면 Kubernetes Operator가 오류를 반환합니다. 예를 들어 다음과 같은 오류 메시지가 표시될 수 있습니다.

error replacing placeholders in map with key=external-dns.alpha.kubernetes.io/hostname, value={resourceName}-{podIndex}-{unknownPlaceholder}.{clusterName}-{clusterIndex}.example.com: missing values for the following placeholders: {clusterName}, {clusterIndex}, {unknownPlaceholder}``

예시

다음 예제에서는 {resourceName}, {podIndex}{namespace} 자리 표시자를 지정합니다.

apiVersion: mongodb.com/v1
kind: MongoDB
metadata:
name: mdb-rs
namespace: ns
spec:
replicas: 3
externalAccess:
externalService:
annotations:
external-dns.alpha.kubernetes.io/hostname: {resourceName}-{podIndex}-{namespace}.example.com

Kubernetes Operator는 각 자리 표시자의 적절한 값을 기반으로 외부 서비스에 대한 주석을 자동으로 채웁니다. 예를 들면 다음과 같습니다.

mdb-rs-0-svc-external:
annotations:
external-dns.alpha.kubernetes.io/hostname: mdb-rs-0-ns.example.com
mdb-rs-1-svc-external:
annotations:
external-dns.alpha.kubernetes.io/hostname: mdb-rs-1-ns.example.com
mdb-rs-2-svc-external:
annotations:
external-dns.alpha.kubernetes.io/hostname: mdb-rs-2-ns.example.com
spec.externalAccess.externalService.spec

유형: 컬렉션

Configuration for the ServiceSpec. To learn more, see spec.externalAccess.externalService.

spec.applicationDatabase.memberConfig

유형: 객체 배열

MongoDB Ops Manager 배포서버 서버의 각 애플리케이션 데이터베이스 복제본 세트 멤버에 대한 사양입니다.

중요

If you set spec.topology to MultiCluster, use spec.applicationDatabase.clusterSpecList.memberConfig instead of spec.applicationDatabase.memberConfig. In a multi-cluster Ops Manager deployment, the Kubernetes Operator ignores all parameters under spec.applicationDatabase.memberConfig.

memberConfig 목록의 요소 수는 spec.applicationDatabase.members 와 같아야 합니다.

memberConfig 목록의 요소 순서는 복제본 세트 의 멤버 순서를 반영해야 합니다. 예를 예시 배열 의 첫 번째 요소는 인덱스 0 에서 Pod에 영향을 주고, 두 번째 요소는 인덱스 1 에 영향을 줍니다.

예시

애플리케이션 데이터베이스의 3개 멤버 복제본 세트 에 대한 다음 예시 사양을 살펴보세요.

spec:
applicationDatabase:
memberConfig:
- votes: 1
priority: "0.5"
tags:
tag1: "value1"
environment: "prod"
- votes: 1
priority: "1.5"
tags:
tag2: "value2"
environment: "prod"
- votes: 0
priority: "0"
tags:
tag2: "value2"
environment: "prod"
spec.applicationDatabase.memberConfig.priority

유형: 문자열

애플리케이션 데이터베이스 복제본 세트 멤버가 프라이머리 멤버가 될 상대적인 가능성을 나타내는 숫자입니다.

  • 복제 세트 멤버가 프라이머리가 될 가능성을 상대적으로 높이려면 더 높은 priority 값을 지정합니다.

  • 복제 세트 멤버가 기본 멤버가 될 가능성을 상대적으로 줄이려면 더 낮은 priority 값을 지정하세요.

예를 들어 memberConfig.priority1.5인 노드는 memberConfig.priority0.5인 노드보다 프라이머리 노드가 될 가능성이 큽니다.

memberConfig.priority0인 멤버는 프라이머리가 될 수 없습니다. 자세히 알아보려면 멤버 우선순위를 참조하세요.

spec.applicationDatabase.memberConfig.tags

유형: 매핑

애플리케이션 데이터베이스 복제본 세트 의 특정 멤버에 읽기 및 쓰기 (write) 작업을 지시하기 위한 복제본 세트 태그 의 맵입니다.

spec.applicationDatabase.memberConfig.votes

유형: 숫자

Determines whether an Application Database replica set member can vote in an election. Set to 1 to allow the member to vote. Set to 0 to exclude the member from an election.

spec.applicationDatabase.passwordSecretKeyRef.name

유형: 문자열

Ops Manager 데이터베이스 사용자 mongodb-ops-manager 의 비밀번호가 포함된 시크릿 의 이름입니다. Ops Manager는 이 비밀번호를 사용 하여 애플리케이션 데이터베이스에 인증합니다.

spec.applicationDatabase.passwordSecretKeyRef.key

유형: 문자열

Ops Manager 데이터베이스 사용자 mongodb-ops-manager 의 비밀번호가 포함된 시크릿 필드의 이름입니다. Ops Manager는 이 비밀번호를 사용 하여 애플리케이션 데이터베이스에 인증합니다.

기본값은 password입니다.

spec.applicationDatabase.security.certsSecretPrefix

유형: 문자열

Text to prefix to the Kubernetes secret that you created that contains your Application Database's TLS key and certificate.

시크릿 이름을 <prefix>-<metadata.name>-db-cert 으로 지정해야 합니다.

HTTPS 를 통해 실행되도록 Ops Manager 인스턴스를 구성하는 방법을 알아보려면 Ops Manager 리소스 배포를 참조하세요.

spec.applicationDatabase.security.tls.ca

유형: 문자열

Name of the Kubernetes ConfigMap containing the CA file for the Application Database.

중요

spec.applicationDatabase.security.tls.ca is required if you use a custom CA to sign your Application Database's TLS certificates.

Kubernetes Operator를 사용하려면 ConfigMap에서 애플리케이션 데이터베이스의 인증서 이름을 ca-pem 으로 지정해야 합니다.

The CA specified in this section is also used for configuring custom TLS certificates for S3 storage when either spec.backup.s3OpLogStores.customCertificate or spec.backup.s3Stores.customCertificate are set to true.

CA 는 다음을 충족하는 인증서에 서명합니다.

  • 애플리케이션 데이터베이스 복제본 세트 멤버가 서로 통신하는 데 사용합니다.

  • MongoDB Ops Manager 가 애플리케이션 데이터베이스 복제본 세트 와 통신하는 데 사용합니다.

경고

You must concatenate your custom CA file and the entire TLS certificate chain from downloads.mongodb.com to prevent Ops Manager from becoming inoperable if the application database restarts.

spec.applicationDatabase.security.tls.enabled

중요

spec.security.applicationDatabase.tls.enabled is deprecated and will be removed in a future release. To enable TLS, provide a value for the spec.security.applicationDatabase.certsSecretPrefix setting.

와 애플리케이션 데이터베이스 간의 TLS 인증서를 사용하여 통신을 암호화합니다.MongoDB Ops Manager

다음 설정은 애플리케이션 데이터베이스와 함께 Prometheus를 사용할 때 적용 됩니다.

spec.applicationDatabase.prometheus

유형: 배열

선택 사항입니다. 지표를 Prometheus에 노출하기 위한 매개변수가 포함된 목록입니다.

spec.applicationDatabase.prometheus.metricsPath

유형: 문자열

기본값: "/metrics"

선택 사항입니다. 지표 엔드포인트의 경로를 나타내는 사람이 읽을 수 있는 문자열입니다. 이 설정을 지정하지 않으면 기본값이 적용됩니다.

spec.applicationDatabase.prometheus.passwordSecretRef

유형: 객체

기본 HTTP 인증 을 위한 시크릿 의 세부 정보가 포함된 조건부 객체입니다. 애플리케이션 데이터베이스와 함께 Prometheus를 사용하려면 이 설정을 지정해야 합니다.

spec.applicationDatabase.prometheus.passwordSecretRef.key

유형: 문자열

기본값: "password"

선택 사항. 기본 HTTP 인증 위한 비밀번호를 저장하는 시크릿(secret)의 키를 식별하는 사람이 읽을 수 있는 문자열입니다. 이 설정을 지정하지 않으면 기본값 적용됩니다.

spec.applicationDatabase.prometheus.passwordSecretRef.name

유형: 문자열

조건부

기본 HTTP 인증 위한 비밀번호가 포함된 시크릿 을 식별하는 사람이 읽을 수 있는 레이블입니다. 애플리케이션 데이터베이스와 함께 Prometheus를 사용하려면 이 설정을 지정해야 합니다.

spec.applicationDatabase.prometheus.port

유형: integer

기본값: 9216

선택 사항입니다. 지표 엔드포인트가 바인딩할 포트를 식별하는 숫자입니다. 이 설정을 지정하지 않으면 기본값이 적용됩니다.

spec.applicationDatabase.prometheus.tlseSecretKeyRef

유형: 객체

Optional. Object that contains the details of the secret for TLS authentication.

spec.applicationDatabase.prometheus.tlseSecretKeyRef.key

유형: 문자열

기본값: "password"

Optional. Human-readable string that identifies the key in the secret that stores the password for TLS authentication. If you don't specify this setting, the default applies.

spec.applicationDatabase.prometheus.tlseSecretKeyRef.name

유형: 문자열

Conditional. Human-readable label that identifies the secret that contains the password for TLS authentication. If you want to use Prometheus with your Application Database and you want to use TLS authentication, you must specify this setting.

spec.applicationDatabase.prometheus.username

유형: 문자열

조건부. 기본 HTTP 인증을 위해 사용자를 식별하는 사람이 읽을 수 있는 레이블입니다. 애플리케이션 데이터베이스와 함께 Prometheus를 사용하려면 이 설정을 지정해야 합니다.

이 섹션에서는 필수 MongoDB Ops Manager 설정 외에도 멀티 클러스터 MongoDB Ops Manager 배포에 사용해야 하는 설정에 대해 설명합니다.

spec.clusterSpecList.members

유형: integer

Conditional. The number of Ops Manager members in the Ops Manager cluster in a multi-Kubernetes cluster MongoDB deployment. When you set spec.topology to MultiCluster, you must specify the value for this parameter. Omit this parameter for single-cluster deployments. If you set this parameter to zero, this removes this Ops Manager member cluster from the list of member clusters in the multi-Kubernetes cluster of Ops Manager instances.

spec.topology

유형: 문자열

리소스에 Kubernetes 대한 배포서버 유형입니다.MongoDB Ops Manager

  • The values are SingleCluster or MultiCluster. 생략하면 기본값은 SingleCluster 입니다.

  • MultiCluster 을 지정하는 경우:

MongoDB Ops Manager 리소스는 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 다음 설정도 사용할 수 있습니다.

spec.clusterSpecList

유형: 컬렉션

조건부. MongoDB Ops Manager 또는 백업 데몬 인스턴스를 배포하려는 다중 Kubernetes 클러스터에서 선택한Kubernetes 멤버 클러스터의 세부 정보입니다. 리소스 사양의 예도 참조하세요.

spec.clusterSpecList.clusterName

유형: 문자열

선택 사항. Kubernetes Operator용 MongoDB 컨트롤러가 MongoDB Ops Manager 또는 백업 디먼 용 StatefulSet 를 예약하는 멀티 Kubernetes 클러스터 MongoDB deployment 에서 멤버 Kubernetes 클러스터 의 이름입니다.

spec.clusterSpecList.clusterDomain

유형: 문자열

Optional. An override for spec.clusterDomain for the specific Ops Manager member cluster. If you omit this value, defaults to the value set in spec.clusterDomain. Kubernetes assigns each Pod a FQDN. The Kubernetes Operator calculates the FQDN for each Pod using a provided clusterDomain value. Kubernetes doesn't provide an API to query these hostnames.

spec.clusterSpecList.configuration

유형: 컬렉션

Optional. Ops Manager configuration properties that override properties you set in spec.configuration for the specific cluster. See Ops Manager Configuration Settings for property names and descriptions. Each property takes a value of type string. For example, setting these properties allows you to change environment variables that you must pass to Ops Manager and the Backup Daemon in that particular member cluster.

If you omit specifying values, defaults to the values set in spec.configuration.

spec.clusterSpecList.jvmParameters

유형: 문자열 배열

선택 사항. 이 멤버 클러스터 에 대해 및 백업 디먼 인스턴스에 전달된JVM 매개 변수입니다.MongoDB Ops Manager

spec.clusterSpecList.externalConnectivity

유형: 컬렉션

Optional. Configuration object that enables external connectivity to Ops Manager for the specific cluster. This is an override for spec.externalConnectivity for the specific cluster.

이 매개변수의 값을 지정하여 MongoDB Ops Manager 애플리케이션 이 다양한 클러스터에서 외부에 노출되는 방식을 변경합니다. 예를 예시 ,MongoDB Ops Manager Kubernetes 서로 다른 cloud 제공자의 노드에 를 배포 경우, 이 매개변수에 cloud 제공자별 값을 지정해야 할 수 있습니다.

이 매개변수를 설정하면 다음과 같습니다.

  • The Kubernetes Operator doesn't use spec.externalConnectivity values for this member Ops Manager cluster.

  • The Kubernetes Operator creates a Kubernetes service, named <om-name>-svc-ext, that allows traffic originating from outside of the Kubernetes cluster to reach the Ops Manager application on this member cluster.

If you omit this parameter, the Kubernetes Operator uses values from spec.externalConnectivity for this member cluster.

spec.clusterSpecList.statefulSet.spec

유형: 컬렉션

Optional. Specification for the StatefulSet that the MongoDB Controllers for Kubernetes Operator creates for a specific member cluster in the multi-Kubernetes cluster Ops Manager deployment. This parameter is an override for spec.statefulSet.spec. If you omit it, the Kubernetes Operator uses the values from spec.statefulSet.spec. For example, you can use this parameter to specify different storage values for each of your Ops Manager clusters in the multi-Kubernetes cluster MongoDB deployment.

To review which fields you can add to spec.clusterSpecList.statefulSet.spec, see StatefulSetSpec v1 apps in the Kubernetes documentation.

spec.clusterSpecList[*].backup

선택 사항. 해당 특정 구성원 클러스터에 대해 spec.backup 에 지정된 값을 재정의하는 백업 설정입니다.

  • You can set these values only if spec.backup.enabled is set to true.

  • 이 매개변수에 대한 값 설정을 생략하면 기본값 은 spec.backup 아래의 설정에 지정된 값입니다.

  • 이 재정의에서는 모든 백업 설정이 지원되지 않습니다. 다음 백업 설정은 spec.backup 아래에 지정된 경우 모든 멤버 클러스터에 전역적으로 적용되므로 재정의할 수 없습니다.

    • externalServiceEnabled

    • headDB

    • opLogStores

    • blockStores

    • s3Stores

    • fileSystemStores

    • queryableBackupSecretRef

    • encryption

spec.clusterSpecList[*].backup.members

유형: integer

Optional. Override for spec.backup.members. The number of Backup Daemon instances to deploy in this cluster. if you omit this value or provide a value of 0, the Kubernetes Operator won't deploy Backup Daemon instances in a particular member cluster.

spec.clusterSpecList[*].backup.assignmentLabels

유형: 문자열 배열

Optional. Override for spec.backup.assignmentLabels. If specified, the Kubernetes Operator uses the values you specify in this override for all Backup Daemon instances in a particular member cluster. If you omit values for this parameter, the values default to those specified in spec.backup.assignmentLabels for all Backup Daemon instances in a member cluster.

spec.clusterSpecList[*].backup.jvmParameters

유형: 문자열 배열

Optional. Override for spec.backup.jvmParameters. Allows you to customize the JVM value for Backup Daemon instances in a particular member cluster.

spec.clusterSpecList[*].backup.statefulSet

유형: 문자열

Optional. Override for spec.backup.statefulSet.spec. Allows you to customize the values for a Backup Daemon in a particular member cluster. To review which fields you can add to spec.clusterSpecList[*].backup.statefulSet, see StatefulSetSpec v1 apps in the Kubernetes documentation.

이 섹션에서는 애플리케이션 데이터베이스에 사용해야 하는 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 설정에 대해 설명합니다.

spec.applicationDatabase.clusterSpecList

유형: 컬렉션

애플리케이션 데이터베이스를 호스팅하다 하는 노드 제공 을 하는 다중 Kubernetes 클러스터 MongoDB deployment 에서 선택한 Kubernetes 멤버 클러스터의 세부 정보입니다.

spec.applicationDatabase.clusterSpecList.clusterName

유형: 문자열

Kubernetes Operator용 MongoDB 컨트롤러가 애플리케이션 데이터베이스에 대한 StatefulSet 를 예약하는 다중 Kubernetes 클러스터 MongoDB deployment 에서 멤버 Kubernetes 클러스터 의 이름입니다.

중요

You can't convert a single cluster Ops Manager instance to a multi-Kubernetes cluster MongoDB deployment instance by modifying the topology and the clusterSpecList settings in the CRD.

spec.applicationDatabase.clusterSpecList.members

유형: 숫자

지정된 멤버 클러스터에 있는 statefulSet 노드의 수입니다. 멤버 클러스터는 다중 Kubernetes 클러스터 MongoDB 배포에서 애플리케이션 데이터베이스를 호스팅하는 멤버 클러스터 중 하나입니다.

spec.applicationDatabase.topology

유형: 문자열

애플리케이션 데이터베이스에 대한 Kubernetes 배포 유형입니다.

  • The values are SingleCluster or MultiCluster. 생략하면 기본값은 SingleCluster 입니다.

  • MultiCluster 를 지정하는 경우 멤버를 하나 이상 지정해야 합니다.

  • cluster on which you want to deploy the Application Database using the clusterSpecList, clusterName, members parameters.

  • MultiCluster 을 지정하면 Kubernetes Operator는 spec.applicationDatabase.members 필드 에 설정하다 한 값을 무시합니다.

자세히 알아보려면 멀티 클러스터 리소스 사양의 예를 참조하세요.

이 섹션에서는 애플리케이션 데이터베이스에 사용할 수 있는 멀티 클러스터 MongoDB Ops Manager 배포서버 와 관련된 설정에 대해 설명합니다.

spec.applicationDatabase.clusterSpecList.externalAccess

유형: 문자열

복제본 세트 배포를 외부에 노출하는 데 사용되는 외부 도메인입니다.

By default, each replica set member uses the Kubernetes Pod's FQDN (*.svc.cluster.local) as the default hostname. However, if you add an external domain to this setting, the replica set uses a hostname that is a subdomain of the specified domain instead. This hostname uses the following format:

<replica-set-name>-<cluster-idx>-<pod-idx>.<externalDomain>

예를 들면 다음과 같습니다.

multi-replica-set-0-1.cluster-0.example.com

중요

서비스 메시 없이 애플리케이션 데이터베이스 배포서버 배포할 때만 이 설정을 사용합니다. 서비스 메시가 없는 멀티 클러스터 MongoDB Ops Manager참조하세요.

spec.applicationDatabase.clusterSpecList.memberConfig

유형: 문자열 배열

멀티 클러스터 MongoDB Ops Manager 배포서버 의 각 애플리케이션 데이터베이스 복제본 세트 멤버에 대한 사양입니다.

중요

If you set spec.topology to SingleCluster, use spec.applicationDatabase.memberConfig instead of spec.applicationDatabase.clusterSpecList.memberConfig.

The number of elements in the memberConfig list must equal spec.applicationDatabase.clusterSpecList.members.

memberConfig 목록의 요소 순서는 복제본 세트 의 멤버 순서를 반영해야 합니다. 예를 예시 배열 의 첫 번째 요소는 인덱스 0 에서 Pod에 영향을 주고, 두 번째 요소는 인덱스 1 에 영향을 줍니다.

예시

애플리케이션 데이터베이스의 3개 멤버 복제본 세트 에 대한 다음 예시 사양을 살펴보세요.

spec:
replicas: 3
version: 8.0.0
backup:
enabled: true
storage:
resources:
requests:
storage: 10Gi
storageClassName: standard
applicationDatabase:
clusterSpecList:
- name: appdb
members: 3
memberConfig:
- votes: 1
priority: "0.5"
tags:
tag1: "value1"
environment: "prod"
- votes: 1
priority: "1.5"
tags:
tag2: "value2"
environment: "prod"
- votes: 0
priority: "0"
tags:
tag2: "value2"
environment: "prod"
spec.applicationDatabase.clusterSpecList.memberConfig.priority

유형: 문자열

애플리케이션 데이터베이스 복제본 세트 멤버가 프라이머리 멤버가 될 상대적인 가능성을 나타내는 숫자입니다.

  • 복제 세트 멤버가 프라이머리가 될 가능성을 상대적으로 높이려면 더 높은 priority 값을 지정합니다.

  • 복제 세트 멤버가 기본 멤버가 될 가능성을 상대적으로 줄이려면 더 낮은 priority 값을 지정하세요.

예를 들어 memberConfig.priority1.5인 노드는 memberConfig.priority0.5인 노드보다 프라이머리 노드가 될 가능성이 큽니다.

memberConfig.priority0인 멤버는 프라이머리가 될 수 없습니다. 자세히 알아보려면 멤버 우선순위를 참조하세요.

spec.applicationDatabase.clusterSpecList.memberConfig.tags

유형: 매핑

애플리케이션 데이터베이스 복제본 세트 의 특정 멤버에 읽기 및 쓰기 (write) 작업을 지시하기 위한 복제본 세트 태그 의 맵입니다.

spec.applicationDatabase.clusterSpecList.memberConfig.votes

유형: 숫자

Determines whether an Application Database replica set member can vote in an election. Set to 1 to allow the member to vote. Set to 0 to exclude the member from an election.