Docs Menu
Docs Home
/
MongoDB Enterprise Kubernetes 연산자
/ /

MongoDB 엔터프라이즈 Kubernetes Operator kubectloc 설치 설정

이 페이지의 내용

  • AGENT_IMAGE
  • APPDB_AGENT_VERSION
  • APPDB_IMAGE_REPOSITORY
  • CLUSTER_CLIENT_TIMEOUT
  • DATABASE_VERSION
  • IMAGE_PULL_POLICY
  • INIT_APPDB_IMAGE_REPOSITORY
  • INIT_APPDB_VERSION
  • INIT_DATABASE_IMAGE_REPOSITORY
  • INIT_DATABASE_VERSION
  • INIT_OPS_MANAGER_IMAGE_REPOSITORY
  • INIT_OPS_MANAGER_VERSION
  • LOG_FILE_PATH
  • MANAGED_SECURITY_CONTEXT
  • MDB_AGENT_IMAGE_REPOSITORY
  • MDB_APPDB_ASSUME_OLD_FORMAT
  • MDB_AUTOMATIC_RECOVERY_ENABLE
  • MDB_AUTOMATIC_RECOVERY_BACKOFF_TIME_S
  • MDB_DEFAULT_ARCHITECTURE
  • MDB_IMAGE_TYPE
  • MDB_WITH_AGENT_FILE_LOGGING
  • MDB_MAX_CONCURRENT_RECONCILES
  • MONGODB_Enterprise_DATABASE_IMAGE
  • OPERATOR_ENV
  • OPS_MANAGER_IMAGE_PULL_POLICY
  • OPS_MANAGER_IMAGE_REPOSITORY
  • READINESS_PROBE_LOGGER_BACKUPS
  • READINESS_PROBE_LOGGER_COMPRESS
  • READINESS_PROBE_LOGGER_MAX_SIZE
  • READINESS_PROBE_LOGGER_MAX_AGE
  • WATCH_NAMESPACE

선택적 설정을 제공하려면 Kubernetes 연산자 리포지토리를 복제한 디렉토리에서 배포 유형에 해당하는 YAML 파일을 편집합니다.

  • kubectl 을 사용하는 바닐라 Kubernetes : mongodb-enterprise.yaml

  • oc 를 사용하는 OpenShift : mongodb-enterprise-openshift.yaml

추가하려는 설정이 YAML 파일에 없는 경우 이를 spec.emplate.spec.containers.name.env에 키-값 쌍 매핑의 새 배열로 추가합니다. collection:

  • spec. Template.spec.containers.name.env.name 키 값을 설정 이름으로 설정합니다.

  • spec.sample.spec.containers.name.env.value 키의 값을 설정의 값으로 설정합니다.

컨테이너 이미지의 값을 입력하려면 컨테이너 이미지를 참조하세요.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: INIT_APPDB_IMAGE_REPOSITORY
11 value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi

Kubernetes Operator가 비정적 데이터베이스 배포를 위해 MongoDB Agent 이미지를 다운로드하는 리포지토리 의 URL 입니다. MongoDB Agent 버전을 포함합니다. 학습 보려면 컨테이너 이미지를 참조하세요.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: AGENT_IMAGE
11 value: quay.io/mongodb/mongodb-agent-ubi:<version>

애플리케이션 데이터베이스가 사용하는 MongoDB Agent가 포함된 이미지의 버전입니다.

기본값은 10.2.15.5958-1_4.2.11-ent입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: APPDB_AGENT_VERSION
11 value: 10.2.15.5958-1_4.2.11-ent

Kubernetes 연산자가 애플리케이션 데이터베이스 이미지를 다운로드하는 리포지토리의 URL 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: APPDB_IMAGE_REPOSITORY
11 value: quay.io/mongodb/mongodb-enterprise-appdb-ubi

Kubernetes Operator가 클러스터의 Kubernetes API 서버 에 연결을 시도하는 시간(초) 엔드포인트. 이 시간 제한은 다중 Kubernetes 클러스터 MongoDB 배포의 모든 Kubernetes 클러스터에 대해 설정됩니다. Kubernetes Operator가 지정된 시간 내에 Kubernetes API 서버로부터 응답을 받지 못하면 클러스터 상태를 '비정상'으로 기록합니다. 자세한 내용은 Kubernetes 클러스터 문제 해결을 참조하세요.

