4장. Director 설치

4.1. Director 설정

director 설치 프로세스에는 네트워크 구성을 결정하는 특정 설정이 필요합니다. 이 설정은 stack 사용자의 홈 디렉터리에 있는 템플릿에 undercloud.conf로 저장되어 있습니다. 다음 절차에서는 기본 템플릿을 기반으로 사용하는 방법을 설정하는 방법에 대해 설명합니다.

절차

  1. Red Hat에서는 설치에 필요한 설정을 결정하는 데 도움이 되는 기본 템플릿을 제공합니다. 이 템플릿을 stack 사용자의 홈 디렉터리에 복사합니다.

    [stack@director ~]$ cp \
      /usr/share/python-tripleoclient/undercloud.conf.sample \
      ~/undercloud.conf
  2. undercloud.conf 파일을 편집합니다. 이 파일에는 언더클라우드를 구성하는 설정이 들어 있습니다. 매개 변수를 생략하거나 주석 처리하는 경우 언더클라우드 설치에 기본값이 사용됩니다.

4.2. Director 구성 매개 변수

undercloud.conf 파일을 구성하기 위한 매개 변수 목록은 다음과 같습니다.

기본값

다음 매개 변수는 undercloud.conf 파일의 [DEFAULT] 섹션에 정의됩니다.

additional_architectures

오버클라우드에서 지원할 추가 (커널) 아키텍처 목록입니다. 현재는 ppc64le로 제한되어 있습니다.

참고

ppc64le에 대한 지원을 사용하면 ipxe_enabledFalse로 설정해야 합니다.

certificate_generation_ca
요청한 인증서에 서명하는 CA의 certmonger 닉네임입니다. generate_service_certificate 매개 변수를 설정한 경우에만 이 옵션을 사용하십시오. local CA를 선택한 경우 certmonger에서 로컬 CA 인증서를 /etc/pki/ca-trust/source/anchors/cm-local-ca.pem에 추출하고 신뢰 체인에 추가합니다.
clean_nodes
배포 중에 그리고 인트로스펙션 후에 하드 드라이브를 초기화할 것인지 여부를 정의합니다.
cleanup
임시 파일을 정리합니다. False로 설정하면 명령을 실행한 후 배포 중 사용한 임시 파일을 그대로 둡니다. 이 매개 변수는 생성된 파일을 디버깅하거나 오류가 발생한 경우 유용합니다.
container_images_file

컨테이너 이미지 정보가 포함된 Heat 환경 파일입니다. 다음 중 하나로 설정합니다.

  • 필요한 모든 컨테이너 이미지에 대한 매개 변수
  • 필요한 이미지 준비를 수행하는 ContainerImagePrepare 매개 변수입니다. 일반적으로 이 매개 변수가 포함된 파일의 이름은 containers-prepare-parameter.yaml입니다.
