Docs Menu
Docs Home
/
Atlas Open Service 브로커
/

클라우드 공급자 및 인스턴스 크기 화이트리스트

중요

Atlas Open Service 브로커는 더 이상 사용되지 않습니다. 대신MongoDB Atlas 연산자 를 사용합니다.

Atlas Open Service 브로커와 함께 배포된 Atlas cluster에 대해 허용되는 cloud 서비스 제공자 및 인스턴스 크기 목록을 지정할 수 있습니다. 이 화이트리스트는 Atlas 클러스터를 특정 cloud 제공자 및 크기로 제한하여 비용을 제어하거나 컴플라이언스 보장하는 데 도움이 될 수 있습니다. 화이트리스트를 적용 다음 클러스터를 배포하면, 화이트리스트에 나열된 제공자와 인스턴스 크기만 서비스 카탈로그 마켓플레이스에 나타납니다.

Atlas Open Service 브로커 가 설치되어 있어야 합니다.

화이트리스트는 Atlas Open Service 브로커를 통해 생성된 Atlas cluster에만 적용됩니다. UI를 통해 동일한 프로젝트에서 생성된 Atlas 클러스터는 화이트리스트의 제한을 받지 않습니다.

언제든지 화이트리스트를 만들고 적용할 수 있습니다. 프로젝트에 기존 Atlas cluster가 있는 경우, 해당 cloud 서비스 제공자와 인스턴스 크기가 화이트리스트에 포함되어 있는지 확인하여 Atlas Open Service 브로커에 발생할 수 있는 문제를 방지하세요.

1

화이트리스트는 각 cloud 서비스 제공자에 대한 키가 포함된 JSON 객체입니다. 각 cloud 서비스 제공자 키는 해당 인스턴스 크기의 배열 을 값으로 사용합니다. 사용 가능한 인스턴스 크기 목록을 보려면 Atlas 클러스터 생성 API의 providerSettings.instanceSizeName 매개변수를 참조하세요.

  1. 원하는 텍스트 편집기를 열고 다음 키-값 쌍을 사용하여 JSON 파일을 만듭니다.

    유형
    설명

    TENANT

    문자열 배열

    공유 Atlas 테넌트에서 허용되는 인스턴스 크기의 배열입니다. 지원되는 값은 다음과 같습니다.

    • M2

    • M5

    참고

    클러스터를 배포할 때 spec.regionName 설정에 지정하는 값에 따라 클러스터가 배포되는 클라우드 제공자가 결정됩니다.

    AWS

    문자열 배열

    허용된 Amazon Web Services 인스턴스 크기의 배열입니다.

    GCP

    문자열 배열

    허용되는 Google Cloud Platform 인스턴스 크기의 배열입니다.

    AZURE

    문자열 배열

    허용되는 Microsoft Azure 인스턴스 크기의 배열입니다.

    예시

    이 예제 JSON 파일은 다음 클라우드 서비스 제공자 및 인스턴스 크기를 화이트리스트에 추가합니다.

    • 공유 Atlas 테넌트: M2M5

    • Google Cloud Platform: M10, M20M200

    • Amazon Web Services: M10, M20, M100M140

    • Microsoft Azure: M10, M20M200

    {
    "TENANT": [
    "M2",
    "M5"
    ],
    "GCP": [
    "M10",
    "M20",
    "M200"
    ],
    "AWS": [
    "M10",
    "M20",
    "M100",
    "M140"
    ],
    "AZURE": [
    "M10",
    "M20",
    "M200"
    ]
    }
  2. 이 파일을 providers-whitelist.json 으로 저장합니다.

2

configMap 리소스를 사용하여 화이트리스트 데이터를 배포에 추가합니다.

다음 명령을 호출하여 providers-whitelist.json 파일에서 providers-whitelist 이라는 configMap 리소스를 만듭니다.

kubectl create configmap providers-whitelist --from-file=providers-whitelist.json -n <NAMESPACE>
3
  1. 원하는 텍스트 편집기에서 Deployment 리소스 정의 YAML 파일을 엽니다.

    설치 튜토리얼을 수행한 경우 이 리소스는 deployment-and-service.yaml 에 정의되어 있습니다.

  2. 강조 표시된 매개변수를 복사하여 kind: Deployment 리소스 정의에 붙여넣습니다.

    이러한 매개변수는 Kubernetes ConfigMap을 지정된 경로의 볼륨으로 이 배포서버 에 마운트하도록 지시합니다.

    spec:
    template:
    spec:
    containers:
    - name: atlas-service-broker
    image: quay.io/mongodb/mongodb-atlas-service-broker:latest
    ports:
    - containerPort: 4000
    env:
    - name: BROKER_HOST
    value: 0.0.0.0
    - name: PROVIDERS_WHITELIST_FILE
    value: <PATH_TO_WHITELIST_FILE>
    volumeMounts:
    - name: <VOLUME_NAME>
    mountPath: <PATH_TO_MOUNT_VOLUME>
    volumes:
    - name: <VOLUME_NAME>
    configMap:
    name: <CONFIGMAP_NAME>
  3. 필수 설정을 구성합니다.

    설명
    예시
    spec.template.spec
    .containers.env.value

    화이트리스트 JSON 파일의 절대 경로입니다.

    /etc/config/providers-whitelist.json

    spec.template.spec
    .containers.volumeMounts.name
    Name of the volume that contains the whitelist data.
    This value must match
    spec.template.spec.volumes.name.

    config-volume

    spec.template.spec
    .containers.mountPath.value

    이 배포에서 볼륨을 마운트할 절대 경로입니다.

    /etc/config

    spec.template.spec
    .volumes.name
    Name of the volume that contains the whitelist data.
    This value must match
    spec.template.spec
    .containers.volumeMounts.name.

    config-volume

    spec.template.spec
    .volumes.configMap.name

    화이트리스트에 해당하는 configMap 의 이름입니다.

    providers-whitelist

  4. Deployment 리소스 정의를 저장합니다.

4

다음 kubectl 을 호출합니다. 명령:

kubectl apply -f <DEPLOYMENT_RESOURCE_DEFINITION>.yaml -n <NAMESPACE>

이 페이지의 내용