Ops Manager 리소스 사양
이 페이지의 내용
MongoDB MongoDB Enterprise Kubernetes Operator 엔터프라이즈 Kubernetes MongoDB Ops Manager Operator 는 사용자가 쓰기 (write) 사양 파일에서 컨테이너화된 MongoDB Ops Manager 배포서버 를 생성합니다.
MongoDB Ops Manager 리소스 사양을 만들거나 업데이트 한 후 MongoDB Enterprise Kubernetes Operator 에 이 사양을 Kubernetes 환경에 적용 하도록 지시합니다. Kubernetes Operator는 에 필요한 서비스 및 Kubernetes MongoDB Ops Manager MongoDB Ops Manager 사용자 지정 리소스를 생성한 다음, 와 해당 지원 애플리케이션 데이터베이스를 환경의 Kubernetes 컨테이너에 배포합니다.
각 MongoDB Ops Manager 리소스는 객체 를 사용합니다.YAML 의 사양을 사용하여 배포의 특성 및 설정을 정의합니다.
예시
다음 예에서는 Ops Manager 배포를 위한 리소스 사양을 보여줍니다.
1 apiVersion: mongodb.com/v1 2 kind: MongoDBOpsManager 3 metadata: 4 name: om 5 spec: 6 topology: SingleCluster # optional, SingleCluster by default 7 opsManagerURL: https://link.to.configured.load-balancer.example.com # optional OM URL for the operator 8 replicas: 1 9 version: "6.0.18" 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: "6.0.5-ubi8" 58 security: 59 tls: 60 ca: issuer-ca 61 secretRef: 62 prefix: appdb
1 apiVersion: mongodb.com/v1 2 kind: MongoDBOpsManager 3 metadata: 4 name: om 5 spec: 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 37 replicas: 1 38 version: "6.0.18" 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: "6.0.5-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 tls: 95 ca: issuer-ca 96 secretRef: 97 prefix: appdb
MongoDB Ops Manager 필수 설정
이 섹션에서는 모든 Ops Manager 리소스에 대해 사용해야 하는 설정에 대해 설명합니다.
spec.adminCredentials
유형: 문자열
필수. 시크릿 의 이름 Kubernetes MongoDB Ops Manager 관리자 사용자를 위해 생성했습니다. MongoDB Ops Manager 리소스를 배포할 때 Kubernetes Operator는 이러한 자격 증명을 가진 사용자를 생성합니다.
참고
단일 클러스터 Kubernetes 배포에 시크릿이 저장되지 않도록 하려면 모든 시크릿 을 마이그레이션 할 수 있습니다.시크릿 저장 도구 . 여러 Kubernetes 클러스터에 대한 배포는 HashiCorp Vault 와 같은 비밀 저장 도구에 비밀을 저장하는 것을 지원 하지 않습니다. .
관리 사용자에게는 전역 소유자 역할이 부여됩니다.
spec.replicas
유형: integer
조건부. 병렬로 실행 MongoDB Ops Manager 인스턴스의 수입니다.
spec.topology
에SingleCluster
을 지정하는 경우 이 매개 변수는 필수입니다. 허용되는 최소 값은1
입니다.spec.topology
에MultiCluster
을 지정하면 이 매개 변수는 무시됩니다.
MongoDB Ops Manager 선택적 설정
MongoDB Ops Manager 리소스는 다음 설정을 사용할 수도 있습니다.
spec.backup.logging.logBackAccessRef
유형: 문자열
MongoDB Ops Manager 백업 로그를 구성하기 위한 사용자 지정
logback-access.xml
파일 이 포함된 ConfigMap에 대한 참조입니다.ConfigMap의 키는 MongoDB Ops Manager 파드의 기본값 파일 을 대체하도록
logback-access.xml
의 이름과 정확히 일치해야 합니다.
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
여야 합니다.
spec.logging.logBackRef
유형: 문자열
사용자 지정
logback.xml
파일 이 포함된 ConfigMap에 대한 참조입니다. 이 파일 은 로그 로테이션 정책, 로그 수준 및 기타 로깅 매개변수를 포함하여 MongoDB Ops Manager 의 일반적인 로깅 동작을 구성합니다.MongoDB Ops Manager 파드의 기본값 파일 을 대체하려면 ConfigMap의 키는 정확히
logback.xml
여야 합니다.
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로 변경할 수 있습니다.
참고
애플리케이션 데이터베이스용 MongoDB 배포 및 모니터링 에이전트를 구성하기 위해 특정 배포 에 대한 ConfigMap에 지정한 URL과
spec.opsManagerURL
를 혼동하지 마세요. Kubernetes Operator는spec.opsManagerURL
가 있어야 MongoDB Ops Manager 인스턴스에 직접 연결하고 MongoDB Ops Manager 및 애플리케이션 데이터베이스 배포를 구성할 수 있습니다. Kubernetes Operator는spec.opsManagerURL
을(를) 사용하여 특정 MongoDB 데이터베이스를 관리하지 않습니다.다음과 같은 경우
spec.opsManagerURL
매개변수를 사용자 지정 URL 로 변경합니다.여러 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는 각 Pod 를 할당합니다.FQDN . Kubernetes Operator는 각 Pod 의 FQDN을
clusterDomain
계산합니다. 제공된 을(를) 사용합니다. Kubernetes는 이러한 호스트 이름을 쿼리하는 API 를 제공하지 않습니다.
spec.clusterName
유형: 문자열
Kubernetes는 각 Pod 를 할당합니다.FQDN . Kubernetes Operator는 각 Pod 의 FQDN을
clusterName
계산합니다. 제공된 을(를) 사용합니다. Kubernetes는 이러한 호스트 이름을 쿼리하는 API 를 제공하지 않습니다.
spec.configuration
유형: 컬렉션
MongoDB Ops Manager 구성 속성입니다. 속성 이름 및 설명은 MongoDB Ops Manager 구성 설정 을 참조하세요. 각 속성은
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_SERVER
및RAM_POOL
입니다.
spec.jvmParameters
유형: 문자열 배열
선택 사항. container에서 Ops Manager 애플리케이션으로 전달되는 JVM 매개변수입니다. 제공된 모든 매개변수는 Ops Manager 애플리케이션의 기본 JVM 매개변수를 대체합니다.
이 Kubernetes 연산자 매개변수의 기본값은 빈 목록입니다.
spec: jvmParameters: ["-XX:+HeapDumpOnOutOfMemoryError","-XX:HeapDumpPath=/tmp"] 중요
JVM 메모리 힙(Memory Heap) 값 변경에 대한 책임은 본인이 감수해야 합니다.
Kubernetes 연산자는 container의 메모리를 기반으로 Ops Manager 애플리케이션의 JVM 메모리 힙 값을 계산합니다.
-Xms
및-Xmx
값을 변경하면 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 파일이 포함되어 있습니다.
중요
사용자 지정 CA 를 사용하여
spec.security.tls.ca
MongoDB Ops Manager TLS 인증서에 서명하는 경우 이(가) 필요합니다.Kubernetes 연산자는 ConfigMap에서 Ops Manager 리소스
mms-ca.crt
에 대한 인증서 이름을 지정해야 합니다.이 CA 는 다음을 충족하는 인증서에 서명합니다.
클라이언트가 Ops Manager 애플리케이션에 연결하는 데 사용합니다.
애플리케이션 데이터베이스 파드 MongoDB Ops Manager의 에이전트 와 통신하는 데 사용합니다.
경고
애플리케이션 데이터베이스가 다시 시작될 때 Ops Manager가 작동하지 않도록 방지하려면
downloads.mongodb.com
에서 사용자 지정 CA 파일과 전체 TLS 인증서 체인을 연결해야 합니다.
spec.security.tls.enabled
중요
spec.security.tls.enabled
는 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정입니다. TLS 를 활성화하려면spec.security.certsSecretPrefix
설정에 대한 값을 제공합니다.클라이언트와 Ops Manager 간의 TLS 인증서를 사용하여 통신을 암호화합니다.
spec.statefulSet.spec
유형: 컬렉션
StatefulSet 사양 MongoDB Enterprise Kubernetes Operator 가 MongoDB Ops Manager를 위해 생성하는
에 추가할 수 있는
spec.statefulSet.spec
1 필드를 검토하려면 StatefulSetSpec v 앱 을 참조하세요. Kubernetes 문서에서 확인 가능합니다.
spec.statefulSet.spec.template
유형: 컬렉션
템플릿 Kubernetes StatefulSet MongoDB Enterprise Kubernetes Operator 의 Pods 가 MongoDB Ops Manager를 위해 생성하는
참고
Kubernetes Operator는
spec.statefulSet.spec.template
에 제공한 필드의 유효성을 검사하지 않습니다.
spec.statefulSet.spec.template.metadata
유형: 컬렉션
StatefulSet 의 Kubernetes Pods에 대한 메타데이터 MongoDB Enterprise Kubernetes Operator 가 MongoDB Ops Manager를 위해 생성하는
에 추가할
spec.statefulSet.spec.template.metadata
수 있는 필드를 검토하려면 Kubernetes 설명서를 참조하세요.
spec.statefulSet.spec.template.spec
유형: 컬렉션
Kubernetes StatefulSet MongoDB Enterprise Kubernetes Operator 의 사양 가 MongoDB Ops Manager를 위해 생성하는
에 추가할 수 있는 필드의 전체 목록을
spec.statefulSet.spec.template.spec
검토하려면 Kubernetes 설명서를 참조하세요.다음 예시
spec.statefulSet.spec.template.spec
는 MongoDB Enterprise Kubernetes Operator가 배포하는 Ops Manager container 한 개의 최소 및 최대 CPU 및 메모리 용량을 정의합니다.statefulSet: spec: template: spec: containers: - name: mongodb-ops-manager resources: requests: cpu: "0.70" memory: "6Gi" limits: cpu: "1" memory: "7000M"
spec.statefulSet.spec.template.spec.containers
유형: 컬렉션
StatefulSet 의 Kubernetes Pods에 속한 컨테이너 목록 MongoDB Enterprise Kubernetes Operator 가 MongoDB Ops Manager를 위해 생성하는
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
유형: 문자열
노드 에서 사용할 수 있어야 하는 최소 CPU 용량 Kubernetes MongoDB Ops Manager를 호스팅합니다.
요청된 값은
spec.statefulSet.spec.template.spec.containers.resources.limits.cpu
이하여야 합니다.
spec.statefulSet.spec.template.spec.containers.resources.limits.cpu
유형: 문자열
노드 의 최대 CPU 용량 MongoDB Ops Manager를 호스팅하기 위해 생성됩니다. 생략하면 이 값은
spec.statefulSet.spec.template.spec.containers.resources.requests.cpu
로 설정됩니다.
spec.statefulSet.spec.template.spec.containers.resources.requests.memory
유형: 문자열
Kubernetes 노드 Kubernetes 에서 사용할 수 있어야 하는 최소 메모리 용량 에서 MongoDB Ops Manager를 호스팅합니다. 이 값은 JEDEC 표기법으로 정수와 그 뒤에 오는 메모리 단위로 표현됩니다.
예시
Kubernetes의 Ops Manager에 6기가바이트의 메모리가 필요한 경우 이 값을
6Gi
로 설정합니다.참고
MongoDB는 이 값을 최소
5Gi
이상으로 설정할 것을 권장합니다.요청된 값은
spec.statefulSet.spec.template.spec.containers.resources.limits.memory
이하여야 합니다.
spec.statefulSet.spec.template.spec.containers.resources.limits.memory
유형: 문자열
노드 의 최대 메모리 용량 MongoDB Ops Manager를 호스팅하기 위해 생성됩니다. 생략하면 이 값은
spec.statefulSet.spec.template.spec.containers.resources.requests.memory
로 설정됩니다.Kubernetes Operator는 컨테이너의 메모리를 기반으로 Java 힙 크기에 대한 매개변수를 계산하고 설정합니다.
경고
이 값을 32GB 미만으로 제한
이 값을 32GB(
32Gi
)보다 큰 값으로 설정하면 백업 서비스에 문제가 발생할 수 있습니다. 과도한 힙은 Ops Manager에서 예기치 않은 결과를 초래할 수 있습니다.
외부 연결 설정
이 섹션에서는 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 노출합니다.
이
spec.externalConnectivity.type
있는 경우 필수 입니다.허용되는 값은
LoadBalancer
및NodePort
입니다. cloud 공급자가 지원하는 경우LoadBalancer
를 사용하는 것이 좋습니다. 로컬 배포에는NodePort
을 사용합니다.
spec.externalConnectivity.port
유형: integer
Kubernetes 서비스가 Ops Manager 애플리케이션을 노출하여 외부 트래픽에 사용해야 하는 포트를 나타내는 값입니다.
spec.externalConnectivity.type
이NodePort
인 경우:Kubernetes 서비스는 이 포트를 통해 Ops Manager 애플리케이션을 외부 트래픽에 노출합니다.
spec.externalConnectivity.port
값을 제공하지 않으면 Kubernetes 서비스는 기본 범위30000
~32767
에서 무작위로 선택된 사용 가능한 포트에서 트래픽을 MongoDB Ops Manager 애플리케이션으로 라우팅합니다.참고
이 포트를 통한 트래픽을 허용하도록 네트워크 방화벽을 구성해야 합니다.
spec.externalConnectivity.type
이LoadBalancer
인 경우:클라우드 공급자가 생성하는 밸런서 리소스는 이 포트를 통해 Ops Manager 애플리케이션을 노출합니다.
spec.externalConnectivity.port
값을 제공하지 않으면 Kubernetes 서비스는 기본 HTTP (8080) 또는 HTTPS(8443) 포트를 통해 MongoDB Ops Manager 애플리케이션을 외부 트래픽에 노출합니다.
spec.externalConnectivity.loadBalancerIP
유형: 문자열
Kubernetes 연산자가 생성할 때 Kubernetes 서비스가 사용하는 IP 주소
LoadBalancer
입니다.이 설정은 클라우드 제공자가 지원하고
spec.externalConnectivity.type
이LoadBalancer
인 경우에만 사용할 수 있습니다. 유형 LoadBalancer 에 대해 자세히 알아보기 Kubernetes 문서를 참조하세요.
spec.externalConnectivity.externalTrafficPolicy
유형: 문자열
Ops Manager Kubernetes 서비스에 대한 외부 트래픽에 대한 라우팅 정책입니다. 서비스는 이 설정의 값에 따라 외부 트래픽을 노드 로컬 또는 cluster 전체 엔드포인트로 라우팅합니다.
허용되는 값은
Cluster
및Local
입니다. 어떤 값이 요구 사항을 충족하는지 알아보려면 Kubernetes의 소스 IP를 참조하세요. Kubernetes 문서에서 확인 가능합니다.참고
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.kmip
유형: 객체
KMIP 백업 암호화 구성 설정을 포함하는 객체입니다. 자세히 알아보려면 운영 관리자를 위한 KMIP 백업 암호화 구성을 참조하세요.
참고
이 매개변수를 설정하는 경우
spec.credentials
값으로 연결된 API 키에Global Owner
역할이 있어야 합니다.
spec.backup.encryption.kmip.server.ca
유형: 문자열
KMIP 인증에 사용할 CA 인증서(
ca.pem
)에 대한 항목이 포함된 ConfigMap을 식별하는 사람이 읽을 수 있는 레이블입니다.
spec.backup.encryption.kmip.server.url
유형: 문자열
형식을 사용하는 KMIP 서버의URL 입니다(예:
hostname.port
192.168.1.3:5696
또는my-kmip-server.mycorp.com:5696
).
spec.backup.headDB
유형: 컬렉션
헤드 데이터베이스 에 대한 구성 설정입니다. Kubernetes Operator가 Persistent Volume Claim 을 생성합니다. 지정된 구성으로.
스칼라데이터 유형설명labelSelector
문자열
storage
문자열
마운트해야 하는 영구 볼륨 의 최소 크기입니다. 이 값은 정수 뒤에 JEDEC 표기법으로 저장 단위를 붙여 표현합니다.
기본값은
30Gi
입니다.학습 내용은 백업 디먼 하드웨어 요구 사항을 참조하세요.
예를 예시 헤드 데이터베이스 에 60 기가바이트의 저장 공간이 필요한 경우 이 값을
60Gi
로 설정하다 합니다.storageClass
문자열
영구 볼륨 클레임 에 지정된 스토리지 유형 . 이 스토리지 유형을 StorageClass 로 생성할 수 있습니다. 이 객체 에서 사용하기 전에 사양.
StorageClass 를 설정해야
reclaimPolicy
합니다. 유지할 . 이렇게 하면 영구 볼륨 클레임 이 발생할 때 데이터가 유지됩니다. 제거됩니다.
spec.backup.jvmParameters
유형: 문자열 배열
선택 사항. container를 통해 Ops Manager 백업 서비스에 전달된 JVM 매개변수입니다.
이 Kubernetes 연산자 매개변수의 기본값은 빈 목록입니다.
spec: backup: jvmParameters: ["-XX:+UseStringCache"] 경고
JVM 메모리 힙(Memory Heap) 값 변경에 대한 책임은 본인이 감수해야 합니다.
Kubernetes 연산자는 container의 메모리를 기반으로 백업 서비스의 JVM 메모리 힙 값을 계산합니다.
-Xms
및-Xmx
값을 변경하면 Ops Manager에 문제가 발생할 수 있습니다.
spec.backup.members
유형: integer
선택 사항. Kubernetes에 배포할 백업 데몬 서비스 의 수입니다. 지정하지 않으면 기본값은
1
입니다. 백업 서비스의 고가용성을 보장하려면 MongoDB 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 데이터베이스에 연결합니다.
MongoDB Ops Manager 리소스 정의에서 사용자의
name
를 지정합니다.
이 이름을 가진 MongoDB database 리소스가 존재하지 않으면
backup
리소스는Pending
상태가 됩니다. Kubernetes 연산자는 이 이름의 MongoDB database 리소스가 생성될 때까지 10초마다 재시도합니다.참고
이 설정에서 참고하는 데이터베이스 리소스에 대한 보안 변경을 수행하면 Kubernetes 연산자가 Ops Manager 리소스를 자동으로 조정하기 시작합니다. Kubernetes 연산자는 변경 사항을 기반으로 Ops Manager 구성에서
mongoURI
및ssl
플래그를 업데이트합니다.
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 사용자 리소스를 생성합니다.
MongoDB Ops Manager 리소스 정의에서 사용자의
name
를 지정합니다.
이 이름을 가진 MongoDB database 리소스가 존재하지 않으면
backup
리소스는Pending
상태가 됩니다. Kubernetes 연산자는 이 이름의 MongoDB database 리소스가 생성될 때까지 10초마다 재시도합니다.참고
이 설정에서 참고하는 데이터베이스 리소스에 대한 보안 변경을 수행하면 Kubernetes 연산자가 Ops Manager 리소스를 자동으로 조정하기 시작합니다. Kubernetes 연산자는 변경 사항을 기반으로 Ops Manager 구성에서
mongoURI
및ssl
플래그를 업데이트합니다.
spec.backup.blockStores.mongodbUserRef.name
유형: 문자열
블록 저장소 데이터베이스에서 SCRAM 인증이 활성화된 경우 필수입니다. 블록 저장소 데이터베이스에 연결하는 데 사용되는 MongoDB 사용자 리소스의 이름입니다. 이 사용자 리소스를 MongoDB Ops Manager 리소스와 동일한 네임스페이스에 다음 역할을 모두 배포합니다.
spec.backup.queryableBackupSecretRef.name
유형: 문자열
배포의 TLS 요구 사항에 따라 백업에 액세스하고 쿼리하는 데 사용할 MongoDB Ops Manager의 queryable.pem 파일이 포함된 시크릿의 이름입니다. PEM 파일에는 액세스하는 데 필요한 공개 키 인증서 및 관련 비공개 키가 포함되어 있습니다. MongoDB Ops Manager에서 백업 스냅샷에 대한 쿼리를 실행합니다. 백업을 쿼리하려면 이 매개변수의 값을 지정합니다. 설정하지 않으면 백업은 영향을 받지 않지만 쿼리할 수는 없습니다.
spec.backup.statefulSet.spec
유형: 컬렉션
StatefulSet 사양 백업 데몬 서비스를 위해 MongoDB Enterprise Kubernetes Operator가 생성하는
에 추가할 수 있는
spec.backup.statefulSet.spec
1 필드를 검토하려면 StatefulSetSpec v 앱 을 참조하세요. Kubernetes 문서에서 확인 가능합니다.
spec.backup.statefulSet.spec.template
유형: 컬렉션
템플릿 StatefulSet 의 Kubernetes Pods 백업 데몬 서비스 를 위해MongoDB Enterprise Kubernetes Operator가 생성하는
참고
Kubernetes Operator는
spec.backup.statefulSet.spec.template
에 제공한 필드의 유효성을 검사하지 않습니다.
spec.backup.statefulSet.spec.template.metadata
유형: 컬렉션
StatefulSet 의 Kubernetes Pods에 대한 메타데이터 백업 데몬서비스 를 위해 MongoDB Enterprise Kubernetes Operator가 생성하는
에 추가할
spec.backup.statefulSet.spec.template.metadata
수 있는 필드를 검토하려면 Kubernetes 설명서를 참조하세요.
spec.backup.statefulSet.spec.template.spec
유형: 컬렉션
StatefulSet 의 Kubernetes 파드 사양 백업 데몬 서비스를 위해 MongoDB Enterprise Kubernetes Operator가 생성하는
에 추가할 수 있는 필드의 전체 목록을
spec.backup.statefulSet.spec.template.spec
검토하려면 Kubernetes 설명서를 참조하세요.다음 예시
spec.backup.statefulSet.spec.template.spec
는 MongoDB Enterprise Kubernetes Operator가 배포하는 하나의 백업 데몬 서비스 컨테이너에 대한 최소 및 최대 CPU 및 메모리 용량을 정의합니다.statefulSet: spec: template: spec: containers: - name: mongodb-backup-daemon resources: requests: cpu: "0.50" memory: "4500M" limits: cpu: "1" memory: "6000M"
spec.backup.statefulSet.spec.template.spec.containers
유형: 컬렉션
StatefulSet 의 Kubernetes Pods에 속한 컨테이너 목록 백업 데몬 서비스를 위해 MongoDB Enterprise Kubernetes Operator가 생성하는
백업 데몬 서비스 컨테이너의 사양을 수정하려면 다음 예와 같이
name
필드를 사용하여 컨테이너의 정확한 이름을 제공해야 합니다.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 용량 백업 데몬 서비스를 호스팅합니다.
요청된 값은
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.cpu
이하여야 합니다.
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.cpu
유형: 문자열
노드 의 최대 CPU 용량 백업 데몬 서비스 를 호스팅하기 위해 생성됩니다. 생략하면 이 값은
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
보다 작은 값은 오류가 발생할 수 있습니다.요청된 값은
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.memory
이하여야 합니다.
spec.backup.statefulSet.spec.template.spec.containers.resources.limits.memory
유형: 문자열
노드 의 최대 메모리 용량 백업 데몬 서비스 를 호스팅하기 위해 생성됩니다. 생략하면 이 값은
spec.backup.statefulSet.spec.template.spec.containers.resources.requests.memory
로 설정됩니다.Kubernetes Operator는 컨테이너의 메모리를 기반으로 Java 힙 크기에 대한 매개변수를 계산하고 설정합니다.
경고
이 값을 32GB 미만으로 제한
이 값을 32GB(
32Gi
)보다 큰 값으로 설정하면 백업 서비스에 문제가 발생할 수 있습니다. 과도한 힙은 Ops Manager에서 예기치 않은 결과를 초래할 수 있습니다.
S3 설정
Oplog 및 백업 스냅샷을 저장하는 데 S3 를 사용하고 사용자 지정 CA 에서 발급한 키를 사용하여 TLS 로 S3 에 대한 연결을 보호하도록 Ops Manager를 구성할 수 있습니다.
사용자 지정 CA 키를 구성하려면 리소스 배포 의 TLS-Encrypted Connection (HTTPS) 탭 에 설명된 MongoDB Ops Manager 대로 애플리케이션 데이터베이스에 대해 TLS 를 구성한 ConfigMap을 사용합니다. spec.applicationDatabase.security.tls.ca
를 이 ConfigMap으로 설정합니다.
S3 와 애플리케이션 데이터베이스 모두에 TLS 를 사용하거나 S3 에만 TLS를 사용할 수 있습니다.
두 가지 모두에 TLS 를 사용하려면 ConfigMap에서 참고 동일한
ca-pem
에서 두 가지 목적에 맞는 인증서를 가져옵니다.S3 에만 TLS 를 사용하려면
spec.security.applicationDatabase.certsSecretPrefix
ConfigMap에 를 정의하지 마세요.
spec.backup.s3OpLogStores.assignmentLabels
유형: 문자열 배열
S3 oplog 저장소에 대한 할당 레이블 목록입니다. 할당 레이블을 사용하여 특정 S3 oplog 저장소가 특정 프로젝트와 연결되어 있는지 식별합니다. Kubernetes Operator를 사용하여 할당 레이블을 설정하는 경우, 할당 레이블에 대해 Kubernetes 구성 파일에서 설정한 값이 MongoDB Ops Manager UI에 정의된 값을 재정의합니다. Kubernetes Operator를 사용하여 설정하지 않은 할당 레이블은 MongoDB Ops Manager UI에 설정된 값을 계속 사용합니다.
spec.backup.s3OpLogStores.customCertificate
유형: 부울
더 이상 사용되지 않습니다. 대신
spec.backup.s3OpLogStores.customCertificateSecretRefs
을(를) 사용하세요.AppDB 인증서( )를
appdb-ca
S3 oplog 스토어의 사용자 지정 TLS 인증서로 사용할지 여부를 나타내는 플래그입니다. 기본값은False
입니다.
spec.backup.s3OpLogStores.customCertificateSecretRefs
유형: 객체 배열
Kubernetes 시크릿 을 사용하는 S3 oplog 저장소의 사용자 지정 인증서 목록 . 기본64-인코딩된 x입니다.509 인증서가 Kubernetes 시크릿 에 이미 존재해야 합니다. 키와 함께 사용되며 Java CertifcateFactory 에서 구문 분석할 수 있어야 합니다. . 하나의 시크릿 체인에 여러 인증서를 지정할 수 없습니다. 하나의 시크릿에서 체인에 여러 인증서를 지정하는 경우 Kubernetes Operator는 체인의 첫 번째 인증서만 사용합니다.
customCertificate
설정도 제공하는 경우 Kubernetes Operator는spec.applicationDatabase.security.tls.ca
를 백업용 사용자 지정 인증서로 사용합니다.목록의 각 항목은
name
및key
을 지정합니다. 여러 시크릿을 지정하는 경우 Kubernetes Operator는 지정된 시크릿에 있는 모든 인증서를 사용합니다.이 설정을 제공하지 않으면 Ops Manager는 Ops Manager에서 사용하는 JVM 기본 신뢰 저장소를 사용합니다.
spec.backup.s3OpLogStores.customCertificateSecretRefs.name
유형: 문자열
S3 oplog 저장소에 대한 사용자 지정 인증서를 사용하는 데 필요합니다. Kubernetes 시크릿 여기에는 사용자 지정 인증서가 포함되어 있습니다.
spec.configuration.mms.mongoDbUsage.defaultUsageType
유형: 문자열
Kubernetes 서비스의 기본 서버 유형입니다.
spec.backup.s3OpLogStores.customCertificateSecretRefs.key
유형: 문자열
S3 oplog 저장소에 대한 사용자 지정 인증서를 사용하는 데 필요합니다. 시크릿 의 키를 나타내는 파일 64기본 인코딩된 x를509 포함합니다. 인증서. 이 설정을 지정하지 않으면 Kubernetes Operator가 S3 oplog 저장소 백업에 사용자 지정 인증서를 활용할 수 없습니다.
spec.backup.s3OpLogStores.irsaEnabled
유형: 부울
서비스 계정에 Amazon Web Services IAM 역할을 사용할 수 있도록 하는 플래그 Amazon Web Services EKS S3 oplog 저장소를 구성합니다. 기본값은
False
입니다. Amazon Web Services EKS를 사용하지 않는 경우 이 플래그는 효과가 없습니다.False
로 설정하면 EKS의 서비스 계정에 Amazon Web Services IAM 역할을 사용하여 S3 oplog 저장소를 구성할 수 없습니다. 자세한 내용 은 EKS의 서비스 계정에 대한 IAM 역할을 참조하세요.
spec.backup.s3OpLogStores.mongodbResourceRef.name
유형: 문자열
S3 oplog 저장소의 메타데이터를 저장하기 위해 생성하는 MongoDB 데이터베이스 리소스의 이름입니다. 이 데이터베이스 리소스는 Ops Manager 리소스와 동일한 네임스페이스에 배포해야 합니다.
참고
애플리케이션 데이터베이스를 사용하여 S3 oplog 저장 에 대한 메타데이터 를 저장 하려면 이 설정을 생략합니다.
이 설정을 생략하는 경우
spec.backup.s3OpLogStores.mongodbUserRef.name
설정도 생략해야 합니다. Kubernetes Operator는SCRAM
사용자 인증을 내부적으로 처리합니다.이 데이터베이스에서
SCRAM
인증을 활성화하는 경우 다음을 수행해야 합니다.Ops Manager를 데이터베이스에 연결하는 MongoDB 사용자 리소스를 생성합니다.
MongoDB Ops Manager 리소스 정의에서 사용자의
name
를 지정합니다.
spec.backup.s3OpLogStores.mongodbUserRef.name
유형: 문자열
S3 oplog 메타데이터 를 저장 하기 위해 MongoDB database 리소스 를 만들었고 이 데이터베이스 에서 SCRAM 이 활성화된 경우 필수입니다. S3 oplog 저장 의 메타데이터 데이터베이스 에 연결하는 데 사용되는 MongoDB 사용자 리소스 의 이름입니다. 이 사용자 리소스 를 MongoDB Ops Manager 리소스 와 동일한 네임스페이스 에 다음 역할을 모두 배포합니다.
중요
일단 지정한 후에는 S3 메타데이터 oplog 스토어 사용자 이름의 이름을 편집하지 마세요.
spec.backup.s3OpLogStores.s3SecretRef.name
유형: 문자열
S3 저장소를 사용하여 oplog를 저장하는 데 필요합니다.
accessKey
및secretKey
필드가 포함된 시크릿의 이름입니다. 백업 데몬 서비스 는 이러한 필드의 값을 자격 증명으로 사용하여 Amazon Web Services S3 또는 S3호환 버킷에 액세스합니다. S3 oplog 저장소를 구성하려면 시크릿에 두 키를 모두 지정해야 합니다.
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
유형: 문자열
S3 저장소를 사용하여 oplog를 저장하는 데 필요합니다. URL 스토어를 호스팅하는 Amazon Web Services S3 버킷 또는 S3호환 버킷의 oplog 입니다.
참고
엔드포인트의 URL 에 리전이 포함되어 있지 않은 경우
s3RegionOverride
필드를 지정합니다.
spec.backup.s3OpLogStores.s3BucketName
유형: 문자열
S3 저장소를 사용하여 oplog를 저장하는 데 필요합니다. 스토어를3 호스팅하는 Amazon Web Services S 버킷 또는 S3호환 버킷의 oplog 이름입니다.
spec.backup.s3OpLogStores.s3RegionOverride
유형: 문자열
S3호환 버킷이 있는 리전입니다. 이 필드는 S3 oplog 저장소의
s3BucketEndpoint
가 리전 범위를 지원하지 않는 경우에만 사용합니다. 리전 범위 지정은 엔드포인트의 URL 에 리전이 포함되지 않는 경우를 말합니다.이 필드를 Amazon Web Services S3 버킷과 함께 사용하지 마세요. 자세한 내용은 S3 블록 저장소 구성을 참조하세요.
spec.backup.s3Stores.assignmentLabels
유형: 문자열 배열
데이터베이스 백업 스냅샷을 저장 하는 S3 또는 S3호환 버킷에 대한 할당 레이블 목록입니다. 할당 레이블을 사용하여 특정 S3 저장소가 특정 프로젝트와 연결되어 있는지 식별합니다. Kubernetes Operator를 사용하여 할당 레이블을 설정하는 경우, 할당 레이블에 대해 Kubernetes 구성 파일에서 설정한 값이 MongoDB Ops Manager UI에 정의된 값을 재정의합니다. Kubernetes Operator를 사용하여 설정하지 않은 할당 레이블은 MongoDB Ops Manager UI에 설정된 값을 계속 사용합니다.
spec.backup.s3Stores.customCertificate
유형: 부울
더 이상 사용되지 않습니다. 대신
spec.backup.s3Stores.customCertificateSecretRefs
을(를) 사용하세요.애플리케이션 데이터베이스의 인증서( )를
appdb-ca
S3 백업의 사용자 지정 TLS 인증서로 사용할지 여부를 나타내는 플래그입니다. 기본값은False
입니다.
spec.backup.s3Stores.customCertificateSecretRefs
유형: 객체 배열
Kubernetes 시크릿 을 사용하는 S 스냅샷3 저장소에 대한 사용자 지정 인증서 목록 . 기본64-인코딩된 x입니다.509 인증서가 Kubernetes 시크릿 에 이미 존재해야 합니다. 키와 함께 사용되며 Java CertifcateFactory 에서 구문 분석할 수 있어야 합니다. . 하나의 시크릿 체인에 여러 인증서를 지정할 수 없습니다. 하나의 시크릿에서 체인에 여러 인증서를 지정하는 경우 Kubernetes Operator는 체인의 첫 번째 인증서만 사용합니다.
spec.backup.s3Stores.customCertificate
설정도 제공하는 경우 Kubernetes Operator는spec.applicationDatabase.security.tls.ca
를 백업용 사용자 지정 인증서로 사용합니다.목록의 각 항목은
name
및key
을 지정합니다. 여러 시크릿을 지정하는 경우 Kubernetes Operator는 지정된 시크릿을 모두 사용합니다.이 설정을 제공하지 않으면 Kubernetes 연산자는 Ops Manager에서 백업에 사용하는 JVM 기본 신뢰 저장소를 사용합니다.
spec.backup.s3Stores.customCertificateSecretRefs.name
유형: 문자열
S3 oplog 저장소에 대한 사용자 지정 인증서를 사용하는 데 필요합니다. Kubernetes 시크릿 여기에는 사용자 지정 인증서가 포함되어 있습니다.
spec.backup.s3Stores.customCertificateSecretRefs.key
유형: 문자열
S3 oplog 저장소에 대한 사용자 지정 인증서를 사용하는 데 필요합니다. 시크릿 의 키를 나타내는 파일 64기본 인코딩된 x를509 포함합니다. 인증서. 이 설정을 지정하지 않으면 Kubernetes Operator는 S3 스냅샷 저장소에 대한 사용자 지정 인증서를 활용할 수 없으며 기본적으로 MongoDB Ops Manager에서 사용하는 기본 JVM {Java 가상 머신) 신뢰 저장소를 사용합니다.
spec.backup.s3Stores.irsaEnabled
유형: 부울
서비스 계정에 Amazon Web Services IAM 역할을 사용할 수 있도록 하는 플래그 Amazon Web Services EKS S3 스냅샷 저장소를 구성합니다. 기본값은
False
입니다. Amazon Web Services EKS를 사용하지 않는 경우 이 플래그는 효과가 없습니다.False
로 설정하면 EKS의 서비스 계정에 Amazon Web Services IAM 역할을 사용하여 S3 스냅샷 저장소를 구성할 수 없습니다. 자세한 내용 은 EKS의 서비스 계정에 대한 IAM 역할을 참조하세요.
spec.backup.s3Stores.name
유형: 문자열
S3 저장소를 사용하여 oplog를 저장하는 데 필요합니다. S3 스냅샷 저장소의 이름입니다.
중요
일단 지정한 후에는 S3 스냅샷 저장소의 이름을 편집하지 마세요. 백업에서 이전 이름을 사용하는 경우 이 변경이 실패할 가능성이 높습니다. 성공적인 변경의 결과는 예측할 수 없습니다.
spec.backup.s3Stores.mongodbResourceRef.name
유형: 문자열
S3 스냅샷 저장소의 메타데이터를 저장하기 위해 생성하는
MongoDB
리소스 또는MongoDBMultiCluster
리소스의 이름입니다. 이 데이터베이스 리소스는 Ops Manager 리소스와 동일한 네임스페이스에 배포해야 합니다.참고
애플리케이션 데이터베이스를 사용하여 S3 스냅샷 저장소 에 대한 메타데이터 를 저장 하려면 이 설정을 생략합니다.
이 설정을 생략하는 경우
spec.backup.s3Stores.mongodbUserRef.name
설정도 생략해야 합니다. Kubernetes Operator는SCRAM
사용자 인증을 내부적으로 처리합니다.이 데이터베이스에서
SCRAM
인증을 활성화하는 경우 다음을 수행해야 합니다.Ops Manager를 데이터베이스에 연결하는 MongoDB 사용자 리소스를 생성합니다.
MongoDB Ops Manager 리소스 정의에서 사용자의
name
를 지정합니다.
중요
일단 지정한 후에는 S3 스냅샷 저장소의 이름을 편집하지 마세요. 백업에서 이전 이름을 사용하는 경우 이 변경이 실패할 가능성이 높습니다. 성공적인 변경의 결과는 예측할 수 없습니다.
이 이름을 가진 MongoDB database 리소스가 존재하지 않으면
backup
리소스는Pending
상태가 됩니다. Kubernetes 연산자는 이 이름의 MongoDB database 리소스가 생성될 때까지 10초마다 재시도합니다.참고
이 설정에서 참고하는 데이터베이스 리소스에 대한 보안 변경을 수행하면 Kubernetes 연산자가 Ops Manager 리소스를 자동으로 조정하기 시작합니다. Kubernetes 연산자는 변경 사항을 기반으로 Ops Manager 구성에서
mongoURI
및ssl
플래그를 업데이트합니다.
spec.backup.s3Stores.mongodbUserRef.name
유형: 문자열
|s3|를 저장할 MongoDB database 리소스를 만든 경우 필수 이 데이터베이스에서 스냅샷 메타데이터 및 SCRAM 이 활성화되어 있어야 합니다. S3 스냅샷 저장소의 메타데이터 데이터베이스에 연결하는 데 사용되는 MongoDB 사용자 리소스의 이름입니다. 이 사용자 리소스를 MongoDB Ops Manager 리소스와 동일한 네임스페이스에 다음 역할을 모두 배포합니다.
중요
일단 지정한 후에는 S3 메타데이터 스냅샷 저장소 사용자 이름의 이름을 편집하지 마세요.
spec.backup.s3Stores.s3SecretRef.name
유형: 문자열
S3 저장 를 사용하여 백업을 활성화 하는 경우 필요합니다.
accessKey
및secretKey
필드가 포함된 시크릿의 이름입니다. 백업 데몬 서비스 는 이러한 필드의 값을 자격 증명 으로 액세스 하여 Amazon Web Services S3 또는 S3호환 버킷에 액세스합니다. 시크릿에 두 키 중 하나가 누락된 경우 S3 스냅샷 저장소 를 구성할 수 없습니다.
spec.backup.s3Stores.pathStyleAccessEnabled
유형: 부울
버킷 엔드포인트 URL의 스타일을 나타냅니다.
값설명예시true
경로 스타일 URL
s3.amazonaws.com/<bucket>
false
가상 호스트 스타일 URL
<bucket>.s3.amazonaws.com
기본값은
true
입니다.
spec.backup.s3Stores.s3BucketEndpoint
유형: 문자열
S3 저장 를 사용하여 백업을 활성화 하는 경우 필요합니다. 스냅샷URL 저장소 를 호스팅하는 Amazon Web Services S3 버킷 또는 S 호환 버킷의 입니다.3
참고
엔드포인트의 URL 에 리전이 포함되어 있지 않은 경우
s3RegionOverride
필드를 지정합니다.
spec.backup.s3Stores.s3BucketName
유형: 문자열
S3 저장소를 사용하여 백업을 활성화하는 경우 필요합니다. 스냅샷 저장소를 호스팅하는 Amazon Web Services S3 버킷 또는 S3호환 버킷의 이름입니다.
spec.backup.s3Stores.s3RegionOverride
유형: 문자열
S3호환 버킷이 있는 리전입니다. S3 스토어의
s3BucketEndpoint
가 리전 범위를 지원하지 않는 경우에만 이 필드를 사용합니다. 리전 범위 지정은 엔드포인트의 URL 에 리전이 포함되지 않는 경우를 말합니다.이 필드를 Amazon Web Services S3 버킷과 함께 사용하지 마세요. 자세한 내용은 S3 블록 저장소 구성을 참조하세요.
애플리케이션 데이터베이스 필수 설정
이 섹션에서는 를 구성하기 위해 필요한 MongoDB Ops Manager 설정 외에 사용해야 하는 설정에 대해 Ops Manager Application Database 설명합니다.
spec.applicationDatabase.version
유형: 문자열
필수. 애플리케이션 데이터베이스 에 MongoDB 설치된 MongoDB Ops Manager 버전입니다. 컨테이너 레지스트리 의 태그를 기반으로 호환되는 엔터프라이즈 MongoDB 버전을 지정해야 합니다. . 예:
6.0.0-ubi8
. Kubernetes Operator 버전 1 부터 시작됩니다.20, 태그가 더 이상-ent
로 끝나지 않습니다.중요
호환되는 MongoDB Server 버전을 선택하도록 합니다.
호환되는 버전은 MongoDB database 리소스가 사용하는 기본 이미지에 따라 다릅니다.
참고
이 값을 애플리케이션 데이터베이스용 MongoDB 의 이후 버전으로 업데이트 하는 경우, 기능 호환성 버전 은 업그레이드하려는 MongoDB 버전으로 유지되어 필요한 경우 다운그레이드할 수 있는 옵션을 제공합니다. 기능 호환성 버전 이 새 MongoDB 버전과 일치하도록 하려면
spec.applicationDatabase
아래의featureCompatibilityVersion
매개 변수를 수동으로 설정하다 해야 합니다.
애플리케이션 데이터베이스 선택적 설정
이 섹션에서는 Ops Manager Application Database 와 관련된 선택적 설정에 대해 설명합니다. 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 선택적 애플리케이션 데이터베이스 설정은 멀티 클러스터 설정을 참조하세요.
spec.applicationDatabase
유형: 컬렉션
MongoDB Ops Manager 애플리케이션 데이터베이스 리소스 정의입니다.
복제본 세트 리소스 사양의 다음 설정은 선택 사항입니다.
참고
spec.applicationDatabase.agent
및 spec.applicationDatabase.monitoringAgent
에서 자동화 및 모니터링 값을 별도로 지정하지 않는 한 spec.applicationDatabase.agent
아래의 모든 설정은 자동화 및 모니터링 모두에 적용됩니다.
spec.applicationDatabase.agent.logLevel
유형: 문자열
기본값: INFO
Pod 내부의 자동화 에이전트 로깅 수준을 구성합니다.. 허용되는 값은 다음과 같습니다.
DEBUG
INFO
WARN
ERROR
FATAL
spec.applicationDatabase.agent.<component>.logRotate
유형: 객체
구성 요소 를 다음 값 중 하나로 바꿉니다.
mongod
backupAgent
monitoringAgent
프로세스의 MongoDB 로그를 순환시키기 위한 MongoDB 구성 객체입니다. 설정을 사용하려면 호스트의 시스템 로그 시스템에 로그를 기록하는 경우 설정을 사용할
agent.<component>.logRotate
systemLog.destination
수file
없으므로 를 로 설정해야 합니다.agent.<component>.logRotate
spec.applicationDatabase.agent.mongod.logRotate.numTotal
유형: integer
기본값:
0
MongoDB Ops Manager 가 보관하는 로그 파일의 총 개수입니다. 기본값을 변경하지 않으면 MongoDB Ops Manager 는 다른
agent.<compenet>.logRotate
설정을 기반으로 로테이션을 실행합니다.
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
backupAgent
monitoringAgent
로그를 로테이션하는 경우 필수 사항입니다. MongoDB Ops Manager 가 로그 파일을 로테이션하기 전의 개별 로그 파일의 최대 크기(MB)입니다. MongoDB Ops Manager 는 로그 파일이 이
sizeThresholdMB
또는logRotate.timeThresholdHrs
제한에 지정된 값을 충족하는 경우 즉시 로그 파일을 회전합니다.
spec.applicationDatabase.agent.<component>.logRotate.timeThresholdHrs
유형: integer
구성 요소 를 다음 값 중 하나로 바꿉니다.
mongod
backupAgent
monitoringAgent
로그를 순환하는 경우 필수 사항 입니다. 다음 로테이션 전 개별 로그 파일 의 최대 기간(시간)입니다. 시간은 마지막 회전 이후의 시간입니다. MongoDB Ops Manager 는 로그 파일이
timeThresholdHrs
또는logRotate.sizeThresholdM
제한에 지정된 값을 충족하는 경우 즉시 로그 파일 을 회전합니다.
spec.applicationDatabase.agent.mongod.auditlogRotate
유형: 객체
프로세스 의 MongoDB 감사 로그를 순환시키기 위한 MongoDB 구성 객체 입니다.
spec.applicationDatabase.agent.mongod.auditlogRotate.numTotal
유형: integer
기본값:
0
MongoDB Ops Manager 가 보관하는 감사 로그 파일의 총 개수입니다. 기본값 을 변경하지 않으면 MongoDB Ops Manager 는 다른
agent.mongod.auditlogRotate
설정을 기반으로 로테이션을 실행합니다.
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
유형: 숫자
감사 로그를 순환하는 경우 필수입니다. MongoDB Ops Manager 가 로테이션하기 전 개별 감사 로그 파일 의 최대 크기(MB)입니다. MongoDB Ops Manager 는 감사 로그 파일 이
sizeThresholdMB
또는auditlogRotate.timeThresholdHrs
제한의 값에 도달하면 즉시 로테이션합니다.
spec.applicationDatabase.agent.mongod.auditlogRotate.timeThresholdHrs
유형: integer
감사 로그를 순환하는 경우 필수 입니다. 다음 로테이션 전에 개별 감사 로그 파일 의 최대 기간(단위: 시간)입니다. 시간은 마지막 회전 이후의 시간입니다. MongoDB Ops Manager 는 감사 로그 파일 이
timeThresholdHrs
또는auditlogRotate.sizeThresholdM
제한의 값에 도달하는 경우 즉시 회전합니다.
spec.applicationDatabase.agent.startupOptions
유형: 객체
시작 옵션에 대한 MongoDB 구성 객체입니다. 사용 가능한 필드는 MongoDB Agent 설정 을 참조하세요.
spec.applicationDatabase.agent.systemLog.path
유형: 문자열
기본값입니다:
/var/log/mongodb-mms-automation/mongodb.log
표준 출력이나 호스트의 syslog 가 아닌 또는 가 모든 진단 로깅 정보를 전송해야
mongod
mongos
하는 로그 파일의 경로입니다. MongoDB는 지정된 경로에 로그 파일을 생성합니다.Linux 패키지 init 스크립트는
systemLog.path
이(가) 기본값에서 변경될 것으로 예상하지 않습니다. Linux 패키지를 사용하면서systemLog.path
을(를) 변경하는 경우 자체 init 스크립트를 사용하고 내장 스크립트를 비활성화해야 합니다.
spec.applicationDatabase.agent.systemLog.logAppend
유형: 부울
기본값입니다:
false
true
,mongos
또는mongod
가mongos
또는mongod
인스턴스가 다시 시작될 때 기존 로그 파일 끝에 새 항목을 추가하는 경우. 이 옵션을 사용하지 않으면mongod
이(가) 기존 로그를 백업하고 새 파일을 만듭니다.
spec.applicationDatabase.agent.systemLog.destination
유형: 문자열
MongoDB가 모든 로그 출력을 전송하는 대상입니다.
file
또는syslog
를 지정합니다.file
을 지정하는 경우systemLog.path
도 지정해야 합니다.systemLog.path
을 지정하지 않으면 MongoDB는 모든 로그 출력을 표준 출력으로 보냅니다.경고
시스템 로그 데몬은 MongoDB가 메시지를 발행할 때가 아니라 메시지를 기록할 때 타임스탬프를 생성합니다. 이 동작은 특히 시스템 부하가 심한 경우 로그 항목에 대한 잘못된 타임스탬프를 초래할 수 있습니다. 정확한 타임스탬프를 보장하려면 프로덕션 시스템에 대해
file
옵션을 사용하는 것이 좋습니다.
spec.applicationDatabase.memberConfig
유형: 객체 배열
MongoDB Ops Manager 배포서버 서버의 각 애플리케이션 데이터베이스 복제본 세트 멤버에 대한 사양입니다.
중요
을 로
spec.topology
설정하다 한MultiCluster
경우 }spec.applicationDatabase.clusterSpecList.memberConfig
대신 을 사용합니다.spec.applicationDatabase.memberConfig
멀티 클러스터 MongoDB Ops Manager 배포서버 서버에서 Kubernetes Operator는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.priority
가1.5
인 노드는memberConfig.priority
가0.5
인 노드보다 프라이머리 노드가 될 가능성이 큽니다.memberConfig.priority
가0
인 멤버는 프라이머리가 될 수 없습니다. 자세히 알아보려면 멤버 우선순위를 참조하세요.
spec.applicationDatabase.memberConfig.tags
유형: 매핑
애플리케이션 데이터베이스 복제본 세트 의 특정 멤버에 읽기 및 쓰기 (write) 작업을 지시하기 위한 복제본 세트 태그 의 맵입니다.
spec.applicationDatabase.memberConfig.votes
유형: 숫자
애플리케이션 데이터베이스 복제본 세트 멤버가 투표 할 수 있는지 여부를 결정합니다. 멤버가 투표할 수 있도록 하려면
1
로 설정합니다. 멤버를 투표 에서 제외하려면0
로 설정합니다.
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
유형: 문자열
Kubernetes 시크릿 에 접두사로 붙일 텍스트 애플리케이션 데이터베이스의 TLS 키와 인증서가 포함된 사용자가 생성한 파일입니다.
시크릿 이름을
<prefix>-<metadata.name>-db-cert
으로 지정해야 합니다.HTTPS 를 통해 실행되도록 Ops Manager 인스턴스를 구성하는 방법을 알아보려면 Ops Manager 리소스 배포를 참조하세요.
spec.applicationDatabase.security.tls.ca
유형: 문자열
Kubernetes ConfigMap 의 이름 애플리케이션 데이터베이스의 CA 파일 이 포함되어 있습니다.
중요
사용자 지정 CA 를 사용하여
spec.applicationDatabase.security.tls.ca
애플리케이션 데이터베이스의 TLS 인증서에 서명하는 경우 이(가) 필요합니다.Kubernetes Operator를 사용하려면 ConfigMap에서 애플리케이션 데이터베이스의 인증서 이름을
ca-pem
으로 지정해야 합니다.이 섹션에서 지정된 CA 는
spec.backup.s3OpLogStores.customCertificate
또는 가3spec.backup.s3Stores.customCertificate
로 설정된true
경우 S 스토리지에 대한 사용자 지정 TLS 인증서를 구성하는 데에도 사용됩니다.이 CA 는 다음을 충족하는 인증서에 서명합니다.
애플리케이션 데이터베이스 복제본 세트 멤버가 서로 통신하는 데 사용합니다.
MongoDB Ops Manager 가 애플리케이션 데이터베이스 복제본 세트 와 통신하는 데 사용합니다.
경고
애플리케이션 데이터베이스가 다시 시작될 때 Ops Manager가 작동하지 않도록 방지하려면
downloads.mongodb.com
에서 사용자 지정 CA 파일과 전체 TLS 인증서 체인을 연결해야 합니다.
spec.applicationDatabase.security.tls.enabled
중요
spec.security.applicationDatabase.tls.enabled
은(는) 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정입니다. TLS 를 활성화하려면spec.security.applicationDatabase.certsSecretPrefix
설정에 대한 값을 제공합니다.와 애플리케이션 데이터베이스 간의 TLS 인증서를 사용하여 통신을 암호화합니다.MongoDB Ops Manager
Prometheus 설정
다음 설정은 애플리케이션 데이터베이스와 함께 Prometheus를 사용할 때 적용 됩니다.
spec.applicationDatabase.prometheus.metricsPath
유형: 문자열
기본값:
"/metrics"
선택 사항입니다. 지표 엔드포인트의 경로를 나타내는 사람이 읽을 수 있는 문자열입니다. 이 설정을 지정하지 않으면 기본값이 적용됩니다.
spec.applicationDatabase.prometheus.passwordSecretRef
유형: 객체
시크릿 의 세부 정보를포함하는 조건부 객체 기본 HTTP 인증 의 경우. 애플리케이션 데이터베이스와 함께 Prometheus를 사용하려면 이 설정을 지정해야 합니다.
spec.applicationDatabase.prometheus.passwordSecretRef.key
유형: 문자열
기본값:
"password"
선택 사항. 시크릿 의 키를 식별하는 사람이 string 읽을 수 있는 기본 인증을 위한 비밀번호를 HTTP 저장합니다. 이 설정을 지정하지 않으면 기본값이 적용됩니다.
spec.applicationDatabase.prometheus.passwordSecretRef.name
유형: 문자열
조건부
시크릿 을 식별하는 인간 판독 가능 레이블 기본 HTTP 인증 을 위한 비밀번호가 포함되어 있습니다. 애플리케이션 데이터베이스와 함께 Prometheus를 사용하려면 이 설정을 지정해야 합니다.
spec.applicationDatabase.prometheus.port
유형: integer
기본값: 9216
선택 사항입니다. 지표 엔드포인트가 바인딩할 포트를 식별하는 숫자입니다. 이 설정을 지정하지 않으면 기본값이 적용됩니다.
spec.applicationDatabase.prometheus.tlseSecretKeyRef
유형: 객체
선택 사항. 시크릿 의 세부 정보가 포함된 객체 TLS 인증의 경우.
spec.applicationDatabase.prometheus.tlseSecretKeyRef.key
유형: 문자열
기본값:
"password"
선택 사항. 시크릿 의 키를 식별하는 사람이 string 읽을 수 있는 TLS 인증을 위한 비밀번호를 저장합니다. 이 설정을 지정하지 않으면 기본값이 적용됩니다.
spec.applicationDatabase.prometheus.tlseSecretKeyRef.name
유형: 문자열
조건부. 시크릿을 식별하는 인간 판독 가능 레이블 TLS 인증 을 위한 비밀번호가 포함된 . 애플리케이션 데이터베이스와 함께 Prometheus를 사용하고 TLS 인증 을 사용하려면 이 설정을 지정해야 합니다.
멀티 클러스터 설정
MongoDB Ops Manager 필수 설정
이 섹션에서는 필수 MongoDB Ops Manager 설정 외에도 멀티 클러스터 MongoDB Ops Manager 배포에 사용해야 하는 설정에 대해 설명합니다.
spec.clusterSpecList.members
유형: integer
조건부. 다중 Kubernetes 클러스터 배포서버 MongoDB Ops Manager 내 클러스터 에 있는 MongoDB 멤버의 MongoDB Ops Manager MongoDB 수입니다.
spec.topology
을MultiCluster
로 설정하다 하는 경우 이 매개 변수의 값을 지정해야 합니다. 단일 클러스터 배포의 경우 이 매개변수를 생략합니다. 이 매개 변수를 0으로 설정하다 하면 MongoDB Ops Manager 인스턴스의 다중 Kubernetes 클러스터 에 있는 멤버 클러스터 목록에서 이 MongoDB Ops Manager 멤버 클러스터 가 제거됩니다.
spec.topology
유형: 문자열
리소스에 Kubernetes 대한 배포서버 유형입니다.MongoDB Ops Manager
The values are
SingleCluster
orMultiCluster
. 생략하면 기본값은SingleCluster
입니다.MultiCluster
을 지정하는 경우:MongoDBMultiCluster
리소스를 감시 리소스 목록에 추가 합니다. 이는 Kubernetes Operator에게 다중 Kubernetes 클러스터 모드에서 작동해야 하며 다중 Kubernetes 리소스를 처리하는 데 필요한 구성 작업을 수행해야 함을 나타냅니다.와 중첩된 및
spec.clusterSpecList
spec.clusterSpecList.clusterName
spec.clusterSpecList.members
매개변수를 사용하여 를 배포 하려는 멤버 클러스터 를 하나 이상 지정합니다.MongoDB Ops ManagerMultiCluster
을 지정하면 Kubernetes Operator는spec.members
에 설정하다 한 모든 값을 무시합니다. 리소스 사양의 예시 를 참조하세요.
MongoDB Ops Manager 선택적 설정
MongoDB Ops Manager 리소스는 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 다음 설정도 사용할 수 있습니다.
spec.clusterSpecList
유형: 컬렉션
조건부. MongoDB Ops Manager 또는 백업 데몬 인스턴스를 배포하려는 다중 Kubernetes 클러스터에서 선택한Kubernetes 멤버 클러스터의 세부 정보입니다. 리소스 사양의 예도 참조하세요.
spec.topology
을MultiCluster
로 설정하다 하는 경우spec.clusterSpecList.members
값을 지정해야 합니다.spec.clusterSpecList
아래의 다른 모든 매개변수는 선택 사항입니다.spec.topology
을SingleCluster
로 설정하면 Kubernetes Operator는spec.clusterSpecList
아래의 모든 매개변수를 무시합니다.
spec.clusterSpecList.clusterName
유형: 문자열
선택 사항. 가 StatefulSet 를 예약하는 다중 Kubernetes Kubernetes 클러스터 배포서버 내 멤버 MongoDB MongoDB Enterprise Kubernetes Operator 클러스터 MongoDB Ops Manager 의 이름 또는 백업 디먼 의 경우.
spec.clusterSpecList.clusterDomain
유형: 문자열
선택 사항. 특정 MongoDB Ops Manager 멤버 클러스터에 대한
spec.clusterDomain
에 대한 재정의입니다. 이 값을 생략하면 기본값은spec.clusterDomain
에 설정된 값입니다. Kubernetes는 각 Pod 를 할당합니다.FQDN . Kubernetes Operator는 각 Pod 의 FQDN을clusterDomain
계산합니다. 제공된 값을 사용합니다. Kubernetes는 이러한 호스트 이름을 쿼리하는 API 를 제공하지 않습니다.
spec.clusterSpecList.configuration
유형: 컬렉션
선택 사항. 특정 클러스터에 대해
spec.configuration
에서 설정한 속성을 재정의하는 MongoDB Ops Manager 구성 속성입니다. 속성 이름 및 설명은 MongoDB Ops Manager 구성 설정 을 참조하세요. 각 속성은string
유형의 값을 사용합니다. 예를 들어, 이러한 속성을 설정하면 해당 특정 멤버 클러스터의 MongoDB Ops Manager 및 백업 데몬에 전달해야 하는 환경 변수를 변경할 수 있습니다.값 지정을 생략하면 기본값은
spec.configuration
에 설정된 값입니다.
spec.clusterSpecList.jvmParameters
유형: 문자열 배열
선택 사항. 이 멤버 클러스터에 대해 MongoDB Ops Manager 및 백업 데몬 인스턴스에 전달된 JVM 매개변수입니다.
이 매개 변수를 지정하면 해당 값이
spec.jvmParameters
에 지정된 값을 재정의합니다. 값의 예시는 리소스 사양의 예시를 참조하세요.이
spec.jvmParameters
MongoDB Ops Manager 매개 변수를 생략하면 이 멤버 클러스터 의 및 백업 디먼 인스턴스에 의 값이 사용됩니다.
spec.clusterSpecList.externalConnectivity
유형: 컬렉션
선택 사항. 특정 클러스터 에 대해 MongoDB Ops Manager 에 대한 외부 연결을 활성화하는 구성 객체 입니다. 이는 특정 클러스터 의
spec.externalConnectivity
에 대한 재정의입니다.이 매개변수의 값을 지정하여 MongoDB Ops Manager 애플리케이션 이 다양한 클러스터에서 외부에 노출되는 방식을 변경합니다. 예를 예시 ,MongoDB Ops Manager Kubernetes 서로 다른 cloud 제공자의 노드에 를 배포 경우, 이 매개변수에 cloud 제공자별 값을 지정해야 할 수 있습니다.
이 매개변수를 설정하면 다음과 같습니다.
Kubernetes Operator는 이 멤버 MongoDB Ops Manager 클러스터에 대해
spec.externalConnectivity
값을 사용하지 않습니다.Kubernetes Operator는 Kubernetes 서비스 를
<om-name>-svc-ext
생성합니다. (으)로 명명되었으며, 클러스터 외부에서 발생하는 트래픽이 Kubernetes 이 멤버 클러스터의 MongoDB Ops Manager 애플리케이션에 도달할 수 있도록 허용합니다.
이 매개변수를 생략하면 Kubernetes Operator는 이 멤버 클러스터에 대해
spec.externalConnectivity
의 값을 사용합니다.
spec.clusterSpecList.statefulSet.spec
유형: 컬렉션
선택 사항. StatefulSet 사양 MongoDB Enterprise Kubernetes Operator 다중 클러스터Kubernetes MongoDB Ops Manager 배포에서 특정 멤버 클러스터에 대해 생성하는 입니다. 이 매개변수는
spec.statefulSet.spec
에 대한 재정의입니다. 이를 생략하면 Kubernetes Operator가spec.statefulSet.spec
의 값을 사용합니다. 예를 들어, 이 매개변수를 사용하여 다중 Kubernetes 클러스터 MongoDB 배포에서 각 MongoDB Ops Manager 클러스터에 대해 서로 다른 스토리지 값을 지정할 수 있습니다.에 추가할 수 있는
spec.clusterSpecList.statefulSet.spec
1 필드를 검토하려면 StatefulSetSpec v 앱 을 참조하세요. Kubernetes 문서에서 확인 가능합니다.
spec.clusterSpecList[*].backup
선택 사항. 해당 특정 구성원 클러스터에 대해
spec.backup
에 지정된 값을 재정의하는 백업 설정입니다.spec.backup.enabled
이(가)true
(으)로 설정된 경우에만 이러한 값을 설정할 수 있습니다.이 매개변수에 대한 값 설정을 생략하면 기본값 은
spec.backup
아래의 설정에 지정된 값입니다.이 재정의에서는 모든 백업 설정이 지원되지 않습니다. 다음 백업 설정은
spec.backup
아래에 지정된 경우 모든 멤버 클러스터에 전역적으로 적용되므로 재정의할 수 없습니다.externalServiceEnabled
headDB
opLogStores
blockStores
s3Stores
fileSystemStores
queryableBackupSecretRef
encryption
spec.clusterSpecList[*].backup.members
유형: integer
선택 사항.
spec.backup.members
에 대한 재정의. 이 클러스터에 배포할 백업 데몬 인스턴스의 수입니다. 이 값을 생략하거나0
값을 제공하면 Kubernetes Operator는 특정 멤버 클러스터에 백업 데몬 인스턴스를 배포하지 않습니다.
spec.clusterSpecList[*].backup.assignmentLabels
유형: 문자열 배열
선택 사항.
spec.backup.assignmentLabels
에 대한 재정의. 지정된 경우 Kubernetes Operator는 특정 멤버 클러스터의 모든 백업 데몬 인스턴스에 대해 이 재정의에서 지정한 값을 사용합니다. 이 매개변수의 값을 생략하면 멤버 클러스터의 모든 백업 데몬 인스턴스에 대해spec.backup.assignmentLabels
에 지정된 값이 기본값으로 사용됩니다.
spec.clusterSpecList[*].backup.jvmParameters
유형: 문자열 배열
선택 사항.
spec.backup.jvmParameters
에 대한 재정의. 특정 멤버 클러스터의 백업 데몬 인스턴스에 대한 JVM 값을 사용자 지정할 수 있습니다.
spec.clusterSpecList[*].backup.statefulSet
유형: 문자열
선택 사항.
spec.backup.statefulSet.spec
에 대한 재정의. 특정 멤버 클러스터에서 백업 데몬의 값을 사용자 지정할 수 있습니다. 에 추가할 수 있는spec.clusterSpecList[*].backup.statefulSet
1 필드를 검토하려면 StatefulSetSpec v 앱 을 참조하세요. Kubernetes 문서에서 확인 가능합니다.
애플리케이션 데이터베이스 필수 설정
이 섹션에서는 애플리케이션 데이터베이스에 사용해야 하는 멀티 클러스터 MongoDB Ops Manager 배포와 관련된 설정에 대해 설명합니다.
spec.applicationDatabase.clusterSpecList
유형: 컬렉션
애플리케이션 데이터베이스를 호스팅하다 하는 노드 제공 을 하는 다중 Kubernetes 클러스터 MongoDB deployment 에서 선택한 Kubernetes 멤버 클러스터의 세부 정보입니다.
spec.applicationDatabase.clusterSpecList.clusterName
유형: 문자열
MongoDB Enterprise Kubernetes Operator가 StatefulSet 를 예약하는 다중 Kubernetes cluster MongoDB deployment 내 멤버 Kubernetes cluster의 이름 애플리케이션 데이터베이스의 경우.
중요
CRD에서 및 설정을 수정하여
clusterSpecList
단일 MongoDB 클러스터 MongoDB Opstopology
Manager 인스턴스를 다중 Kubernetes 클러스터 배포 인스턴스로 변환할 수 없습니다.
spec.applicationDatabase.clusterSpecList.members
유형: 숫자
지정된 멤버 클러스터에 있는 statefulSet 노드의 수입니다. 멤버 클러스터는 다중 Kubernetes 클러스터 MongoDB 배포에서 애플리케이션 데이터베이스를 호스팅하는 멤버 클러스터 중 하나입니다.
spec.applicationDatabase.topology
유형: 문자열
애플리케이션 데이터베이스에 대한 Kubernetes 배포 유형입니다.
The values are
SingleCluster
orMultiCluster
. 생략하면 기본값은SingleCluster
입니다.MultiCluster
를 지정하는 경우 멤버를 하나 이상 지정해야 합니다.clusterSpecList
,clusterName
,members
매개변수를 사용하여 애플리케이션 데이터베이스를 배포하려는 클러스터.MultiCluster
을 지정하면 Kubernetes Operator는spec.applicationDatabase.members
필드 에 설정하다 한 값을 무시합니다.
자세히 알아보려면 멀티 클러스터 리소스 사양의 예를 참조하세요.
애플리케이션 데이터베이스 선택적 설정
이 섹션에서는 애플리케이션 데이터베이스에 사용할 수 있는 멀티 클러스터 MongoDB Ops Manager 배포서버 와 관련된 설정에 대해 설명합니다.
spec.applicationDatabase.clusterSpecList.memberConfig
유형: 문자열 배열
멀티 클러스터 MongoDB Ops Manager 배포서버 의 각 애플리케이션 데이터베이스 복제본 세트 멤버에 대한 사양입니다.
중요
spec.topology
을SingleCluster
로 설정하다 한 경우spec.applicationDatabase.clusterSpecList.memberConfig
대신spec.applicationDatabase.memberConfig
을 사용 .memberConfig
목록의 요소 수는spec.applicationDatabase.clusterSpecList.members
와 같아야 합니다.memberConfig
목록의 요소 순서는 복제본 세트 의 멤버 순서를 반영해야 합니다. 예를 예시 배열 의 첫 번째 요소는 인덱스0
에서 Pod에 영향을 주고, 두 번째 요소는 인덱스1
에 영향을 줍니다.예시
애플리케이션 데이터베이스의 3개 멤버 복제본 세트 에 대한 다음 예시 사양을 살펴보세요.
spec: replicas: 3 version: 4.4.1 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.priority
가1.5
인 노드는memberConfig.priority
가0.5
인 노드보다 프라이머리 노드가 될 가능성이 큽니다.memberConfig.priority
가0
인 멤버는 프라이머리가 될 수 없습니다. 자세히 알아보려면 멤버 우선순위를 참조하세요.
spec.applicationDatabase.clusterSpecList.memberConfig.tags
유형: 매핑
애플리케이션 데이터베이스 복제본 세트 의 특정 멤버에 읽기 및 쓰기 (write) 작업을 지시하기 위한 복제본 세트 태그 의 맵입니다.
spec.applicationDatabase.clusterSpecList.memberConfig.votes
유형: 숫자
애플리케이션 데이터베이스 복제본 세트 멤버가 투표 할 수 있는지 여부를 결정합니다. 멤버가 투표할 수 있도록 하려면
1
로 설정합니다. 멤버를 투표 에서 제외하려면0
로 설정합니다.