custom_env_files
언더클라우드 설치에 추가할 추가 환경 파일입니다.
deployment_user
언더클라우드를 설치하는 사용자입니다. 현재의 기본 사용자(stack)를 사용하려면 이 매개 변수 설정을 해제하십시오.
discovery_default_driver
자동으로 등록된 노드의 기본 드라이버를 설정합니다. enable_node_discovery를 활성화해야 하며, 드라이버를 enabled_hardware_types 목록에 포함해야 합니다.
docker_insecure_registries
docker가 사용할 수 있는 비보안 레지스트리 목록입니다. 대개 개인용 컨테이너 레지스트리와 같이 다른 소스에서 이미지를 가져오는 경우 필요합니다. 대부분의 경우 언더클라우드가 등록되어 있으면 docker에 Red Hat 컨테이너 카탈로그 또는 Satellite 서버에서 컨테이너 이미지를 가져올 수 있는 인증서가 있습니다.
docker_registry_mirror
/etc/docker/daemon.json에 설정된 옵션 registry-mirror
enable_ironic, enable_ironic_inspector, enable_mistral, enable_tempest, enable_validations, enable_zaqar
director에서 사용할 코어 서비스를 정의합니다. true로 설정하십시오.
enable_ui
director의 웹 UI 설치 여부를 정의합니다. 이 매개 변수를 사용하면 그래픽 웹 인터페이스를 통해 오버클라우드 플래닝 및 배포를 수행할 수 있습니다. UI는 undercloud_service_certificate 또는 generate_service_certificate를 사용하여 활성화된 SSL/TLS에서만 사용할 수 있습니다.
enable_node_discovery
인트로스펙션 램디스크를 PXE 부팅하는 알려지지 않은 노드를 자동으로 등록합니다. 새로운 노드는 fake_pxe 드라이버를 기본값으로 사용하지만 덮어쓸 discovery_default_driver를 설정할 수 있습니다. 또한 introspection 규칙을 사용하여 새로 등록된 노드의 드라이버 정보를 지정할 수 있습니다.
enable_novajoin
언더클라우드에서 novajoin 메타데이터 서비스 설치 여부를 정의합니다.
enable_routed_networks
라우팅된 컨트롤 플레인 네트워크에 대한 지원을 사용합니다.
enable_swift_encryption
유휴 시 Swift 암호화를 사용할지 여부입니다.
enable_telemetry
언더클라우드에 OpenStack Telemetry 서비스(ceilometer, aodh, panko, gnocchi) 설치 여부를 정의합니다. Red Hat OpenStack Platform의 Telemetry 매트릭 백엔드는 gnocchi에서 제공합니다. enable_telemetry 매개 변수를 true로 설정하면 Telemetry 서비스가 자동으로 설치 및 설정됩니다. 기본값은 false로 언더클라우드에서 Telemetry를 비활성화합니다. 이 매개 변수는 Red Hat CloudForms와 같은 매트릭 데이터를 소비하는 기타 제품을 사용하는 경우 필수입니다.
enabled_hardware_types
언더클라우드에 사용할 하드웨어 유형 목록입니다.
generate_service_certificate
언더클라우드 설치 중에 undercloud_service_certificate 매개 변수에 사용되는 SSL/TLS 인증서를 생성할지 여부를 정의합니다. 언더클라우드 설치에서 생성된 인증서 /etc/pki/tls/certs/undercloud-[undercloud_public_vip].pem을 저장합니다. certificate_generation_ca 매개 변수에 정의된 CA는 이 인증서에 서명합니다.
heat_container_image
사용할 Heat 컨테이너 이미지의 URL입니다. 설정 해제하십시오.
heat_native
네이티브 Heat 템플릿을 사용합니다. true로 설정하십시오.
hieradata_override
hieradata 덮어쓰기 파일의 경로입니다. 설정한 경우, 언더클라우드 설치 시 이 파일이 /etc/puppet/hieradata에 복사되고 계층에서 첫 번째 파일로 설정됩니다. 사용자 정의 구성을 undercloud.conf 매개 변수 외의 서비스에 제공할 때 사용합니다.
inspection_extras
검사 프로세스 중에 추가 하드웨어 컬렉션의 활성화 여부를 정의합니다. 인트로스펙션 이미지에 python-hardware 또는 python-hardware-detect 패키지가 필요합니다.
inspection_interface
director에서 노드 인트로스펙션에 사용하는 브리지입니다. 이 브리지는 director 구성으로 생성되는 사용자 정의 브리지입니다. LOCAL_INTERFACE가 이 브리지에 연결됩니다. 이 브리지를 기본 br-ctlplane으로 두십시오.
inspection_runbench
노드 인트로스펙션 중 벤치마크 집합을 실행합니다. 사용하려면 true로 설정합니다. 등록된 노드의 하드웨어를 검사할 때 벤치마크 분석을 수행하려는 경우 이 옵션이 필요합니다.
ipa_otp
언더클라우드 노드를 IPA 서버에 등록할 때 사용할 일회성 암호를 정의합니다. 이 암호는 enable_novajoin이 활성화된 경우 필요합니다.
ipxe_enabled
iPXE 또는 표준 PXE 사용 여부를 정의합니다. 기본값은 true이며, iPXE를 활성화합니다. 표준 PXE로 설정하려면 false로 설정하십시오.
local_interface

