compute01部署计算节点
官方文档:https://docs.openstack.org/ocata/zh_CN/install-guide-rdo/nova-compute-install.html
[root@openstack-compute01 ~]# yum install openstack-nova-compute -y # 安装软件包
[root@openstack-compute01 ~]# vim /etc/nova/nova.conf
[DEFAULT]
# ...
enabled_apis = osapi_compute,metadata # 只启用计算和元数据API
transport_url = rabbit://openstack:rabbit123@openstack-controller.ponfey # 配置RabbitMQ消息队列访问权限
在[api]和[keystone_authtoken]部分中,配置身份服务访问:
[api]
# ...
auth_strategy = keystone
[keystone_authtoken]
# ...
auth_uri = http://openstack-controller.ponfey:5000
auth_url = http://openstack-controller.ponfey:35357
memcached_servers = openstack-controller.ponfey:11211
auth_type = password
project_domain_name = default
user_domain_name = default
project_name = service
username = nova
password = nova
[DEFAULT]
# ...
my_ip = 10.0.2.17 # 计算节点上的管理网络接口的IP 地址
[DEFAULT]
# ...
use_neutron = True # 启用网络服务支持
firewall_driver = nova.virt.firewall.NoopFirewallDriver # 去除 Compute 内置的防火墙服务
[vnc]
# ...
enabled = True # 启用并配置远程控制台访问
vncserver_listen = 0.0.0.0 # 服务器组件监听所有的 IP 地址,而代理组件仅仅监听计算节点管理网络接口的 IP 地址
vncserver_proxyclient_address = $my_ip
novncproxy_base_url = http://openstack-controller.ponfey:6080/vnc_auto.html
[glance] # 配置镜像服务 API 的位置
# ...
api_servers = http://openstack-controller.ponfey:9292
[oslo_concurrency] # 配置锁路径:
# ...
lock_path = /var/lib/nova/tmp
[placement] # 配置Placement API
# ...
os_region_name = RegionOne
project_domain_name = Default
project_name = service
auth_type = password
user_domain_name = Default
auth_url = http://openstack-controller.ponfey:35357/v3
username = placement
password = placement
[root@openstack-compute01 ~]# egrep -c '(vmx|svm)' /proc/cpuinfo # 确定计算节点是否支持虚拟机的硬件加速,如果这个命令返回了的值,那么计算队列支持硬件加速并且不需要额外的配置,如果这个命令返回了0值,那么计算矩阵不支持硬件加速。必须配置libvirt来使用QEMU去代替KVM,[libvirt] #... virt_type = qemu
32
[root@openstack-compute01 ~]# systemctl enable libvirtd openstack-nova-compute && systemctl start libvirtd openstack-nova-compute # 启动计算服务
## controller 将计算节点添加到单元数据库中
[root@openstack-controller ~]# openstack hypervisor list
+----+---------------------+-----------------+-----------+-------+
| ID | Hypervisor Hostname | Hypervisor Type | Host IP | State |
+----+---------------------+-----------------+-----------+-------+
| 1 | compute1 | QEMU | 10.0.2.17 | up |
+----+---------------------+-----------------+-----------+-------+
[root@openstack-controller ~]# su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova # 发现主机
踩坑
[root@openstack-compute01 ~]# systemctl enable libvirtd openstack-nova-compute && systemctl start libvirtd openstack-nova-compute # 如果nova-compute服务无法启动,请检查 /var/log/nova/nova-compute.log 错误消息可能表明控制器节点上的防火墙阻止访问端口5672。将防火墙配置为打开控制器节点上的端口5672并重新启动计算节点上的服务。firewall-cmd --zone=public --add-port=5672/tcp --permanent
systemctl restart firewalld && firewall-cmd --zone=public --query-port=5672/tcp