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

director에는 오버클라우드 노드를 프로비저닝하기 위한 여러 개의 디스크 이미지가 필요합니다. 여기에는 다음이 포함됩니다.

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

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

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

기본 CPU 아키텍처 x86-64를 사용하는 오버클라우드를 배포하려면 다음 이미지 및 절차가 필요합니다.

절차

  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-15.0.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-15.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는 이 파일을 /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.7.2. 여러 CPU 아키텍처 오버클라우드

다음은 추가 CPU 아키텍처를 지원하는 오버클라우드 배포에 필요한 이미지 및 절차입니다.

다음 절차의 예제에서는 ppc64le 이미지를 사용합니다.

절차

  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-15.0-${arch}.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-15.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 이미지는 플랫 파티션 이미지입니다. 하지만 전체 디스크 이미지를 가져와서 사용할 수도 있습니다. 자세한 내용은 20장. 전체 디스크 이미지 생성을 참조하십시오.