源自于网络-snowchuai汇总、整理
参考文档:
xxxxxxxxxx# 在全部计算节点安装nova-compute服务,以compute01节点为例[root@compute01 ~]# yum install python-openstackclient openstack-utils openstack-selinux -y[root@compute01 ~]# yum install openstack-nova-compute -y
xxxxxxxxxx# 在全部计算节点操作,以computer01节点为例;# 注意”my_ip”参数,根据节点修改;# 注意nova.conf文件的权限:root:nova[root@compute01 ~]# cp /etc/nova/nova.conf /etc/nova/nova.conf.bak[root@compute01 ~]# egrep -v "^$|^#" /etc/nova/nova.conf[DEFAULT]my_ip=172.30.200.41use_neutron=truefirewall_driver=nova.virt.firewall.NoopFirewallDriverenabled_apis=osapi_compute,metadata# 前端采用haproxy时,服务连接rabbitmq会出现连接超时重连的情况,可通过各服务与rabbitmq的日志查看;# transport_url=rabbit://openstack:rabbitmq_pass@controller:5673# rabbitmq本身具备集群机制,官方文档建议直接连接rabbitmq集群;但采用此方式时服务启动有时会报错,原因不明;如果没有此现象,强烈建议连接rabbitmq直接对接集群而非通过前端haproxytransport_url=rabbit://openstack:rabbitmq_pass@controller01:5672,controller02:5672,controller03:5672[api]auth_strategy=keystone[api_database][barbican][cache][cells][cinder][compute][conductor][console][consoleauth][cors][crypto][database][devices][ephemeral_storage_encryption][filter_scheduler][glance]api_servers=http://controller:9292[guestfs][healthcheck][hyperv][ironic][key_manager][keystone][keystone_authtoken]auth_uri = http://controller:5000auth_url = http://controller:35357memcached_servers = controller01:11211,controller02:11211,controller03:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = nova_pass[libvirt]# 通过“egrep -c '(vmx|svm)' /proc/cpuinfo”命令查看主机是否支持硬件加速,返回1或者更大的值表示支持,返回0表示不支持;# 支持硬件加速使用”kvm”类型,不支持则使用”qemu”类型;# 一般虚拟机不支持硬件加速virt_type=qemu[matchmaker_redis][metrics][mks][neutron][notifications][osapi_v21][oslo_concurrency]lock_path=/var/lib/nova/tmp[oslo_messaging_amqp][oslo_messaging_kafka][oslo_messaging_notifications][oslo_messaging_rabbit][oslo_messaging_zmq][oslo_middleware][oslo_policy][pci][placement]os_region_name=RegionTestauth_type=passwordauth_url=http://controller:35357/v3project_name=serviceproject_domain_name=Defaultusername=placementuser_domain_name=Defaultpassword=placement_pass[quota][rdp][remote_debug][scheduler][serial_console][service_user][spice][upgrade_levels][vault][vendordata_dynamic_auth][vmware][vnc]enabled=truevncserver_listen=0.0.0.0vncserver_proxyclient_address=$my_ip# 因某些未做主机绑定的客户端不能访问”controller”名字,改为使用具体的ip地址novncproxy_base_url=http://172.30.200.30:6080/vnc_auto.html[workarounds][wsgi][xenserver][xvp]
xxxxxxxxxx# 全部计算节点操作;# 开机启动[root@compute01 ~]# systemctl enable libvirtd.service openstack-nova-compute.service# 启动[root@compute01 ~]# systemctl restart libvirtd.service[root@compute01 ~]# systemctl restart openstack-nova-compute.service查看状态[root@compute01 ~]# systemctl status libvirtd.service[root@compute01 ~]# systemctl status openstack-nova-compute.service
xxxxxxxxxx# 在任意控制节点操作[root@controller01 ~]# . admin-openrc# 确认数据库中含有主机[root@controller01 ~]# openstack compute service list --service nova-compute

xxxxxxxxxx# 手工发现计算节点主机,即添加到cell数据库[root@controller01 ~]# su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova

xxxxxxxxxx# 在全部控制节点操作;# 为避免新加入计算节点时,手动执行注册操作”nova-manage cell_v2 discover_hosts”,可设置控制节点定时自动发现主机;# 涉及控制节点nova.conf文件的[scheduler]字段;# 如下设置自动发现时间为5min,可根据实际环境调节[root@controller01 ~]# vim /etc/nova/nova.conf[scheduler]discover_hosts_in_cells_interval=300# 重启nova服务,配置生效[root@controller01 ~]# systemctl restart openstack-nova-api.service
登陆dashboard,管理员-->计算-->虚拟机管理器
如果已注册成功,在"虚拟机管理器"标签下可发现计算节点,并能展示出各计算节点的资源;如果未注册或注册失败,则"虚拟机管理器"标签下无主机。

