이 튜토리얼에서는 자동화 스크립트 개발 동안 이시적 테스트 환경으로 사용할 Atlas 프로젝트와 클러스터를 생성하고 삭제하는 방법을 설명합니다. 이 워크플로를 사용하여 테스트를 마친 후 리소스를 남기지 않고 테스트 클러스터에 대해 스크립트를 검증합니다.
전제 조건
시작하기 전에 다음이 필요합니다.
Atlas user 계정.
Atlas 조직 및 해당 조직 ID. Atlas 조직 목록 Atlas CLI 명령을 사용하여 조직 ID 조회 할 수 있습니다.
Atlas CLI가 설치되고 구성되었습니다. 자세한 내용은 Atlas CLI 설치 또는 업데이트 및 Atlas CLI에서 연결을 참조하세요.
절차
임시 프로젝트, 클러스터 및 데이터베이스 사용자를 생성합니다.
다음 Atlas CLI 명령을 실행하여 테스트가 끝나면 삭제할 수 있는 테스트 환경을 만듭니다.
atlas users describe 명령을 실행하여 Atlas user ID를 반환합니다.
<userEmail>를 Atlas user 계정에 연결된 이메일 주소로 대체합니다.atlas users describe --username <userEmail> atlas projects create 명령을 실행하여 Atlas 조직에
myTempProject라는 이름의 새 프로젝트를 생성합니다.<orgId>을 조직 ID로 바꾸고<userId>를 이전 단계에서 조회한 Atlas user ID로 바꾸세요.atlas projects create myTempProject --orgId <orgId> --ownerId <userId> 응답에서 생성한 프로젝트 의 프로젝트 ID 검색합니다. 다음 예시 응답에서 프로젝트 ID
64933bde48add154124e343f입니다.Project '64933bde48add154124e343f' created. 또는 Atlas 프로젝트 list 명령을 사용하여 프로젝트 ID를 찾을 수 있습니다.
Atlas 설정 명령을 실행하여 새 프로젝트에 Atlas 클러스터와 데이터베이스 사용자를 만듭니다. 다음 명령은 AWS
US_EAST_1리전에 임시 사용자myTempUser로M10클러스터를 만듭니다.<password>을(를) 데이터베이스 사용자의 비밀번호로 바꾸고,<projectId>을(를) 생성한 프로젝트의 프로젝트 ID로 바꾸세요.중요
M10클러스터는 무료가 아닙니다. 생성한 클러스터는 삭제할 때까지 시간당 요금이 부과됩니다. Atlas 클러스터 청구에 대한 자세한 내용은 클러스터 구성 비용 문서를 참조하십시오.atlas setup --clusterName myTempCluster --provider AWS --region US_EAST_1 --tier M10 --username myTempUser --password <password> --currentIp --skipSampleData --projectId <projectId> --force Atlas가 클러스터를 생성하면 Atlas CLI는 클러스터 연결 문자열 을 제공하고
mongosh을(를) 통해 클러스터에 연결합니다.
일시 프로젝트에 대한 프로그래밍 인증을 설정합니다.
자동화 스크립트에서 Atlas CLI 명령을 실행하려면 자동화가 Atlas 제어 편면에 프로그래밍적으로 인증할 수 있는 방법이 필요합니다. 이를 수행하는 한 가지 방법은 프로젝트에 대한 서비스 계정을 만들고 자격 증명을 환경에 추가하는 것입니다.
일시 프로젝트에 대한 서비스 계정을 만듭니다.
Atlas Administration API 시작하기 의 지침에 따라 이시적 프로젝트에 대한 서비스 계정을 만듭니다. 서비스 계정의 클라이언트 ID 및 클라이언트 비밀 값을 저장합니다.
테스트 환경에 서비스 계정 자격 증명을 추가합니다.
상호 작용 인증 없이 Atlas CLI 명령을 실행하도록 스크립트를 설정하려면 테스트 환경에 서비스 계정 자격 증명을 추가해야 합니다. 이는
MONGODB_ATLAS_CLIENT_ID및MONGODB_ATLAS_CLIENT_SECRET환경 변수를 설정하거나, 테스트 환경에서atlas auth login를 실행하거나, 자격 증명을 이름이 지정된 프로필에 추가하고 스크립트의 각 Atlas CLI 명령에--profile <profileName>를 추가하여 수행할 수 있습니다.
임시 프로젝트, 클러스터 및 데이터베이스 사용자를 삭제합니다.
다음 Atlas CLI 명령을 실행하여 테스트 환경을 삭제 . 이렇게 하면 테스트를 위해 생성한 모든 리소스가 제대로 제거되고 Atlas 계정에서 요금이 발생하지 않습니다.
atlas clusters delete 명령을 실행하여 임시 클러스터 및 해당 데이터베이스 사용자를 삭제합니다.
<projectId>를 임시 프로젝트의 프로젝트 ID로 바꾸님.atlas clusters delete myTempCluster --projectId <projectId> --force atlas projects delete 명령을 실행하여 임시 프로젝트를 삭제합니다.
<projectId>를 임시 프로젝트의 프로젝트 ID로 대체합니다.atlas projects delete <projectId> --force 참고
임시 클러스터가 종료될 때까지는 임시 프로젝트를 삭제할 수 없습니다.
CANNOT_CLOSE_GROUP_ACTIVE_ATLAS_CLUSTERS이라는 오류가 발생하면 5분 기다린 후atlas projects delete명령을 다시 실행합니다.
atlas projects list 명령을 실행하여 임시 프로젝트 및 클러스터가 성공적으로 삭제되었는지 확인할 수 있습니다. 목록에서 임시 프로젝트가 누락된 경우 프로젝트와 클러스터 모두 성공적으로 삭제된 것입니다.