3장. Deployment


다음 절차에서는 Ansible 을 사용하여 인스턴스 HA를 활성화하는 것입니다. Ansible에 대한 자세한 내용은 Ansible 설명서를 참조하십시오.

3.1. 필수 Ansible 구성 파일 생성

Ansible을 통해 인스턴스 HA를 활성화하려면 인벤토리 파일SSH 인수 파일이 필요합니다. 두 파일 모두 오버클라우드에서 인스턴스 HA를 구현하는 데 필요한 Ansible 변수를 전달합니다.

인벤토리 파일

인벤토리 파일은 ansible 플레이북의 다른 대상 호스트를 나열합니다. 첫 번째 섹션은 각 노드(이름별)와 함께 각 노드, 사용자 이름, Ansible이 각 플레이북 명령에 사용해야 하는 개인 키 파일을 나열합니다. 예를 들면 다음과 같습니다.

overcloud-controller-0 ansible_host=overcloud-controller-0 ansible_user=heat-admin ansible_private_key_file=/home/stack/.ssh/id_rsa

두 번째 섹션에는 다음 제목(또는 노드 유형) 아래에 각 노드가 나열됩니다. compute,undercloud,overcloud 또는 controller.

/home/stack/hosts 라는 인벤토리 파일을 생성합니다. 다음 샘플은 이에 필요한 구문을 보여줍니다.

undercloud ansible_host=undercloud ansible_user=stack ansible_private_key_file=/home/stack/.ssh/id_rsa
overcloud-compute-1 ansible_host=overcloud-compute-1 ansible_user=heat-admin ansible_private_key_file=/home/stack/.ssh/id_rsa
overcloud-compute-0 ansible_host=overcloud-compute-0 ansible_user=heat-admin ansible_private_key_file=/home/stack/.ssh/id_rsa
overcloud-controller-2 ansible_host=overcloud-controller-2 ansible_user=heat-admin ansible_private_key_file=/home/stack/.ssh/id_rsa
overcloud-controller-1 ansible_host=overcloud-controller-1 ansible_user=heat-admin ansible_private_key_file=/home/stack/.ssh/id_rsa
overcloud-controller-0 ansible_host=overcloud-controller-0 ansible_user=heat-admin ansible_private_key_file=/home/stack/.ssh/id_rsa

[compute]
overcloud-compute-1
overcloud-compute-0

[undercloud]
undercloud

[overcloud]
overcloud-compute-1
overcloud-compute-0
overcloud-controller-2
overcloud-controller-1
overcloud-controller-0

[controller]
overcloud-controller-2
overcloud-controller-1
overcloud-controller-0

언더클라우드와 오버클라우드 모두에서 모든 호스트에 대한 전체 인벤토리를 생성하려면 다음 명령을 실행합니다.

stack@director $ tripleo-ansible-inventory --list

이 명령은 JSON 형식으로 세부적이고 업데이트된 인벤토리를 생성합니다. 자세한 내용은 Ansible Automation 실행을 참조하십시오.

SSH 인수 파일

SSH 인수 파일은 Ansible에 각 대상 호스트에서 플레이북을 실행하는 데 필요한 필수 자격 증명 및 인증 설정을 전달합니다.

다음 명령을 사용하여 SSH 인수 파일을 만듭니다( /home/stack).

stack@director $ cat /home/stack/.ssh/id_rsa.pub >> /home/stack/.ssh/authorized_keys
stack@director $ echo -e "Host undercloud\n Hostname 127.0.0.1\n IdentityFile /home/stack/.ssh/id_rsa\n User stack\n StrictHostKeyChecking no\n UserKnownHostsFile=/dev/null\n" > ssh.config.ansible
stack@director $ source /home/stack/stackrc
stack@director $ openstack server list -c Name -c Networks | awk '/ctlplane/ {print $2, $4}' | sed s/ctlplane=//g | while read node; do node_name=$(echo $node | cut -f 1 -d " "); node_ip=$(echo $node | cut -f 2 -d " "); echo -e "Host $node_name\n Hostname $node_ip\n IdentityFile /home/stack/.ssh/id_rsa\n User heat-admin\n StrictHostKeyChecking no\n UserKnownHostsFile=/dev/null\n"; done >> ssh.config.ansible

이러한 명령을 수행하면 /home/stack/ssh.config.ansible 이라는 SSH 인수 파일이 생성되고 각 오버클라우드 노드에 대한 호스트별 연결 옵션이 포함됩니다. 예를 들면 다음과 같습니다.

Host overcloud-controller-0
    Hostname 192.168.24.11
    IdentityFile /home/stack/.ssh/id_rsa
    User heat-admin
    StrictHostKeyChecking no
    UserKnownHostsFile=/dev/null
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.