기본값은 10 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: CLUSTER_CLIENT_TIMEOUT
11 value: 10

Kubernetes 연산자가 배포하는 MongoDB Enterprise 데이터베이스 이미지의 버전입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: DATABASE_VERSION
11 value: 1.28

pull 정책 Kubernetes Operator가 배포하는 MongoDB Enterprise 데이터베이스 이미지의 경우.

Kubernetes 연산자는 항상, IfNotPresent, 절대 값을 허용하지 않습니다.

기본값은 항상 입니다.

애플리케이션 데이터베이스 시작 스크립트 및 준비성 프로브가 포함된 initContainer 이미지가 다운로드되는 리포지토리의 URL 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: INIT_APPDB_IMAGE_REPOSITORY
11 value: quay.io/mongodb/mongodb-enterprise-init-appdb-ubi

애플리케이션 데이터베이스 시작 스크립트 및 준비성 프로브가 포함된 initContainer 이미지의 버전입니다.

기본값은 1.28 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: INIT_APPDB_VERSION
11 value: 1.28

MongoDB Agent 시작 스크립트 및 준비성 프로브가 포함된 initContainer 이미지가 다운로드되는 리포지토리의 URL 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: INIT_DATABASE_IMAGE_REPOSITORY
11 value: quay.io/mongodb/mongodb-enterprise-init-database-ubi

MongoDB Agent 시작 스크립트 및 준비성 프로브가 포함된 initContainer 이미지의 버전입니다.

기본값은 1.28 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: INIT_DATABASE_VERSION
11 value: 1.28

Ops Manager 시작 스크립트 및 준비성 프로브가 포함된 initContainer 이미지가 다운로드되는 리포지토리의 URL 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: INIT_OPS_MANAGER_IMAGE_REPOSITORY
11 value: quay.io/mongodb/mongodb-enterprise-init-ops-manager-ubi

Ops Manager 시작 스크립트 및 준비성 프로브가 포함된 initContainer 이미지의 버전입니다.

기본값은 1.28 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: INIT_OPS_MANAGER_VERSION
11 value: 1.28

Readiness Probe에서 유지 관리하는 순환된 readiness.log 백업 파일의 경로입니다.

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

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: LOG_FILE_PATH
11 value: /var/log/mongodb-mms-automation/readiness.log

Kubernetes Operator가 Kubernetes cluster가 managed하는 securityContext 설정을 상속할지 여부를 결정하는 플래그입니다.

OpenShift 또는 제한적인 환경에서 Kubernetes Operator를 실행하려면 이 값이 true 여야 합니다.

기본값은 false 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MANAGED_SECURITY_CONTEXT
11 value: false

기본값은 true 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MANAGED_SECURITY_CONTEXT
11 value: true

Kubernetes Operator가 데이터베이스 배포를 위해 MongoDB Agent 이미지를 다운로드하는 리포지토리의 URL 입니다. 자세히 알아보려면 컨테이너 이미지를 참조하세요.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MDB_AGENT_IMAGE_REPOSITORY
11 value: quay.io/mongodb/mongodb-agent-ubi

Kubernetes Operator 1.20 에서 컨테이너 레지스트리 가 애플리케이션 데이터베이스 이미지에 대해 변경되었으며 이미지는 새 태그를 지정하다 접미사를 사용합니다. Kubernetes Operator를 업그레이드 하면 Kubernetes Operator Kubernetes 새 컨테이너 레지스트리를 -ubi8 또는 MDB_IMAGE_TYPE 또는 mongodb.imageType에 설정하다 접미사로 참조하는 모든 이미지에 대해 이전 접미사 -ent 를 자동으로 업데이트합니다.

예를 들어, Kubernetes 연산자는 quay.io/mongodb/mongodb-enterprise-server:4.4.5-entquay.io/mongodb/mongodb-enterprise-server:4.4.5-ubi8 로 변경합니다.

