4.8. 为 overcloud 节点获取镜像
director 需要几个磁盘镜像用于置备 overcloud 节点。这包括:
- 一个内省内核和 ramdisk - 用于通过 PXE 引导进行裸机系统内省。
- 一个实施内核和 ramdisk - 用于系统部署和实施。
- overcloud 内核、ramdisk 和完整镜像 - 写到节点硬盘中的基本 overcloud 系统。
以下操作过程旨在展示如何获取并安装这些镜像。
4.8.1. 单个 CPU 架构 overcloud
使用默认 CPU 架构 x86-64 部署 overcloud,需要这些镜像和过程。
步骤
查找
stackrc
文件,以启用 director 的命令行工具:[stack@director ~]$ source ~/stackrc
安装
rhosp-director-images
和rhosp-director-images-ipa
软件包:(undercloud) [stack@director ~]$ sudo yum install rhosp-director-images rhosp-director-images-ipa
将镜像存档提取到
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-16.0.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-16.0.tar; do tar -xvf $i; done
把这些镜像导入到 director:
(undercloud) [stack@director images]$ openstack overcloud image upload --image-path /home/stack/images/
此脚本将以下镜像上传到 director:
-
overcloud-full
-
overcloud-full-initrd
-
overcloud-full-vmlinuz
另外,此脚本还会在 director 的 PXE 服务器上安装内省镜像。
-
检查这些镜像是否已成功上传:
(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 | +--------------------------------------+------------------------+
此列表不显示内省 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.8.2. 多个 CPU 架构 overcloud
部署 overcloud 以启用对附加 CPU 架构的支持需要这些镜像和操作。
以下过程在其示例中使用 ppc64le 镜像。
步骤
查找
stackrc
文件,以启用 director 的命令行工具:[stack@director ~]$ source ~/stackrc
安装
rhosp-director-images-all
软件包:(undercloud) [stack@director ~]$ sudo yum install rhosp-director-images-all
将存档解包到特定于架构的目录中,该目录位于
stack
用户的主目录下的images
目录 (/home/stack/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.0-${arch}.tar /usr/share/rhosp-director-images/ironic-python-agent-latest-16.0-${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 /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 服务器上安装内省镜像。
-
检查这些镜像是否已成功上传:
(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
镜像是一种平面分区镜像。但是,您仍可以导入和使用完整的磁盘镜像。有关更多信息,请参阅 第 23 章 创建完整磁盘镜像。