API로 자동화 비밀번호 순환
이 페이지의 내용
프로젝트의 자동화 구성을 업데이트하여 프로그래밍 방식 자동화 사용자의 비밀번호를 순환시킬 수 있습니다.
이 페이지에서는 Ops Manager API를 사용하여 자동화 사용자의 비밀번호를 순환하는 다음 프로세스에 대해 설명합니다.
auth.newAutoPwd 를 설정하고 auth.autoPwd 는 현재 비밀번호로 그대로 둡니다.
목표 상태를 기다립니다.
auth.newAutoPwd 는 auth.autoPwd 비밀번호를 자동으로 복사합니다.
auth.autoAuthMechanisms 에서 자동화를 위한 인증 메커니즘 중 하나로 SCRAM-SHA-1 또는 SCRAM-SHA-256을 포함하는 경우에만 이 옵션을 설정할 수 있습니다.
전제 조건
API 에 대한 액세스 권한이 있어야 합니다. 자세한 내용은 API 액세스 구성을 참조하세요.
API 키에는
Project Automation Admin
또는Project Owner
역할이 있어야 합니다.인증을 활성화해야 합니다.
자동화 구성 API 리소스용 변수
API 리소스는 이러한 변수 중 하나 이상을 사용합니다. 이러한 API 리소스를 호출하기 전에 이러한 변수를 원하는 값으로 바꿉니다.
이름 | 유형 | 설명 |
---|---|---|
PUBLIC-KEY | 문자열 | API 자격 증명에 대한 공개 API 키입니다. |
PRIVATE-KEY | 문자열 | API 자격 증명에 대한 비공개 API 키 입니다. |
<OpsManagerHost>:<Port> | 문자열 | Ops Manager 인스턴스의 URL 입니다. |
GROUP-ID | 문자열 | 프로젝트 설정에 있는 프로젝트의 고유 식별자입니다. |
CLUSTER-ID | 문자열 | cluster의 고유 식별자입니다. |
절차
Ops Manager에서 자동화 구성을 검색하고 유효성을 검사합니다.
AutomationConfig 리소스를 사용하여 구성을 검색합니다. 다음 명령을 실행하여 자리 표시자를 자동화 구성 API 리소스용 변수로 바꿉니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --request GET "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationConfig?pretty=true" \ --output currentAutomationConfig.json 다운로드한 자동화 구성 파일의 유효성을 검사합니다.
currentAutomationConfig.json
의version
필드와 자동화 구성 백업 파일mms-cluster-config-backup.json
의 필드를 비교합니다.version
값은 두 JSON 문서 모두에서 마지막 요소입니다. 다음의 MongoDB Agent를 실행하는 모든 호스트에서 이 파일을 찾을 수 있습니다.Linux 및 macOS:
/var/lib/mongodb-mms-automation/mms-cluster-config-backup.json
Windows:
%SystemDrive%\MMSAutomation\versions\mms-cluster-config-backup.json
version
값이 일치하면 자동화 구성 파일의 현재 버전으로 작업하고 있는 것입니다.
현재 자동화 구성 파일에서 새 자동화 구성 파일을 만듭니다.
다음 명령에서 변수를 바꾸고 실행합니다.
sed -e "/autoPwd/a\\ \"newAutoPwd\" : \"<NEW_OPS_MANAGER_AUTOMATION_PASSWORD>\"," -e 's/ "version" : <CURRENT_AUTOMATION_CONFIGURATION_VERSION>/ "version" : <NEW_AUTOMATION_CONFIGURATION_VERSION>/' currentAutomationConfig.json > modifiedAutomationConfig.json
이름 | 설명 |
---|---|
<NEW_OPS_MANAGER_AUTOMATION_PASSWORD> | 새 자동화 비밀번호를 지정합니다. |
<CURRENT_AUTOMATION_CONFIGURATION_VERSION> | 현재 자동화 버전을 지정합니다. 현재 자동화 버전을 확인하려면 자동화 구성 가져오기를 참조하세요. |
<NEW_AUTOMATION_CONFIGURATION_VERSION> | 1씩 증가된 현재 자동화 버전을 지정합니다. 예를 들어 4 의 현재 자동화 버전이 있는 경우 새 자동화 버전은 5 이어야 합니다. |
업데이트된 자동화 구성을 보냅니다.
AutomationConfig 리소스를 사용하여 업데이트된 자동화 구성을 보냅니다.
업데이트된 구성 문서가 포함된 이전 단계에서 생성된 modifiedAutomationConfig.json
파일을 가리키며 다음 명령을 실행합니다. 자리 표시자를 자동화 구성 API 리소스에 대한 변수로 바꿉니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Content-Type: application/json" --request PUT "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationConfig?pretty=true" \ --data '@modifiedAutomationConfig.json'
구성이 성공적으로 업데이트되면 API는 요청이 성공했음을 나타내는 HTTP 200 OK
상태 코드를 반환합니다.
자동화 구성이 성공적으로 업데이트되었는지 확인합니다.
Ops Manager에서 자동화 구성을 검색하고 변경 사항이 포함되어 있는지 확인합니다. 구성을 검색하려면 다음 명령을 실행하여 자리 표시자를 자동화 구성 API 리소스용 변수로 바꿉니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --request GET "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationConfig?pretty=true"
참고
Automation 버전은 자동으로 두 배로 증가합니다. 예를 들어 새 자동화 버전을 5로 푸시한 경우 모든 변경 후 새 자동화 버전은 7입니다. 자동화는 모든 managed MongoDB Server 배포에서 자동화 사용자 비밀번호를 업데이트합니다.
배포 상태를 확인하여 목표 상태에 도달했는지 확인합니다.
AutomationStatus 리소스를 사용하여 배포서버 상태를 조회합니다. 다음 명령을 실행하여 자리 표시자를 자동화 구성 API 리소스용 변수로 바꿉니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --request GET "https://<OpsManagerHost>:<Port>/api/public/v1.0/groups/{PROJECT-ID}/automationStatus?pretty=true"
processes
배열에 있는 모든 lastGoalVersionAchieved
필드의 값이 goalVersion
필드와 일치하는지 확인합니다. 배포 상태에 대해 알아보려면 최신 플랜의 자동화 상태 가져오기를 참조하세요.