director의 프로비저닝 NIC 용으로 선택한 인터페이스로, director에서 해당 DHCP 및 PXE 부팅 서비스에 사용하는 장치이기도 합니다. 이 값을 선택한 장치로 변경하십시오. 연결된 장치를 확인하려면 ip addr 명령을 사용합니다. 예를 들면 다음은 ip addr 명령을 실행한 결과입니다.

2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 52:54:00:75:24:09 brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.178/24 brd 192.168.122.255 scope global dynamic eth0
       valid_lft 3462sec preferred_lft 3462sec
    inet6 fe80::5054:ff:fe75:2409/64 scope link
       valid_lft forever preferred_lft forever
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noop state DOWN
    link/ether 42:0b:c2:a5:c1:26 brd ff:ff:ff:ff:ff:ff

이 예에서 외부 NIC는 eth0을 사용하고, 프로비저닝 NIC는 현재 구성되지 않은 eth1을 사용합니다. 이 경우에는 local_interfaceeth1로 설정하십시오. 설정 스크립트는 이 인터페이스를 inspection_interface 매개 변수로 정의된 사용자 브리지에 연결합니다.

local_ip
director의 프로비저닝 NIC에 대해 정의된 IP 주소입니다. 이는 director에서 해당 DHCP 및 PXE 부팅 서비스에 사용하는 IP 주소이기도 합니다. 프로비저닝 네트워크에 다른 서브넷을 사용하지 않는 경우, 예를 들어 환경에서 기존 IP 주소 또는 서브넷과 충돌하는 경우 이 값을 기본 192.168.24.1/24로 남겨 두십시오.
local_mtu
local_interface에 사용할 MTU입니다.
local_subnet
PXE 부팅 및 DHCP 인터페이스에 사용되는 로컬 서브넷입니다. local_ip 주소는 이 서브넷에 존재해야 합니다. 기본값은 ctlplane-subnet입니다.
net_config_override
네트워크 설정 덮어쓰기 템플릿의 경로입니다. 설정한 경우, 언더클라우드에서 JSON 포맷 템플릿을 사용하여 네트워킹을 os-net-config로 설정합니다. 그러면 undercloud.conf에 설정된 네트워크 매개 변수를 무시합니다. /usr/share/python-tripleoclient/undercloud.conf.sample에서 예를 참조하십시오.
output_dir
출력 상태, 처리된 Heat 템플릿, Ansible 배포 파일의 디렉터리입니다.
overcloud_domain_name

오버클라우드 배포 시 사용할 DNS 도메인 이름입니다.

참고

오버클라우드 매개 변수 CloudDomain은 일치하는 값으로 설정해야 합니다.

