4.10. 오버클라우드 노드의 이미지 가져오기
director에는 오버클라우드 노드를 프로비저닝하기 위한 여러 개의 디스크 이미지가 필요합니다.
- PXE 부팅을 통해 베어 메탈 시스템의 인트로스펙션에 사용되는 인트로스펙션 커널 및 램디스크
- 시스템 프로비저닝 및 배포에 사용되는 배포 커널 및 램디스크
- director가 노드의 하드 디스크에 쓰는 기본 오버클라우드 시스템을 생성하는 오버클라우드 커널, 램디스크 및 전체 이미지
CPU 아키텍처에 따라 필요한 이미지를 가져와서 설치할 수 있습니다. 다른 RHOSP(Red Hat OpenStack Platform) 서비스를 실행하지 않으려는 경우 베어 OS를 프로비저닝하기 위해 기본 이미지를 가져와서 설치하거나 서브스크립션 인타이틀먼트 중 하나를 사용할 수도 있습니다.
4.10.1. 단일 CPU 아키텍처 오버클라우드 이미지
RHOSP(Red Hat OpenStack Platform) 설치에는 director용 다음 오버클라우드 이미지를 제공하는 패키지가 포함되어 있습니다.
-
overcloud-full
-
overcloud-full-initrd
-
overcloud-full-vmlinuz
이러한 이미지는 기본 CPU 아키텍처 x86-64를 사용하여 오버클라우드를 배포하는 데 필요합니다. 이러한 이미지를 director로 가져오면 director PXE 서버에 인트로스펙션 이미지도 설치됩니다.
절차
-
stack
사용자로 언더클라우드에 로그인합니다. stackrc
파일을 소싱합니다.[stack@director ~]$ source ~/stackrc
rhosp-director-images
및rhosp-director-images-ipa-x86_64
패키지를 설치합니다.(undercloud) [stack@director ~]$ sudo dnf install rhosp-director-images rhosp-director-images-ipa-x86_64
stack
사용자의 홈 디렉터리(/home/stack/
)에 images 디렉터리를 생성합니다.images
(undercloud) [stack@director ~]$ mkdir /home/stack/images
images
디렉터리에 압축된 이미지 파일을 풉니다.(undercloud) [stack@director ~]$ cd ~/images (undercloud) [stack@director images]$ for i in /usr/share/rhosp-director-images/overcloud-full-latest-16.2.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-16.2.tar; do tar -xvf $i; done
이미지를 director로 가져옵니다.
(undercloud) [stack@director images]$ openstack overcloud image upload --image-path /home/stack/images/
이미지가 업로드되었는지 확인합니다.
(undercloud) [stack@director images]$ openstack image list +--------------------------------------+------------------------+ | ID | Name | +--------------------------------------+------------------------+ | ef793cd0-e65c-456a-a675-63cd57610bd5 | overcloud-full | | 9a51a6cb-4670-40de-b64b-b70f4dd44152 | overcloud-full-initrd | | 4f7e33f4-d617-47c1-b36f-cbe90f132e5d | overcloud-full-vmlinuz | +--------------------------------------+------------------------+
director가 인트로스펙션 PXE 이미지를
/var/lib/ironic/httpboot
에 복사했는지 확인합니다.(undercloud) [stack@director images]$ ls -l /var/lib/ironic/httpboot total 417296 -rwxr-xr-x. 1 root root 6639920 Jan 29 14:48 agent.kernel -rw-r--r--. 1 root root 420656424 Jan 29 14:48 agent.ramdisk -rw-r--r--. 1 42422 42422 758 Jan 29 14:29 boot.ipxe -rw-r--r--. 1 42422 42422 488 Jan 29 14:16 inspector.ipxe
4.10.2. 여러 CPU 아키텍처 오버클라우드 이미지
RHOSP(Red Hat OpenStack Platform) 설치에는 기본 CPU 아키텍처 x86-64를 사용하여 오버클라우드를 배포하는 데 필요한 다음 이미지를 제공하는 패키지가 포함되어 있습니다.
-
overcloud-full
-
overcloud-full-initrd
-
overcloud-full-vmlinuz
RHOSP 설치에는 POWER(ppc64le) CPU 아키텍처를 사용하여 오버클라우드를 배포하는 데 필요한 다음 이미지를 제공하는 패키지가 포함되어 있습니다.
-
ppc64le-overcloud-full
이러한 이미지를 director로 가져오면 director PXE 서버에 인트로스펙션 이미지도 설치됩니다.
절차
-
stack
사용자로 언더클라우드에 로그인합니다. stackrc
파일을 소싱합니다.[stack@director ~]$ source ~/stackrc
rhosp-director-images-all
패키지를 설치합니다.(undercloud) [stack@director ~]$ sudo dnf install rhosp-director-images-all
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-16.1-${arch}.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-16.1-${arch}.tar ; do tar -C $arch -xf $i ; done ; done
이미지를 director로 가져옵니다.
(undercloud) [stack@director ~]$ cd ~/images (undercloud) [stack@director images]$ openstack overcloud image upload --image-path ~/images/ppc64le --architecture ppc64le --whole-disk --http-boot /var/lib/ironic/tftpboot/ppc64le (undercloud) [stack@director images]$ openstack overcloud image upload --image-path ~/images/ppc64le --architecture ppc64le --whole-disk --image-type ironic-python-agent --http-boot /var/lib/ironic/httpboot/ppc64le (undercloud) [stack@director images]$ openstack overcloud image upload --image-path ~/images/x86_64/ --architecture x86_64 --http-boot /var/lib/ironic/tftpboot (undercloud) [stack@director images]$ openstack overcloud image upload --image-path ~/images/x86_64 --architecture x86_64 --image-type ironic-python-agent --http-boot /var/lib/ironic/httpboot
이미지가 업로드되었는지 확인합니다.
(undercloud) [stack@director images]$ openstack image list +--------------------------------------+---------------------------+--------+ | ID | Name | Status | +--------------------------------------+---------------------------+--------+ | 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 | | f0fedcd0-3f28-4b44-9c88-619419007a03 | ppc64le-overcloud-full | active | +--------------------------------------+---------------------------+--------+
director가 인트로스펙션 PXE 이미지를
/var/lib/ironic/tftpboot
에 복사했는지 확인합니다.(undercloud) [stack@director images]$ ls -l /var/lib/ironic/tftpboot /var/lib/ironic/tftpboot/ppc64le/ /var/lib/ironic/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 42422 42422 20832 Aug 8 02:08 chain.c32 -rwxr--r--. 1 42422 42422 715584 Aug 8 02:06 ipxe.efi -rw-r--r--. 1 root root 22 Aug 8 02:06 map-file drwxr-xr-x. 2 42422 42422 62 Aug 8 19:34 ppc64le -rwxr--r--. 1 42422 42422 26826 Aug 8 02:08 pxelinux.0 drwxr-xr-x. 2 42422 42422 21 Aug 8 02:06 pxelinux.cfg -rwxr--r--. 1 42422 42422 69631 Aug 8 02:06 undionly.kpxe /var/lib/ironic/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 42422 42422 336 Aug 8 02:06 default
4.10.3. 컨테이너 이미지에서 여러 CPU 아키텍처 활성화
RHOSP(Red Hat OpenStack Platform) 배포에 여러 CPU 아키텍처가 있고 컨테이너 이미지를 사용하는 경우 컨테이너 이미지를 업데이트하여 여러 아키텍처를 활성화해야 합니다.
절차
-
stack
사용자로 언더클라우드에 로그인합니다. stackrc
파일을 소싱합니다.[stack@director ~]$ source ~/stackrc
containers-prepare-parameter.yaml
파일에 추가 아키텍처를 추가하여 여러 아키텍처를 활성화합니다.parameter_defaults: ContainerImageRegistryLogin: true AdditionalArchitectures: [<list_of_architectures>] ContainerImagePrepare: - push_destination: true ...
&
lt;list_of_architectures
>를 오버클라우드 환경에서 지원하는 아키텍처의 쉼표로 구분된 목록으로 바꿉니다(예:[ppc64le
]).컨테이너를 준비하고 업로드합니다.
$ openstack tripleo container image prepare \ -e ~/containers-prepare-parameter.yaml
4.10.4. 최소 오버클라우드 이미지
overcloud-minimal
이미지를 사용하여 다른 RHOSP(Red Hat OpenStack Platform) 서비스를 실행하지 않으려는 베어 OS를 프로비저닝하거나 서브스크립션 인타이틀먼트 중 하나를 사용할 수 있습니다.
RHOSP 설치에는 director의 다음 오버클라우드 이미지를 제공하는 overcloud-minimal
패키지가 포함되어 있습니다.
-
overcloud-minimal
-
overcloud-minimal-initrd
-
overcloud-minimal-vmlinuz
기본 overcloud-full.qcow2
이미지는 플랫 파티션 이미지입니다. 하지만 전체 디스크 이미지를 가져와서 사용할 수도 있습니다. 자세한 내용은 24장. 전체 디스크 이미지 생성의 내용을 참조하십시오.
절차
-
stack
사용자로 언더클라우드에 로그인합니다. stackrc
파일을 소싱합니다.[stack@director ~]$ source ~/stackrc
overcloud-minimal
패키지를 설치합니다.(undercloud) [stack@director ~]$ sudo dnf install rhosp-director-images-minimal
stack
사용자의 홈 디렉터리(/home/stack/images
)에 있는images
디렉터리에 압축된 이미지 파일을 풉니다.(undercloud) [stack@director ~]$ cd ~/images (undercloud) [stack@director images]$ tar xf /usr/share/rhosp-director-images/overcloud-minimal-latest-16.2.tar
이미지를 director로 가져옵니다.
(undercloud) [stack@director images]$ openstack overcloud image upload --image-path /home/stack/images/ --image-type os --os-image-name overcloud-minimal.qcow2
이미지가 업로드되었는지 확인합니다.
(undercloud) [stack@director images]$ openstack image list +--------------------------------------+---------------------------+ | ID | Name | +--------------------------------------+---------------------------+ | ef793cd0-e65c-456a-a675-63cd57610bd5 | overcloud-full | | 9a51a6cb-4670-40de-b64b-b70f4dd44152 | overcloud-full-initrd | | 4f7e33f4-d617-47c1-b36f-cbe90f132e5d | overcloud-full-vmlinuz | | 32cf6771-b5df-4498-8f02-c3bd8bb93fdd | overcloud-minimal | | 600035af-dbbb-4985-8b24-a4e9da149ae5 | overcloud-minimal-initrd | | d45b0071-8006-472b-bbcc-458899e0d801 | overcloud-minimal-vmlinuz | +--------------------------------------+---------------------------+