9.6. 동적 인벤토리 스크립트 실행
RHOSP(Red Hat OpenStack Platform) 환경에서 Ansible 기반 자동화를 실행할 수 있습니다. /home/stack/overcloud-deploy/<stack> 디렉터리에 있는
인벤토리 파일을 사용하여 ansible 플레이 또는 애드혹 명령을 실행합니다.
tripleo-
ansible-inventory.yaml
언더클라우드에서 Ansible 플레이북 또는 Ansible 애드혹 명령을 실행하려면 /home/stack/tripleo-deploy/undercloud/tripleo-ansible-inventory.yaml
인벤토리 파일을 사용해야 합니다.
프로세스
노드 인벤토리를 보려면 다음 Ansible ad-hoc 명령을 실행합니다.
(undercloud) $ ansible -i ./overcloud-deploy/<stack>/tripleo-ansible-inventory.yaml all --list
참고stack을 배포된 오버클라우드 스택의 이름으로 교체합니다.
환경에서 Ansible 플레이북을 실행하려면
ansible
명령을 실행하고-i
옵션을 사용하여 인벤토리 파일의 전체 경로를 포함합니다. 예를 들면 다음과 같습니다.(undercloud) $ ansible <hosts> -i ./overcloud-deploy/tripleo-ansible-inventory.yaml <playbook> <options>
&
lt;hosts
>를 사용할 호스트 유형으로 바꿉니다.-
모든 컨트롤러 노드인 경우
controller
-
모든 컴퓨팅 노드인 경우
compute
-
모든 오버클라우드 자식 노드인 경우
overcloud
. 예:controller
및compute
노드 -
모든 노드인 경우
"*"
-
모든 컨트롤러 노드인 경우
<
;options>
;를 추가 Ansible 옵션으로 바꿉니다.-
--ssh-extra-args='-o StrictHostKeyChecking=no'
옵션을 사용하여 호스트 키 검사에서 확인을 바이패스합니다. -
-u [USER]
옵션을 사용하여 Ansible 자동화를 실행하는 SSH 사용자를 변경합니다. 오버클라우드의 기본 SSH 사용자는 동적 인벤토리에서ansible_ssh_user
매개변수를 사용하여 자동으로 정의됩니다.-u
옵션은 이 매개변수를 덮어씁니다. -
-m [MODULE]
옵션을 사용하여 특정 Ansible 모듈을 사용합니다. 기본값은 Linux 명령을 실행하는command
입니다. -
-a [MODULE_ARGS]
옵션을 사용하여 선택한 모듈에 대한 인수를 정의합니다.
-
오버클라우드의 사용자 지정 Ansible 자동화는 표준 오버클라우드 스택의 일부가 아닙니다. 이후 openstack overcloud deploy
명령을 실행하면 오버클라우드 노드에서 OpenStack Platform 서비스의 Ansible 기반 설정이 재정의될 수 있습니다.