roles_file
언더클라우드 설치에 덮어쓸 역할 파일입니다. director 설치에 기본 역할 파일이 사용되도록 설정 해제하는 것이 좋습니다.
scheduler_max_attempts
스케줄러가 인스턴스 배포를 시도하는 최대 횟수입니다. 이 수는 스케줄링할 때 잠재적인 경합 조건을 해결하기 위해 즉시 배포해야 하는 베어 메탈 노드 수보다 크거나 같게 유지합니다.
service_principal
인증서를 사용하는 서비스에 대한 Kerberos 사용자입니다. FreeIPA에서처럼 CA에 Kerberos 사용자가 필요한 경우에만 사용합니다.
subnets
프로비저닝 및 인트로스펙션(introspection)을 위해 라우팅된 네트워크 서브넷 목록입니다. 자세한 내용은 서브넷을 참조하십시오. 기본값은 ctlplane-subnet 서브넷만 포함합니다.
templates
덮어쓸 Heat 템플릿 파일입니다.
undercloud_admin_host
SSL/TLS 사용 시 director의 관리 API에 대해 정의된 IP 주소로, SSL/TLS로 관리 엔드포인트 액세스를 위한 IP 주소입니다. director 설정에 따라 이 IP 주소를 /32 넷마스크를 사용하는 라우팅된 IP 주소로 해당 소프트웨어 브리지에 연결합니다.
undercloud_debug
언더클라우드 서비스의 로그 수준을 DEBUG로 설정합니다. 활성화하려면 이 값을 true로 설정합니다.
undercloud_enable_selinux
배포 중 SELinux를 사용 또는 사용 안 함으로 설정합니다. 문제를 디버깅하는 경우 이외에는 true로 설정하는 것이 좋습니다.
undercloud_hostname
언더클라우드에 대해 정규화된 호스트 이름을 정의합니다. 설정되어 있는 경우 언더클라우드 설치 시 모든 시스템의 호스트 이름이 설정됩니다. 설정되어 있지 않은 경우 언더클라우드에서 현재 호스트 이름을 사용하지만 사용자가 모든 시스템의 호스트 이름을 적절하게 설정해야 합니다.
undercloud_log_file
언더클라우드 설치/업그레이드 로그를 저장할 로그 파일 경로입니다. 기본적으로 로그 파일은 홈 디렉터리에 있는 install-undercloud.log입니다(예: /home/stack/install-undercloud.log).
undercloud_nameservers
언더클라우드 호스트 이름 확인에 사용할 DNS 이름 서버 목록입니다.
undercloud_ntp_servers
언더클라우드의 날짜 및 시간을 동기화하는데 사용되는 네트워크 시간 프로토콜 서버의 목록입니다.
undercloud_public_host
SSL/TLS를 사용할 때 director의 공용 API에 대해 정의된 IP 주소로, SSL/TLS를 통해 외부 director 엔드포인트에 액세스하는 IP 주소입니다. director 구성은 이 IP 주소를 해당 소프트웨어 브리지에 /32 넷마스크를 사용하는 라우팅된 IP 주소로 연결합니다.
undercloud_service_certificate
OpenStack SSL/TLS 통신을 위한 인증서 위치 및 파일 이름입니다. 이 인증서를 신뢰할 수 있는 인증 기관에서 가져오는 것이 가장 좋습니다. 그렇지 않을 경우에는 자체 서명된 인증서를 생성하십시오. 이러한 지침에는 자체 서명된 인증서이든 또는 인증 기관에서 서명한 인증서이든 관계없이 인증서의 SELinux 컨텍스트를 설정하는 방법이 포함되어 있습니다.
undercloud_update_packages
언더클라우드 설치 중 패키지 업데이트 여부를 정의합니다.

서브넷

각 프로비저닝 서브넷은 undercloud.conf 파일에서 이름이 지정된 섹션입니다. 예를 들어 ctlplane-subnet이라는 서브넷을 생성하는 방법은 다음과 같습니다.

[ctlplane-subnet]
cidr = 192.168.24.0/24
dhcp_start = 192.168.24.5
dhcp_end = 192.168.24.24
inspection_iprange = 192.168.24.100,192.168.24.120
gateway = 192.168.24.1
masquerade = true

환경에 따라 필요한 만큼의 프로비저닝 네트워크를 지정할 수 있습니다.

gateway
오버클라우드 인스턴스의 게이트웨이로, 트래픽을 외부 네트워크에 전달하는 언더클라우드 호스트입니다. director에 다른 IP 주소를 사용하지 않거나 외부 게이트웨이를 직접 사용하지 않을 경우 이 값을 기본 192.168.24.1로 남겨 두십시오.
참고

director의 구성은 적절한 sysctl 커널 매개 변수를 사용하여 IP 포워딩을 자동으로 활성화합니다.

cidr
director에서 오버클라우드 인스턴스를 관리하는 데 사용하는 네트워크입니다. 이 네트워크는 언더클라우드의 neutron 서비스에서 관리하는 프로비저닝 네트워크입니다. 프로비저닝 네트워크에 다른 서브넷을 사용하지 않는 경우 기본 192.168.24.0/24로 두십시오.
masquerade
외부 액세스를 위해 cidr에 정의된 네트워크를 마스커레이딩할지 여부를 정의합니다. 그러면 프로비저닝 네트워크에 일정 수준의 NAT(네트워크 주소 변환)가 제공되어 director를 통해 외부 액세스가 가능합니다.
dhcp_start; dhcp_end
오버클라우드 노드의 DHCP 할당 범위 시작과 끝 값입니다. 이 범위에 노드를 할당할 충분한 IP 주소가 포함되어 있는지 확인하십시오.

구성에 맞게 매개 변수에 대한 값을 변경합니다. 완료되면 파일을 저장하십시오.