Kubernetes 연산자가 접미사를 자동으로 업데이트하지 않도록 하려면 MDB_APPDB_ASSUME_OLD_FORMAT 또는 mongodb.appdbAssumeOldFormattrue 로 설정합니다. 예를 들어, 자체 리포지토리에서 이 이미지를 미러링하는 경우 자동 접미사 변경을 중지할 수 있습니다.

기본값은 false 이며, 이미지 접미사를 자동으로 업데이트합니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MDB_APPDB_ASSUME_OLD_FORMAT
11 value: false

Kubernetes 연산자가 파드당 MongoDB 리소스에 대한 자동 복구를 활성화할지 여부를 결정하는 플래그입니다.

기본값은 true 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MDB_AUTOMATIC_RECOVERY_ENABLE
11 value: false

Kubernetes 연산자가 MongoDB 리소스를 자동으로 복구하기 전에 사용자 지정 리소스가 Pending 또는 Failed 상태로 유지될 수 있는 시간(초)입니다.

기본값은 1200 초(20분)입니다.

자동 복구를 비활성화하려면 MDB_AUTOMATIC_RECOVERY_ENABLE 환경 변수를 false 로 설정하다 합니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MDB_AUTOMATIC_RECOVERY_BACKOFF_TIME_S
11 value: 3600

모든 배포에서 사용하는 컨테이너 아키텍처를 결정합니다.

단일 배포서버 에 대해 정적 컨테이너를 활성화 하려면 metadata.annotations.mongodb.com/v1.architecture MongoDB 리소스 에서 를 대신 사용합니다.

기본값은 non-static입니다.

정적 컨테이너를 활성화하려면 static 으로 설정합니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MDB_DEFAULT_ARCHITECTURE
11 value: static

애플리케이션 데이터베이스 이미지의 접미사입니다.

Kubernetes Operator 1.20 에서 컨테이너 레지스트리 가 애플리케이션 데이터베이스 이미지에 대해 변경되었으며 이미지는 새 태그를 지정하다 접미사를 사용합니다. Kubernetes Operator를 업그레이드 하면 Kubernetes Operator Kubernetes 새 컨테이너 레지스트리를 -ubi8 또는 MDB_IMAGE_TYPE 또는 mongodb.imageType에 설정하다 접미사로 참조하는 모든 이미지에 대해 이전 접미사 -ent 를 자동으로 업데이트합니다.

예를 들어, Kubernetes 연산자는 quay.io/mongodb/mongodb-enterprise-server:4.4.5-entquay.io/mongodb/mongodb-enterprise-server:4.4.5-ubi8 로 변경합니다.

Kubernetes 연산자가 접미사를 자동으로 업데이트하지 않도록 하려면 MDB_APPDB_ASSUME_OLD_FORMAT 또는 mongodb.appdbAssumeOldFormattrue 로 설정합니다. 예를 들어, 자체 리포지토리에서 이 이미지를 미러링하는 경우 자동 접미사 변경을 중지할 수 있습니다.

기본값은 -ubi8입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MDB_IMAGE_TYPE
11 value: ubi8

kubectl describe 실행 때와 같이 로그 파일을 표준 출력으로 출력할지 여부를 제어합니다.

기본값은 true입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MDB_WITH_AGENT_FILE_LOGGING
11 value: true

Kubernetes Operator가 수행할 수 있는 동시 조정 프로세스의 수입니다.

예시

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - env:
7 - name: MDB_MAX_CONCURRENT_RECONCILES
8 value: "10"

Kubernetes 연산자가 배포하는 MongoDB Enterprise 데이터베이스 이미지의 URL 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: MONGODB_ENTERPRISE_DATABASE_IMAGE
11 value: quay.io/mongodb/mongodb-enterprise-database-ubi

Kubernetes 연산자 배포 환경의 레이블입니다. 이 값은 기본 시간 초과와 로깅 수준 및 형식에 영향을 줍니다.

값은 다음과 같습니다.
로그 수준이 다음으로 설정된 경우
로그 형식이 다음으로 설정된 경우
dev
debug
text
prod
정보
JSON

