2.8. Ansible을 사용하여 Grafana 암호 변경
기본적으로 대시보드에서 사용되는 Grafana의 암호는 admin
으로 설정됩니다. 이 절차를 사용하여 암호를 변경합니다.
보안상의 이유로 기본값에서 암호를 변경합니다.
사전 요구 사항
- 실행 중인 Red Hat Ceph Storage 클러스터.
- 클러스터의 모든 노드에 대한 root 액세스.
절차
선택 사항: Grafana 컨테이너가 실행 중인 노드를 모르는 경우 Ansible 호스트 파일에서
[grafana-server]
아래에 나열된 노드를/etc/ansible/hosts
에 있습니다.예제
[grafana-server] grafana
[grafana-server] grafana
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Grafana 컨테이너가 실행 중인 노드에서 암호를 변경합니다.
구문
podman exec CONTAINER_ID grafana-cli admin reset-admin-password --homepath "/usr/share/grafana" NEW_PASSWORD
podman exec CONTAINER_ID grafana-cli admin reset-admin-password --homepath "/usr/share/grafana" NEW_PASSWORD
Copy to Clipboard Copied! Toggle word wrap Toggle overflow CONTAINER_ID 를 Grafana 컨테이너의 ID로 변경합니다. NEW_PASSWORD 를 원하는 Grafana 암호로 변경합니다.
예제
podman exec 3f28b0309aee grafana-cli admin reset-admin-password --homepath "/usr/share/grafana" NewSecurePassword
[root@grafana ~]# podman exec 3f28b0309aee grafana-cli admin reset-admin-password --homepath "/usr/share/grafana" NewSecurePassword t=2020-10-29T17:45:58+0000 lvl=info msg="Connecting to DB" logger=sqlstore dbtype=sqlite3 t=2020-10-29T17:45:58+0000 lvl=info msg="Starting DB migration" logger=migrator Admin password changed successfully ✔
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Ansible 관리 노드에서
ansible-vault
를 사용하여 Grafana 암호를 암호화한 다음 암호화된 암호를group_vars/all.yml
에 추가합니다./usr/share/ceph-ansible/
디렉터리로 변경합니다.cd /usr/share/ceph-ansible/
[admin@admin ~]$ cd /usr/share/ceph-ansible/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ansible-vault
를 실행하고 새 vault 암호를 생성합니다.예제
ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault'
[admin@admin ceph-ansible]$ ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault' New Vault password:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 암호를 다시 입력하여 확인합니다.
예제
ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault'
[admin@admin ceph-ansible]$ ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault' New Vault password: Confirm New Vault password:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Grafana 암호를 입력하고 enter를 누른 다음 CTRL+D를 입력하여 항목을 완료합니다.
구문
ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault' New Vault password: Confirm New Vault password: Reading plaintext input from stdin. (ctrl-d to end input) NEW_PASSWORD
ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault' New Vault password: Confirm New Vault password: Reading plaintext input from stdin. (ctrl-d to end input) NEW_PASSWORD
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NEW_PASSWORD 를 이전에 설정한 Grafana 암호로 교체합니다.
예제
ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault'
[admin@admin ceph-ansible]$ ansible-vault encrypt_string --stdin-name 'grafana_admin_password_vault' New Vault password: Confirm New Vault password: Reading plaintext input from stdin. (ctrl-d to end input) NewSecurePassword
Copy to Clipboard Copied! Toggle word wrap Toggle overflow grafana_admin_password_vault: !vault |
로 시작하고 다음 단계에서 사용되므로 몇 줄의 숫자로 끝나는 출력을 기록해 두십시오.예제
Copy to Clipboard Copied! Toggle word wrap Toggle overflow group_vars/all.yml
을 편집하도록 를 열고 위의 출력을 파일에 붙여넣습니다.예제
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 암호화된 암호 아래에 다음과 같이 행을 추가합니다.
예제
grafana_admin_password: "{{ grafana_admin_password_vault }}"
grafana_admin_password: "{{ grafana_admin_password_vault }}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고위에 표시된 대로 자격 증명 모음 값을 Ansible 변수에 직접 할당할 때 문자열 유형을 중단하는 Ansible의 버그 로 인해 두 변수를 사용해야 합니다.
- 파일을 저장한 후 닫습니다.
ansible-playbook
을 다시 실행합니다.컨테이너 기반 배포의 경우:
예제
ansible-playbook --ask-vault-pass -v site-container.yml -i hosts
[admin@node1 ceph-ansible]$ ansible-playbook --ask-vault-pass -v site-container.yml -i hosts
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -i 호스트
는/etc/ansible/hosts
의 기본 Ansible 호스트 파일 위치를 사용하지 않는 경우에만 필요합니다.베어 메탈의 경우 RPM 기반 배포의 경우:
예제
ansible-playbook --ask-vault-pass -v site.yml -i hosts
[admin@node1 ceph-ansible]$ ansible-playbook --ask-vault-pass -v site.yml -i hosts
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -i 호스트
는/etc/ansible/hosts
의 기본 Ansible 호스트 파일 위치를 사용하지 않는 경우에만 필요합니다.