4.3. Director 설치

다음 절차에 따라 director를 설치하고 몇 가지 기본적인 설치 후 작업을 수행합니다.

절차

  1. 다음 명령을 실행하여 언더클라우드에 director를 설치합니다.

    [stack@director ~]$ openstack undercloud install

    이 명령은 director의 구성 스크립트를 실행합니다. director가 추가 패키지를 설치하고, undercloud.conf의 설정에 맞게 해당 서비스를 구성합니다. 이 스크립트는 완료하는 데 몇 분이 걸립니다.

    스크립트가 완료되면 다음 두 파일이 생성됩니다.

    • undercloud-passwords.conf - director의 서비스에 대한 모든 암호 목록입니다.
    • stackrc - director의 명령줄 툴에 액세스할 수 있도록 지원하는 초기화 변수 세트입니다.
  2. 이 스크립트는 모든 OpenStack Platform 서비스 컨테이너가 자동으로 시작합니다. 다음 명령을 사용하여 활성화된 컨테이너를 확인하십시오.

    [stack@director ~]$ sudo docker ps
  3. 스크립트는 stack 사용자를 docker 그룹에 추가하여 stack 사용자에게 컨테이너 관리 명령에 대한 액세스 권한을 제공합니다. stack 사용자의 권한을 최신 상태로 업데이트하려면 다음 명령을 실행합니다.

    [stack@director ~]$ exec su -l stack

    다시 로그인하라는 명령 프롬프트가 표시됩니다. stack 사용자의 암호를 입력합니다.

  4. stack 사용자를 초기화하여 명령줄 툴을 사용하려면 다음 명령을 실행하십시오.

    [stack@director ~]$ source ~/stackrc

    이제 프롬프트 메세지는 OpenStack 명령이 언더클라우드를 인증 및 실행될 수 있음을 나타냅니다.

    (undercloud) [stack@director ~]$

director 설치가 완료되었습니다. 이제 director의 명령행 툴을 사용할 수 있습니다.

4.4. 오버클라우드 노드의 이미지 가져오기

director에는 오버클라우드 노드를 프로비저닝할 다음과 같은 여러 디스크 이미지가 필요합니다.

  • 인트로스펙션 커널 및 램디스크 - PXE 부팅을 통해 베어 메탈 시스템의 인트로스펙션에 사용됩니다.
  • 배포 커널 및 램디스크 - 시스템 프로비저닝 및 배포에 사용됩니다.
  • 오버클라우드 커널, 램디스크 및 전체 이미지 - 노드의 하드 디스크에 기록된 기본 오버클라우드 시스템입니다.

다음 절차는 오버클라우드 노드의 이미지를 확보 및 설치하는 방법에 대해 설명합니다.

4.4.1. 단일 아키텍처 오버클라우드

다음 이미지 및 절차는 배포 및 오버클라우드에 필요합니다.