기본값은 prod 입니다.

pull 정책 Operator가 배포하는 MongoDB Ops Manager 이미지의 경우.Kubernetes

Kubernetes 연산자는 항상, IfNotPresent절대 값을 허용하지 않습니다.

기본값은 항상 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: OPS_MANAGER_IMAGE_PULL_POLICY
11 value: Always

Ops Manager 리소스 의 이미지가 다운로드되는 리포지토리의URL 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: OPS_MANAGER_IMAGE_REPOSITORY
11 value: quay.io/mongodb/mongodb-enterprise-ops-manager-ubi

준비성 프로브에서 유지 관리하는 순환된 readiness.log 백업 파일의 수입니다.

기본값은 5 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: READINESS_PROBE_LOGGER_BACKUPS
11 value: 1

Readiness Probe에서 유지 관리하는 순환된 readiness.log 백업 파일을 readiness.log.gz 파일로 압축할지 여부를 제어합니다.

기본값 은 false 이며, readiness.log 파일은 압축되지 않은 상태로 유지됩니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: READINESS_PROBE_LOGGER_COMPRESS
11 value: true

readiness.log 파일의 최대 크기(MB)입니다.

기본값은 100 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: READINESS_PROBE_LOGGER_MAX_SIZE
11 value: 125

파일 타임스탬프의 날짜부터 시작하여 로테이션된 readiness.log 파일을 보관할 최대 일수입니다. 0 으로 설정하면 Kubernetes Operator는 기간을 기준으로 readiness.log 파일을 제거하지 않고 대신 READINESS_PROBE_LOGGER_BACKUPS 에 따라 보존을 결정합니다.

기본값은 0 입니다.

1spec:
2 template:
3 spec:
4 serviceAccountName: mongodb-enterprise-operator
5 containers:
6 - name: mongodb-enterprise-operator
7 image: <operatorVersionUrl>
8 imagePullPolicy: <policyChoice>
9 env:
10 - name: READINESS_PROBE_LOGGER_MAX_AGE
11 value: 3

Kubernetes Operator가 MongoDB 리소스 변경 사항을 감시하는 네임스페이스입니다. 이 네임스페이스 가 기본값과 다른 경우, Kubernetes Operator ServiceAccount 가 액세스할 수 있는지 확인하세요. 이 네임스페이스.

  • 모든 네임스페이스 를 감시하려면 * 를 지정하고 ClusterRole 을 mongodb-enterprise-operator 할당합니다. Kubernetes Operator를 실행하는 데 사용하는 ServiceAccount에 추가합니다.

  • 모든 네임스페이스의 하위 집합 을 감시하려면 쉼표로 구분된 목록으로 지정하고 각 쉼표를 백슬래시로 이스케이프 처리한 다음 목록을 따옴표로 묶습니다(예: "operator.watchNamespace=ns1\,ns2".

네임스페이스의 하위 집합을 감시하는 것은 단일 Kubernetes 연산자 인스턴스가 다른 클러스터 리소스 유형을 감시하는 배포에서 유용합니다. 예를 들어, 네임스페이스의 한 하위 집합에서 MongoDB 리소스를 감시하고 네임스페이스의 다른 하위 집합에서 MongoDBMultiCluster 리소스를 감시하도록 Kubernetes 연산자를 구성할 수 있습니다. 리소스 조정 중에 경합 상태를 방지하려면 Kubernetes 연산자가 감시하려는 각 사용자 지정 리소스 유형에 대해 범위를 네임스페이스의 고유한 하위 집합으로 설정해야 합니다.

중요

하나 이상의 네임스페이스 MongoDB Ops Manager 및 리소스를 MongoDB Kubernetes 배포하려면 다음을 수행합니다. Operator를 배포하는 경우 외에 사용해야 하는 값과 수행해야 할 추가 단계는 배포의 범위 설정 을 참조하세요.MongoDB Enterprise Kubernetes Operator

기본값은 <metadata.namespace> 입니다.

돌아가기

엔터프라이즈 설치 설정