모니터링되는 프로세스를 자동화에 추가
개요
MongoDB Ops Manager 자동화를 MongoDB 사용하면 MongoDB Ops Manager 콘솔에서 직접 데이터베이스를 배포, 재구성 및 업그레이드 할 수 있습니다.
MongoDB Ops Manager가 이미 MongoDB 프로세스를 모니터링하고 있는 경우 자동화에 추가할 수 있습니다.
자동화는 자동화된 관리 에 추가할 프로세스 를 호스팅하는 각 서버 에 설치하는 MongoDB Agent 에 의존합니다. MongoDB Agent는 정기적으로 MongoDB Ops Manager 를 폴링하여 목표 구성을 결정하고 필요에 따라 변경 사항을 배포 합니다.
고려 사항
자동화는 모든 MongoDB 옵션을 지원 하지 않으므로 가져오기 시도가 실패할 수 있습니다. 학습 내용은 MongoDB 설정 및 자동화 지원을 참조하세요.
인증 이 필요한 MongoDB deployment 를 추가할 때 해당 프로세스의 사용자 및 역할을 가져올 수 있습니다. 가져오는 동안 MongoDB Ops Manager 는 가져온 사용자 및 역할과 managed 사용자 및 역할 간에 발생할 수 있는 충돌을 해결하라는 메시지를 표시합니다.
가져오기 시 자동화 및 업데이트된 보안 설정
자동화에 MongoDB deployment를 추가하면 Ops Manager 프로젝트 및 MongoDB deployment의 보안 설정에 영향을 미칠 수 있습니다.
자동화를 통해 프로젝트 보안 설정이 활성화 됩니다. MongoDB 배포에 인증이 필요하지만 Ops Manager 프로젝트에 인증 설정이 활성화되어 있지 않은 경우, MongoDB 배포를 자동화에 추가하면 Ops Manager는 프로젝트의 보안 설정을 새로 가져온 배포의 보안 설정으로 업데이트합니다.
가져오기 프로세스는 현재 프로젝트의 보안 설정이 비활성화되어 있는 경우에만 Ops Manager 프로젝트의 보안 설정을 업데이트합니다. 가져오기 프로세스는 프로젝트의 보안 설정을 비활성화하거나 활성화된 인증 메커니즘을 변경하지 않습니다.
자동화는 MongoDB 사용자 및 역할을 가져옵니다. 다음 설명은 MongoDB 배포에 인증이 필요하거나 Ops Manager 프로젝트에 인증 설정이 활성화된 상황에 적용됩니다.
MongoDB 배포서버 에 사용자 또는 사용자 정의 역할이 포함된 경우, MongoDB Ops Manager 가 관리 사용자 및 역할을 가져오도록 선택할 수 있습니다. 가져온 사용자 및 역할은 MongoDB Ops Manager 프로젝트 의 모든 managed 배포에 대해 Synced 입니다.
프로젝트의 Enforce Consistent Set 값을
Yes
MongoDB Ops Manager 로 설정하다 하면 MongoDB 는 가져 오지 않은 사용자와 역할을 배포에서 삭제합니다.프로젝트의 Enforce Consistent Set 값을
No
로 설정하면 Ops Manager는 프로젝트에서 가져오지 않은 사용자 및 역할 관리를 중지합니다. 이러한 사용자와 역할은 MongoDB deployment에 남아 있습니다. 이러한 사용자와 역할을 관리하려면 MongoDB deployment에 직접 연결해야 합니다.
Ops Manager 프로젝트에서 특정 사용자 및 역할을 managed 하지 않도록 하려면 변경 사항을 확인하고 배포하기 전에 Authentication & Users 및 Authentication & Roles 페이지를 사용하여 가져오기 중에 이러한 사용자 및 역할을 제거하세요. 자세한 내용은 MongoDB 사용자 managed 또는 관리 해제를 참조하세요.
가져온 MongoDB 배포서버의
admin
데이터베이스에 이미mms-backup-agent
및mms-monitoring-agent
사용자가 있는 경우, 가져오기 프로세스에서 이러한 사용자의 역할을 Ops Manager 프로젝트에 설정된mms-backup-agent
및mms-monitoring-agent
사용자에 대한 역할로 재정의합니다.자동화는 프로젝트의 모든 배포에 적용됩니다. Ops Manager 프로젝트에서 관리하는 모든 사용자 및 역할을 포함한 프로젝트의 업데이트된 보안 설정은 가져온 MongoDB 배포를 포함하여 프로젝트의 모든 배포에 적용됩니다.
Ops Manager는 가져온 MongoDB 배포를 포함하여 새 설정으로 프로젝트의 모든 배포를 다시 시작합니다. 가져오기 후 프로젝트의 모든 배포는 다시 시작할 때 Ops Manager 자동화 키 파일을 사용합니다.
가져오는 배포는 대상 프로젝트의 기존 프로세스와 동일한 키 파일을 사용해야 하며, 그렇지 않으면 가져오기 프로세스가 진행되지 않을 수 있습니다. 자세한 내용 은 소스 및 대상 클러스터의 인증 자격 증명을 참조하세요.
프로젝트의 기존 배포에 가져온 프로세스와 다른 보안 프로필이 필요한 경우, 소스 MongoDB 배포를 가져올 수 있는 새 프로젝트를 만듭니다.
가져온 사용자의 예
다음 예시는 MongoDB 배포에 인증이 필요하거나 Ops Manager 프로젝트에 인증 설정이 활성화된 상황에 적용됩니다.
MongoDB 사용자 및 사용자 지정 역할을 가져오는 경우 Ops Manager 프로젝트가 MongoDB 배포를 관리하기 시작하면 Enforce Consistent Set 값에 관계없이 다음이 발생합니다.
Ops Manager 프로젝트는 인증을 활성화하고, 가져온 사용자 및 역할을 managed하며, 새 사용자 및 역할을 모든 managed 배포에 동기화합니다.
MongoDB deployment의 액세스 제어가 활성화되었으며 인증이 필요합니다. MongoDB deployment에는 Ops Manager 프로젝트가 managed하는 모든 사용자와 역할이 있습니다. 이러한 사용자 및 역할은
Synced
Yes
로 설정되어 있습니다.
MongoDB 사용자 및 사용자 지정 역할을 가져오지 않는 경우 Ops Manager 프로젝트가 MongoDB 배포를 managed, 다음과 같은 상황이 발생합니다.
Enforce Consistent Set 이(가) Yes
(으)로 설정하다 경우:
Ops Manager 프로젝트는 인증을 활성화하며 managed 사용자 및 역할을 변경하지 않습니다.
MongoDB deployment의 액세스 제어가 활성화되었으며 인증이 필요합니다.
Ops Manager는 가져오지 않은 MongoDB 사용자와 역할을 배포에서 삭제합니다.
MongoDB deployment에는 Ops Manager 프로젝트가 managed하는 모든 사용자와 역할이 있습니다. 이러한 사용자 및 역할은
Synced
Yes
로 설정되어 있습니다.
Enforce Consistent Set 이(가) No
(으)로 설정하다 경우:
Ops Manager 프로젝트는 인증을 활성화하며 사용자 및 역할을 포함한 보안 설정을 변경하지 않습니다.
MongoDB deployment의 액세스 제어가 활성화되었으며 인증이 필요합니다.
가져오지 않은 MongoDB 사용자 및 역할은 MongoDB deployment 에 남아 있습니다.
MongoDB 배포에는 Ops Manager 프로젝트에서 관리하는 모든 사용자와 역할이 있습니다. 이러한 사용자 및 역할은
Synced
Yes
로 설정되어 있습니다.
전제 조건
배포서버 가 배포서버 요구 사항을 충족하는지 확인합니다.
MongoDB Ops Manager 가 현재 MongoDB 프로세스를 모니터링 하고 있어야 하며, MongoDB Agent 가 실행 어야 합니다. 프로세스는 MongoDB Ops Manager Deployment 페이지에 표시되어야 합니다.
팁
다음도 참조하세요.
MongoDB Ops MongoDB MongoDB Ops Manager MongoDB Ops Manager MongoDB Manager가 MongoDB Ops Manager 현재 수행하지 않는 경우 프로세스를 자동화하고 모니터 할 활성화 하려면 기존 프로세스를 에 추가 하세요.
mongod 가 배포서버 서버에서 서비스로 활성화된 경우 재부팅 시 자동화가 아닌
systemd
가mongod
을(를) 시작하는 경합 상태가 발생할 수 있습니다. 이 문제를 방지하려면 자동화에 배포서버 를 추가하기 전에mongod
서비스가 비활성화되어 있는지 확인하십시오.mongod
서비스가 활성화되어 있는지 확인합니다.sudo systemctl is-enabled mongod.service 서비스가 활성화된 경우 비활성화합니다:
sudo systemctl disable mongod.service
Ops Manager 프로젝트에 인증 설정이 활성화되어 있지 않지만 MongoDB 프로세스에 인증이 필요한 경우, 적절한 역할이 있는 Ops Manager 프로젝트의 MongoDB Agent 사용자를 추가합니다. 가져오기 프로세스에서 사용자에게 필요한 역할이 표시됩니다. 추가된 사용자는 프로젝트의 MongoDB Agent 사용자가 됩니다.
Ops Manager 프로젝트에서 인증 설정이 활성화된 경우, Ops Manager 프로젝트의 MongoDB Agent 사용자를 MongoDB 프로세스에 추가합니다.
MongoDB Agent 사용자를 찾으려면 Deployments, Security, Users 순으로 클릭합니다.
Ops Manager 프로젝트의 MongoDB Agent 사용자에 대한 비밀번호를 찾으려면 다음 방법 중 하나를 사용합니다.
MongoDB 프로세스 추가 절차 의 단계에 따라 UI 에서 마법사를 시작합니다. Do you want to add automation to this deployment? 라고 표시된 모달에 도달하면 다음을 수행합니다.
Add Automation and Configure Authentication0}을 선택합니다.
Show Password를 클릭합니다.
자동화 구성 리소스 엔드포인트를 사용합니다.
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request GET "<host>/api/public/v1.0/groups/<Group-ID>/automationConfig" 원하는 텍스트 편집기에서
mmsConfigBackup
파일 을 열고autoPwd
값을 찾습니다.예시
MongoDB Ops Manager 프로젝트 가 사용자 이름/비밀번호 인증 을 사용하는 경우 프로젝트의 MongoDB Ops Manager MongoDB Agents 사용자
mms-automation
를 MongoDB 배포서버 의admin
데이터베이스 에 추가하여 가져옵니다.db.getSiblingDB("admin").createUser( { user: "mms-automation", pwd: <password>, roles: [ 'clusterAdmin', 'dbAdminAnyDatabase', 'readWriteAnyDatabase', 'userAdminAnyDatabase', 'restore', 'backup' ] }
MongoDB Ops Manager에서 클러스터를 추가하면 MongoDB Ops Manager가 자동으로 로그 로테이션 을 활성화하는데, 이는
mongod
또는mongos
로그에 대한 기존logRotate
구성과 충돌할 수 있습니다. 이 충돌을 방지하려면 다음을 수행합니다.가져오기 프로세스 를 수행하려면 소스 클러스터와 대상 클러스터에서 인증 자격 증명 과 키 파일이 동일해야 합니다. 학습 내용 은 소스 및 대상 클러스터의 인증 자격 증명을 참조하세요.
기존 복제본 세트를 Ops Manager로 성공적으로 가져오려면 인스턴스가 정상이어야 합니다.
절차
메시지에 따라 자동화에 배포서버 항목을 추가합니다.
MongoDB 배포서버 에 인증 이 필요하거나 MongoDB Ops Manager 프로젝트 에 인증 이 활성화되어 있는 경우,MongoDB 가 MongoDB Ops Manager 관리 의 사용자 및 역할을 가져올 수 있습니다. 가져온 사용자 및 역할은 MongoDB Ops Manager 프로젝트 의 모든 배포에 대해 Synced 이(가) 됩니다.
경고
MongoDB Ops Manager 프로젝트의 Enforce Consistent Set
값이 YES
인 경우, 가져오지 않은 모든 사용자 및 역할은 MongoDB 배포에서 삭제됩니다.
MongoDB Ops Manager 프로젝트 의 Enforce Consistent Set
값이 No
인 경우, 가져오지 않은 모든 사용자 및 역할은 MongoDB 배포서버 서버에 남아 있으며 MongoDB Ops Manager 에서 managed 하지 않습니다.
사용자 및 역할을 가져오려면 다음을 수행합니다.
MongoDB Ops Manager 가 이러한 MongoDB 사용자 및 역할을 관리 하도록 하려면 Yes, import users and roles from this deployment item 를 선택합니다.
Continue를 클릭합니다.
참고
자동화에 MongoDB Windows 서비스 추가
자동화에 Windows 서비스로 실행되는 기존 MongoDB 프로세스를 추가하는 경우 자동화는 다음을 수행합니다.
기존 서비스 중지 및 비활성화
새 서비스 생성 및 시작
병합된 사용자 및 역할에 대한 충돌을 해결합니다. (선택 사항)
MongoDB 사용자 및 역할을 가져오도록 선택했는데 이미 자동화된 배포서버 에 있는 사용자 및 역할과 하나 이상의 충돌이 발생하는 경우 사용할 사용자 및 역할 버전을 선택하라는 메시지가 표시됩니다.
올바른 사용자 또는 역할 선택합니다.
Review & Deploy를 클릭합니다.
경고
충돌을 해결하지 않기로 선택하면 현재 구성이 충돌하는 레코드를 재정의합니다. 충돌하지 않는 사용자는 나중에 가져올 수 있습니다. 자동화 된 후에는 추가된 배포서버 에 대해 새 사용자 및 역할을 만들거나 기존 사용자 및 역할을 수정할 수 있습니다.
사용자를 만들거나 수정하는 방법은 MongoDB Ops Manager 액세스 를, MongoDB Ops Manager 의 역할 목록과 정의는 MongoDB Ops Manager Ops Manager 역할을 참조하세요.