%EB%A5%BC%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%82%AC%EC%9A%A9%ED%95%A9%EB%8B%88%EA%B9%8C%3F.png)
저는 AWX(오픈 소스 Ansible Tower)를 사용하고 있으며 이를 사용하여 관리하고 싶은 클라우드 기반 Linux 머신이 2대 있습니다.
2대의 Linux 시스템에는 AWX UI의 자격 증명 섹션에 업로드한 2개의 서로 다른 개인 키가 있습니다.
이제 업로드된 개인 키를 플레이북에서 사용하거나 인벤토리 파일 중 하나의 변수로 사용하고 싶습니다.
어떻게 해야 합니까?
(redhat 기사를 봤어요.https://access.redhat.com/solutions/3332591유용할 수도 있지만 활성 RH 구독이 없으면 잠겨 있습니다.)
답변1
분명히 버전 제어에서 호스트(또는 다른 이름의 인벤토리 파일)를 사용하고 AWX의 "인벤토리" 탭에 있는 "소스" 옵션을 사용하여 해당 파일을 가져오는 방식으로 수행할 수 있습니다.
다음은 버전 제어에 있는 "hosts" 파일의 예입니다.
[jenkins_slaves]
slave1IP
slave2IP
[jenkins_master]
masterIP
[aws]
aws1IP
aws2IP
[all:vars]
ansible_user=common_user
ansible_ssh_private_key_file=/home/awx/.ssh/common_key.pem
[jenkins_slaves:vars]
ansible_user=james
ansible_ssh_private_key_file=/home/awx/.ssh/slaves_key.pem
[jenkins_master:vars]
ansible_user=bond
ansible_ssh_private_key_file=/home/awx/.ssh/master_key.pem
[aws:vars]
ansible_user=ubuntu
물론 "common_key.pem"을 버전 관리에 보관하면 안 됩니다. AWX 서버의 일부 로컬 경로에 수동으로 추가해야 합니다.