프로덕션 정보
이 페이지의 내용
GitHub에서 Atlas Kubernetes Operator 프로젝트에 액세스할 수 있습니다.
Atlas 계정
Atlas Kubernetes Operator를 배포하기 전에 Atlas 계정을 만들어야 합니다. 자세히 알아보려면 새 Atlas 계정 등록을 참조하세요.
API 키
Atlas에 대한 Atlas Kubernetes Operator 액세스 권한을 구성하려면 다음의 공개 API 키, 비공개 API 키 및 조직 ID 정보가 필요합니다.
Atlas Kubernetes Operator 가 새 Atlas 프로젝트 를 생성하도록 하려면Grant Programmatic Access to an Organization(조직에 프로그래밍 방식 액세스 권한을 부여합니다)을 클릭합니다. 조직 에서 Atlas 관리 API 에 대한 IP 액세스 목록 이 필요한 경우 API 액세스 목록도 구성해야 합니다.
중요
API 키에 Organization Project Creator 조직 역할 이상을 할당해야 합니다.
기존 Atlas 프로젝트 로 작업하려면 프로젝트에서 프로젝트액세스를 추가합니다. 조직 에서 Atlas 관리 API 에 대한 IP 액세스 목록 이 필요한 경우 API 액세스 목록도 구성해야 합니다.
중요
API 키에 Project Owner 프로젝트 역할을 할당해야 합니다.
학습 보려면 Atlas 에 대한 액세스 구성을 참조하세요.
네임스페이스
Atlas Kubernetes Operator를 배포하여 모든 네임스페이스 를 감시할 수 있습니다. Kubernetes 클러스터 또는 해당 네임스페이스 만 .
Amazon Web Services 보안 그룹
액세스 목록에 Amazon Web Services보안 그룹을 추가하려면 먼저 프로젝트에 대한 피어링을 구성 해야 합니다.VPC Amazon Web Services 보안 그룹은 임시 액세스 목록 항목으로 설정할 수 없습니다.
더 이상 사용되지 않는 구성 매개변수
다음 매개변수는 Atlas API 에서 더 이상 사용되지 않으며 Atlas Kubernetes Operator에서 지원하지 않습니다.
replicationSpec
replicationFactor
cluster 생성
새 클러스터가 는 생성되기까지는 최대 10분이 소요될 수 있습니다.
연결 문자열
연결 URL은 직접 사용할 수 없습니다. Atlas 클러스터에는 인증이 필요합니다. Kubernetes 클러스터의 애플리케이션이 Atlas 클러스터에 연결하려면 먼저 AtlasDatabaseUser
사용자 지정 리소스 를 하나 이상 생성해야 합니다. Atlas Kubernetes Operator가 생성하는 특별한 시크릿 프로젝트의 각 클러스터 및 데이터베이스 사용자 조합에 대해 Kubernetes 클러스터의 애플리케이션은 이 시크릿 을 사용할 수 있습니다. Atlas cluster에 연결합니다. AtlasDatabaseUser
사용자 지정 리소스의 spec.scopes
매개 변수는 데이터베이스 사용자를 생성하는 클러스터를 제한합니다.
연결 정보
Atlas 관리 API에 연결하기 위해 Atlas Kubernetes Operator는 다음 위치 중 하나에서 조직 ID 및 API 키를 읽습니다.
spec.connectionSecretRef.name
(AtlasProject
사용자 지정 리소스 에 지정된 경우).기본적으로 Atlas Kubernetes Operator는 동일한 네임스페이스 에 연결 비밀을
AtlasProject
유지합니다. Custom Resource(사용자 지정 리소스) . 다른 네임스페이스 에 시크릿을 저장하려면spec.connectionSecretRef.namespace
매개변수를 지정합니다.global
Atlas Kubernetes Operator 시크릿<operator-deployment-name>-api-key
( 가 지정되지 않은spec.connectionSecretRef.name
경우).
Atlas에서 리소스를 만들거나 업데이트하기 위해 Atlas Kubernetes Operator는 연결 정보를 사용하여 Atlas에 API 를 호출합니다.
참고
Atlas Kubernetes Operator가 사용자 지정 리소스를 조정하는 동안 Atlas에서 여러 API 호출을 수행하는 경우가 있습니다. 예를 들어AtlasProject
에는 일치하는 API 를 호출하기 위한 IP 액세스 목록 구성이 있습니다.
조정 중에 오류가 발생하면 status.conditions
이 오류를 반영하도록 업데이트됩니다.
예시
- lastTransitionTime: "2021-03-15T14:26:44Z" message: 'POST https://cloud.mongodb.com/api/atlas/v1.0/groups/604a47de73cd8cag77239021/accessList: 400 (request "INVALID_IP_ADDRESS_OR_CIDR_NOTATION") The address 192.0.2.1dfdfd5 must be in valid IP address or CIDR notation.' reason: ProjectIPAccessListNotCreatedInAtlas status: "False" type: IPAccessListReady
지원되는 배포 플래그
를 배포하는 경우. kubectl
을(를) 사용하는 Atlas Kubernetes Operator 다음 플래그를 추가하여 구성을 사용자 지정할 수 있습니다.
플래그 | 설명 | 기본값 |
---|---|---|
| 슬래시로 끝나는 Atlas URL 도메인 이름입니다. |
|
| 지표 엔드포인트가 바인딩되는 주소입니다. |
|
| 프로브 엔드포인트가 바인딩되는 주소입니다. |
|
| Atlas API 키가 포함된 시크릿의 이름입니다. Atlas Kubernetes Operator는 |
|
| 컨트롤러 관리자에 대한 리더 투표를 활성화할지 여부를 나타내는 플래그입니다. 리더 투표는 한 번에 하나의 컨트롤러 관리자만 활성화되도록 합니다. |
|
| 로그 항목의 중요도 또는 긴급도 수준입니다. 다음 수준 중 하나를 지정할 수 있습니다.
|
|
| 로그 기록의 형식입니다. 다음 형식 중 하나를 지정할 수 있습니다.
|
|
예시
다음 명령어는 로그 수준 error
을 사용하여 포트 :8084
에 메트릭 엔드포인트가 있는 Atlas Kubernetes Operator 1.8.2 배포를 설정합니다.
kubectl apply --metrics-bind-address :8084 \ --log-level error \ -f https://raw.githubusercontent.com/mongodb/mongodb-atlas-kubernetes/1.8.2/deploy/all-in-one.yaml