Docs Menu
Docs Home
/
엔터프라이즈 Kubernetes 운영자
/ /

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

선택적 설정을 제공하려면 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.25

Kubernetes Operator가 배포하는 MongoDB 엔터프라이즈 데이터베이스 이미지에 대한가져오기 정책입니다.

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: IMAGE_PULL_POLICY
11 value: Always

애플리케이션 데이터베이스 시작 스크립트 및 준비성 프로브가 포함된 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.25 입니다.

예시

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.25

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.25 입니다.

예시

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.25

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.25 입니다.

예시

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.25

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 연산자 1.20 에서 애플리케이션 데이터베이스 이미지에 대한 컨테이너 레지스트리가 변경되었으며 이미지는 새 태그를 지정하다 접미사를 사용합니다. Kubernetes Operator를 업그레이드 하면 Kubernetes Operator가 새 컨테이너 레지스트리를 -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 연산자 1.20 에서 애플리케이션 데이터베이스 이미지에 대한 컨테이너 레지스트리가 변경되었으며 이미지는 새 태그를 지정하다 접미사를 사용합니다. Kubernetes Operator를 업그레이드 하면 Kubernetes Operator가 새 컨테이너 레지스트리를 -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

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 입니다.

예시

spec:
template:
spec:
serviceAccountName: mongodb-enterprise-operator
containers:
- name: mongodb-enterprise-operator
image: <operatorVersionUrl>
imagePullPolicy: <policyChoice>
env:
- name: OPERATOR_ENV
value: prod

Kubernetes Operator가 배포하는 MongoDB Ops Manager 이미지에 대한가져오기 정책입니다.

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.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가 이 네임스페이스 액세스 할 수 있는지 확인합니다.

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

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

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

중요

Kubernetes Operator를 배포하는 네임스페이스가 아닌 하나 이상의 네임스페이스 에 MongoDB Ops Manager 및 MongoDB 리소스를 배포하려면 MongoDB 엔터프라이즈 Kubernetes Operator 배포의 범위 설정 에서 사용해야 하는 값과 수행해야 할 추가 단계를 참조하세요.

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

예시

spec:
template:
spec:
serviceAccountName: mongodb-enterprise-operator
containers:
- name: mongodb-enterprise-operator
image: <operatorVersionUrl>
imagePullPolicy: <policyChoice>
env:
- name: WATCH_NAMESPACE
value: <testNamespace>

돌아가기

엔터프라이즈 설치 설정