环境部署
OpenStack部署节点包含控制节点、计算节点和存储节点。可单台机器部署上述节点,也可分布式部署,用户可根据实际情况进行部署。通常情况为控制节点和存储节点部署在同一服务器上,计算节点单独部署(可多台服务器部署多台计算节点)。
安装OpenStack相关组件
- 安装依赖。
- 安装依赖的软件包。
yum install python3-iniparse python3-crudini libaio-devel
- 请参见部署软件安装Kernel、QEMU、libvirt和edk2。
- 安装EDK2后修改以下文件内容,并重启服务。
- 打开“/usr/share/qemu/firmware/10-edk2-aarch64-verbose-raw.json”文件。
vim /usr/share/qemu/firmware/10-edk2-aarch64-verbose-raw.json
- 按“i”进入编辑模式,将QEMU_EFI-pflash.raw修改为QEMU_EFI.fd;将raw修改为fd。
- 按“Esc”键退出编辑模式,输入:wq!,按“Enter”键保存退出文件。
- 重启服务。
systemctl restart libvirtd
- 打开“/usr/share/qemu/firmware/10-edk2-aarch64-verbose-raw.json”文件。
- 参考获取安全内存信息安装tmm_driver。
- 安装依赖的软件包。
OpenStack创建机密虚拟机
- 进行权限验证。
source ~/.admin-openrc
“~/.admin-openrc”文件为部署过程创建。
- 检查nova环境,应全部为Success,否则按照返回信息进行修改。
nova-status upgrade check
- 查看计算节点列表。
openstack hypervisor list
- 生成公钥。
- 使用以下命令创建密钥对,并根据提示输入密钥存储路径和密钥名。
ssh-keygen -q -N ""
- 密钥对默认位置为“~/.ssh/xx.pub”,根据该路径将对应公钥上传至OpenStack。
openstack keypair create --public-key ~/.ssh/xx.pub mykey openstack keypair list
- 使用以下命令创建密钥对,并根据提示输入密钥存储路径和密钥名。
- 创建实例类型。
- 创建普通虚拟机实例类型。
openstack flavor create normal-flavor --vcpus 4 --ram 8192 --disk 50
- 创建机密虚拟机实例类型。
openstack flavor create cca-flavor --vcpus 4 --ram 8192 --disk 50 \ --property trait:HW_CPU_AARCH64_HISI_VIRTCCA=required \ --property sw:qemu_cmdline="tmm-guest,id=tmm0,num-pmu-counters=1" \ --property hw:mem_secure=true
本文档中实例类型示例名称为normal-flavor、cca-flavor,使用示例flavor实例类型创建的虚拟机拥有4个CPU核,8G内存,50G系统磁盘。在创建虚拟机的时候需要指定实例类型。
- 创建普通虚拟机实例类型。
- 上传镜像。参考制作qcow2镜像制作机密虚拟机qcow2镜像,上传OpenStack。
openstack image create openEuler-image --file openEuler-24.03-LTS-SP2-aarch64.qcow2 --disk-format qcow2 --container-format bare --public
制作的qcow2镜像大小默认为40G,创建虚拟机时使用的flavor对应disk大小应不小于镜像大小,否则会导致虚拟机创建失败。
- 创建网络。
- 创建公共网络。
openstack network create --share --provider-physical-network provider --provider-network-type flat public-network
- 创建子网。
openstack subnet create --network public-network --subnet-range xx.xx.xx.xx/xx --gateway xx.xx.xx.xx public-subnet
--subnet-range:子网范围。
--gateway:网关。
- 创建公共网络。
- 创建机密虚拟机。
openstack server create --image openEuler-image --flavor cca-flavor --network public-network cca-server
父主题: 配置OpenStack支持机密虚拟机