절차

  1. stackrc 파일을 소싱하여 director의 명령행 툴을 활성화합니다.

    [stack@director ~]$ source ~/stackrc
  2. rhosp-director-imagesrhosp-director-images-ipa 패키지를 설치합니다.

    (undercloud) [stack@director ~]$ sudo yum install rhosp-director-images rhosp-director-images-ipa
  3. stack 사용자 홈(/home/stack/images)의 images 디렉터리에 압축된 이미지 파일을 풉니다.

    (undercloud) [stack@director ~]$ cd ~/images
    (undercloud) [stack@director images]$ for i in /usr/share/rhosp-director-images/overcloud-full-latest-14.0.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-14.0.tar; do tar -xvf $i; done
  4. 이러한 이미지를 director로 가져옵니다.

    (undercloud) [stack@director images]$ openstack overcloud image upload --image-path /home/stack/images/

    이렇게 하면 다음 이미지가 director에 업로드됩니다.

    • bm-deploy-kernel
    • bm-deploy-ramdisk
    • overcloud-full
    • overcloud-full-initrd
    • overcloud-full-vmlinuz

    이 스크립트는 director의 PXE 서버에 인트로스펙션 이미지도 설치합니다.

  5. 해당 이미지가 성공적으로 업로드되었는지 확인하려면 다음을 실행합니다.

    (undercloud) [stack@director images]$ openstack image list
    +--------------------------------------+------------------------+
    | ID                                   | Name                   |
    +--------------------------------------+------------------------+
    | 765a46af-4417-4592-91e5-a300ead3faf6 | bm-deploy-ramdisk      |
    | 09b40e3d-0382-4925-a356-3a4b4f36b514 | bm-deploy-kernel       |
    | ef793cd0-e65c-456a-a675-63cd57610bd5 | overcloud-full         |
    | 9a51a6cb-4670-40de-b64b-b70f4dd44152 | overcloud-full-initrd  |
    | 4f7e33f4-d617-47c1-b36f-cbe90f132e5d | overcloud-full-vmlinuz |
    +--------------------------------------+------------------------+

    이 목록에는 인트로스펙션 PXE 이미지가 표시되지 않습니다. director에서는 이러한 파일을 /httpboot에 복사합니다.

    (undercloud) [stack@director images]$ ls -l /httpboot
    total 341460
    -rwxr-xr-x. 1 root              root                5153184 Mar 31 06:58 agent.kernel
    -rw-r--r--. 1 root              root              344491465 Mar 31 06:59 agent.ramdisk
    -rw-r--r--. 1 ironic-inspector  ironic-inspector        337 Mar 31 06:23 inspector.ipxe

4.4.2. 다중 아키텍처 오버클라우드

다음은 배포 및 오버클라우드에 필요한 이미지 및 절차입니다.

절차

  1. stackrc 파일을 소싱하여 director의 명령행 툴을 활성화합니다.

    [stack@director ~]$ source ~/stackrc
  2. rhosp-director-images-all 패키지를 설치합니다.

    (undercloud) [stack@director ~]$ sudo yum install rhosp-director-images-all
  3. stack 사용자 홈(/home/stack/images)의 images 디렉터리에 있는 아키텍처별 디렉터리에 압축된 파일을 풉니다.

    (undercloud) [stack@director ~]$ cd ~/images
    (undercloud) [stack@director images]$ for arch in x86_64 ppc64le ; do mkdir $arch ; done
    (undercloud) [stack@director images]$ for arch in x86_64 ppc64le ; do for i in /usr/share/rhosp-director-images/overcloud-full-latest-14.0-${arch}.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-14.0-${arch}.tar ; do tar -C $arch -xf $i ; done ; done
  4. 이러한 이미지를 director로 가져옵니다.

    (undercloud) [stack@director ~]$ cd ~/images
    (undercloud) [stack@director images]$ openstack overcloud image upload --image-path ~/images/ppc64le --architecture ppc64le --whole-disk --http-boot /tftpboot/ppc64le
    (undercloud) [stack@director images]$ openstack overcloud image upload --image-path ~/images/x86_64/ --http-boot /tftpboot

    이렇게 하면 다음 이미지가 director에 업로드됩니다.

    • bm-deploy-kernel
    • bm-deploy-ramdisk
    • overcloud-full
    • overcloud-full-initrd
    • overcloud-full-vmlinuz
    • ppc64le-bm-deploy-kernel
    • ppc64le-bm-deploy-ramdisk
    • ppc64le-overcloud-full

      이 스크립트는 director의 PXE 서버에 인트로스펙션 이미지도 설치합니다.

  5. 해당 이미지가 성공적으로 업로드되었는지 확인하려면 다음을 실행합니다.

    (undercloud) [stack@director images]$ openstack image list
    +--------------------------------------+---------------------------+--------+
    | ID                                   | Name                      | Status |
    +--------------------------------------+---------------------------+--------+
    | 6d1005ba-ec82-473b-8e33-88aadb5b6792 | bm-deploy-kernel          | active |
    | fb723b33-9f11-45f5-b25b-c008bf509290 | bm-deploy-ramdisk         | active |
    | 6a6096ba-8f79-4343-b77c-4349f7b94960 | overcloud-full            | active |
    | de2a1bde-9351-40d2-bbd7-7ce9d6eb50d8 | overcloud-full-initrd     | active |
    | 67073533-dd2a-4a95-8e8b-0f108f031092 | overcloud-full-vmlinuz    | active |
    | 69a9ffe5-06dc-4d81-a122-e5d56ed46c98 | ppc64le-bm-deploy-kernel  | active |
    | 464dd809-f130-4055-9a39-cf6b63c1944e | ppc64le-bm-deploy-ramdisk | active |
    | f0fedcd0-3f28-4b44-9c88-619419007a03 | ppc64le-overcloud-full    | active |
    +--------------------------------------+---------------------------+--------+

    이 목록에는 인트로스펙션 PXE 이미지가 표시되지 않습니다. director에서는 이러한 파일을 /tftpboot에 복사합니다.

    (undercloud) [stack@director images]$ ls -l /tftpboot /tftpboot/ppc64le/
    /tftpboot:
    total 422624
    -rwxr-xr-x. 1 root   root     6385968 Aug  8 19:35 agent.kernel
    -rw-r--r--. 1 root   root   425530268 Aug  8 19:35 agent.ramdisk
    -rwxr--r--. 1 ironic ironic     20832 Aug  8 02:08 chain.c32
    -rwxr--r--. 1 ironic ironic    715584 Aug  8 02:06 ipxe.efi
    -rw-r--r--. 1 root   root          22 Aug  8 02:06 map-file
    drwxr-xr-x. 2 ironic ironic        62 Aug  8 19:34 ppc64le
    -rwxr--r--. 1 ironic ironic     26826 Aug  8 02:08 pxelinux.0
    drwxr-xr-x. 2 ironic ironic        21 Aug  8 02:06 pxelinux.cfg
    -rwxr--r--. 1 ironic ironic     69631 Aug  8 02:06 undionly.kpxe
    
    /tftpboot/ppc64le/:
    total 457204
    -rwxr-xr-x. 1 root             root              19858896 Aug  8 19:34 agent.kernel
    -rw-r--r--. 1 root             root             448311235 Aug  8 19:34 agent.ramdisk
    -rw-r--r--. 1 ironic-inspector ironic-inspector       336 Aug  8 02:06 default
