AtlasPrivateEndpoint
사용자 지정 리소스
이 페이지의 내용
AtlasPrivateEndpoint
사용자 지정 리소스 는 Atlas 프로젝트 에 대한비공개 엔드포인트를 구성합니다. 이를 통해 공용 네트워크를 통해 정보를 전송하지 않고도 cloud 제공자 를 Atlas 에 연결할 수 있습니다. 비공개 엔드포인트는 가상 네트워크에서 Atlas 로의 단방향 연결입니다.
중요
Custom Resource(사용자 정의 리소스)는 더 이상 기본적으로 객체를 삭제하지 않음
Atlas Kubernetes Operator 는 사용자 지정 리소스 구성 파일을 관리 하여 Atlas 구성을 2.0 관리하지만, Atlas Kubernetes Operator Kubernetes 에서 삭제 한 사용자 지정 리소스가 더 이상 ( 기본값) Atlas 에서 삭제되지 않습니다. 대신 Atlas Kubernetes Operator 는 Atlas 에서 해당 리소스 관리를 중지할 뿐입니다. 예를 예시 , Kubernetes 에서
AtlasProject
Custom Resource(사용자 지정 리소스)를 삭제 하면 기본값 으로 Atlas Kubernetes Operator 는 더 이상 Atlas 에서 해당 프로젝트 를 자동으로 삭제하지 않습니다. 이러한 동작 변경은 우발적이거나 예기치 않은 삭제를 방지하기 위한 것입니다. 이 동작을 Atlas Kubernetes Operator 이전에 사용된 기본값 으로 되돌리는 방법 등 학습 보세요.,2 0 새 기본값: Atlas Kubernetes Operator 의 삭제 보호 기능을 2 참조하세요.0.마찬가지로, Atlas Kubernetes Operator 를 사용하여 Kubernetes 의 Atlas 프로젝트 에서 팀을 제거 하는 경우 Atlas Kubernetes Atlas Kubernetes Operator 는 Atlas 에서 팀을 삭제 하지 않습니다.
기본값 Atlas 구성 값을 암시적으로 사용하지 않으려면 원하는 구성 세부 정보를 명시적으로 정의하세요. 경우에 따라 Atlas 기본값을 상속하면 조정 루프가 발생하여 사용자 지정 리소스 가
READY
상태 를 달성하지 못할 수 있습니다. 예를 예시AtlasDeployment
사용자 지정 리소스 에 원하는 자동 확장 동작을 명시적으로 정의하면 포함된 예시 와 같이 사용자 지정 리소스 의 정적 인스턴스 크기가 자동 확장이 활성화된 Atlas 배포서버 서버에 반복적으로 적용되지 않도록 할 수 있습니다.autoScaling: diskGB: enabled: true compute: enabled: true scaleDownEnabled: true minInstanceSize: M30 maxInstanceSize: M40
Atlas Kubernetes Operator 는 Atlas 비공개 엔드포인트 서비스 API 리소스를 사용하여 다음 작업 중 하나를 수행합니다.
새 비공개 엔드포인트 서비스를 생성합니다.
기존 비공개 엔드포인트 서비스를 업데이트합니다.
Atlas Kubernetes Operator 에서 비공개 엔드포인트 를 구현하는 방법에 학습 보려면 비공개 엔드포인트 관리를 참조하세요.
예시
기본 예시
AtlasPrivateEndpoint
다음 예시 는 my-project
프로젝트 내에서 AWS 비공개 엔드포인트를 정의하는 사용자 지정 리소스를 보여줍니다.
apiVersion: atlas.mongodb.com/v1 kind: AtlasPrivateEndpoint metadata: name: my-atlas-pe1 spec: projectRef: name: my-project namespace: my-operator-namespace provider: AWS region: us-east-1 awsConfiguration: - id: vpcpe-xyz
독립적인 CRD 예제
다음 예시 는 AtlasPrivateEndpoint
기본 예제에 정의된 동일한 비공개 엔드포인트를 정의하는 독립적인 CRD를 보여줍니다. 이 사용자 지정 리소스 정의를 사용하면 이 리소스 를 정의하는 데 사용된 동일한 Atlas Kubernetes Operator 인스턴스 에서 관리 하지 않는 프로젝트 에 이 비공개 엔드포인트를 생성할 수 있습니다. 독립적인 작업을 활성화 하려면 externalProjectRef
projectRef
대신 를 사용해야 하며,connectionSecret
이 리소스 는 상위 프로젝트 로부터 API 자격 증명 을 상속할 수 없으므로 를 직접 제공해야 합니다.
apiVersion: atlas.mongodb.com/v1 kind: AtlasPrivateEndpoint metadata: name: my-atlas-pe1 spec: atlasRef: projectID: 66e2f2b621571b7e69a89b66 credentials: name: atlas-connection-secret provider: AWS region: us-east-1 awsConfiguration: - id: vpcpe-xyz
매개변수
이 섹션에서는 사용 가능한 AtlasPrivateEndpoint
사용자 지정 리소스 매개 변수에 대해 설명합니다.
metadata.name
유형: 문자열
필수 사항
AtlasProject
Custom Resource(사용자 지정 리소스)가 이 비공개 엔드포인트를 프로젝트 에 추가하는 데 사용하는 이름입니다.
metadata.namespace
유형: 문자열
옵션
사용자 지정 리소스 를 포함하려는 이외의 네임스페이스입니다. 사용자 지정 네임스페이스 를
default
atlasPrivateEndpoint
AtlasProject
정의하는 경우 이를spec.privateEndpoint.privateEndpointRef.namespace
필드 의 Custom Resource(사용자 지정 리소스)에 추가해야 합니다.
spec.azureConfiguration.id
유형: 문자열
조건부
비공개 엔드포인트 네트워크 인터페이스의 ID 입니다. 이 매개변수는 필수이며 Azure 비공개 엔드포인트 로 제한됩니다.
spec.azureConfiguration.ipAddress
유형: 문자열
조건부
Azure VNet에 있는 비공개 엔드포인트의 IP 주소 입니다. 이 매개변수는 필수이며 Azure 비공개 엔드포인트 로 제한됩니다.
spec.connectionSecret.name
유형: 문자열
조건부
Atlas Kubernetes Operator 가 Atlas 에 연결하는 데 사용하는 조직 ID 및 API 키가 포함된 불투명 시크릿 의 이름입니다. 지정되지 않은 경우 Atlas Kubernetes Operator 는 다음 중 하나로 대체됩니다.
상위
atlasProject
의spec.connectionSecretRef.name
매개 변수기본값
global
시크릿(상위atlasProject
에 대해spec.connectionSecretRef.name
이 정의되지 않은 경우)
이 매개변수는 독립적인 CRD의 경우 필수입니다.
Atlas Kubernetes Operator는 불필요한 시크릿 을 감시하지
atlas.mongodb.com/type=credentials
않기 위해 레이블이 있는 시크릿 만 감시합니다. .다음 예시에서는 시크릿에 레이블을 지정합니다.
kubectl label secret the-user-password atlas.mongodb.com/type=credentials
spec.externalProjectRef.id
유형: 문자열
조건부
비공개 엔드포인트가 속한 프로젝트 의 ID 입니다. 기존 Atlas 프로젝트의 프로젝트 ID 를 지정해야 합니다. 이 매개변수는 다음 중 하나에서 managed 되는 프로젝트에 속하는 비공개 엔드포인트 에 필요합니다.
Atlas Kubernetes Operator 의 다른 인스턴스
Atlas Kubernetes Operator 이외의 도구
Atlas Kubernetes Operator 의 동일한 인스턴스 에서 managed 하는 프로젝트에 속한 배포서버의 경우
spec.externalProjectRef.id
을(를) 사용하지 않는 경우spec.projectRef.name
을(를) 사용하세요.비공개 엔드포인트는 하나의 프로젝트 에만 속할 수 있습니다. 여러 프로젝트에 대해 동일한 비공개 엔드포인트를 정의하려면 각 프로젝트 에 대한 사용자 지정 리소스 정의를 만듭니다.
spec.gcpConfiguration.endpoints
유형: 배열
조건부
이 엔드포인트 그룹 을 구성하는 개별 비공개 엔드포인트 의 목록입니다. 이 매개변수는 필수이며 Google Cloud 비공개 엔드포인트 로 제한됩니다.
spec.gcpConfiguration.endpoints.[n].ipAddress
유형: 문자열
조건부
지정된 Google Cloud 비공개 엔드포인트가 확인되는 IP 주소 입니다. 이 매개변수는 필수이며 Google Cloud 비공개 엔드포인트 로 제한됩니다.
spec.gcpConfiguration.endpoints.[n].name
유형: 문자열
조건부
지정된 Google Cloud 비공개 엔드포인트를 고유하게 식별하는 이름입니다. 이 매개변수는 필수이며 Google Cloud 비공개 엔드포인트 로 제한됩니다.
spec.gcpConfiguration.groupName
유형: 문자열
조건부
Google Cloud 비공개 엔드포인트 설정하다 을 고유하게 식별하는 이름입니다. 이 매개변수는 필수이며 Google Cloud 비공개 엔드포인트 로 제한됩니다.
spec.projectRef.name
유형: 문자열
조건부
비공개 엔드포인트가 속한 프로젝트 의 이름입니다. 기존 Custom
AtlasProject
Resource(사용자 지정 리소스)를 지정해야 합니다. 이 매개변수는 동일한 인스턴스 Atlas Kubernetes Operator 에서 managed 하는 프로젝트에 속한 비공개 엔드포인트 에만 적용됩니다.다음 중 하나에서 managed 되는 프로젝트에 속한 배포의 경우:
Atlas Kubernetes Operator 의 다른 인스턴스
Atlas Kubernetes Operator 이외의 도구
spec.externalProjectRef.id
을(를) 사용하세요.비공개 엔드포인트는 하나의 프로젝트 에만 속할 수 있습니다. 여러 프로젝트에 대해 동일한 비공개 엔드포인트를 정의하려면 각 프로젝트 에 대한 사용자 지정 리소스 정의를 만듭니다.
spec.projectRef.namespace
유형: 문자열
조건부
에
AtlasProject
지정된 사용자 지정 리소스가 존재하는 네임스페이스입니다.spec.projectRef.name
다음 중 하나에서 managed 되는 프로젝트에 속한 배포의 경우:
Atlas Kubernetes Operator 의 다른 인스턴스
Atlas Kubernetes Operator 이외의 도구
이 매개변수를 설정하다 하지 마세요.