참고

기본 overcloud-full.qcow2 이미지는 플랫 파티션 이미지입니다. 하지만 전체 디스크 이미지를 가져와서 사용할 수도 있습니다. 자세한 내용은 부록 C. 전체 디스크 이미지를 참조하십시오.

4.5. 컨트롤 플레인의 네임서버 설정

오버클라우드에서 cdn.redhat.com과 같은 외부 호스트 이름을 확인하도록 하려면 오버클라우드 노드에 네임서버를 설정하는 것이 좋습니다. 네트워크를 분리하지 않은 표준 오버클라우드의 경우 언더클라우드의 컨트롤 플레인 서브넷을 사용하여 네임서버가 정의됩니다. 다음 절차에 따라 환경에 대한 네임서버를 정의하십시오.

절차

  1. stackrc 파일을 소싱하여 director의 명령행 툴을 활성화합니다.

    [stack@director ~]$ source ~/stackrc
  2. ctlplane-subnet 서브넷의 네임서버를 설정합니다.

    (undercloud) [stack@director images]$ openstack subnet set --dns-nameserver [nameserver1-ip] --dns-nameserver [nameserver2-ip] ctlplane-subnet

    각 네임서버에 대해 --dns-nameserver 옵션을 사용합니다.

  3. 서브넷을 표시하여 네임 서버를 확인합니다.

    (undercloud) [stack@director images]$ openstack subnet show ctlplane-subnet
    +-------------------+-----------------------------------------------+
    | Field             | Value                                         |
    +-------------------+-----------------------------------------------+
    | ...               |                                               |
    | dns_nameservers   | 8.8.8.8                                       |
    | ...               |                                               |
    +-------------------+-----------------------------------------------+
중요

서비스 트래픽을 별도의 네트워크에 분리하려면 오버클라우드 노드에서 네트워크 환경 파일에 DnsServers 매개 변수를 사용합니다.

4.6. 다음 단계

이렇게 하면 director 구성 및 설치가 완료됩니다. 다음 장에서는 노드 등록, 검사 및 여러 노드 역할 태그 지정을 비롯하여 오버클라우드의 기본적인 구성에 대해 설명합니다.