jmppok 2020-03-25
1、概述
2、安装配置计算节点
计算节点上:https://docs.openstack.org/nova/rocky/install/compute-install.html
nova-compute调用libvirtd来创建虚拟机
nova-compute的功能可以分为两类:
[ ~]# yum install openstack-nova-compute [ ~]# yum -y install openstack-utils.noarch (目的是支持自动化配置) 实例: openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis osapi_compute,metadata
[ ~]# scp /etc/nova/nova.conf 192.168.223.171:/root/ 删除数据库相关配置: [api_database] connection=mysql://nova:/nova_api #删除该行 [database] connection=mysql+pymysql://nova:/nova #删除 my_ip=192.168.223.171 #改为171,管理接口的ip地址,可以使第一个计算节点 [vnc] # ... enabled = true server_listen = 0.0.0.0 server_proxyclient_address = $my_ip novncproxy_base_url = http://192.168.223.171:6080/vnc_auto.html [ ~]# cat nove.conf #可以通过md5sum 来确定文件修改是否一致 [DEFAULT] enabled_apis=osapi_compute,metadata transport_url = rabbit://openstack: my_ip = 192.168.223.171 use_neutron = true firewall_driver = nova.virt.firewall.NoopFirewallDriver [api] auth_strategy = keystone [api_database] [barbican] [cache] [cells] [cinder] [compute] [conductor] [console] [consoleauth] [cors] [database] [devices] [ephemeral_storage_encryption] [filter_scheduler] [glance] api_servers = http://controller:9292 [guestfs] [healthcheck] [hyperv] [ironic] [key_manager] [keystone] [keystone_authtoken] auth_url = http://controller:5000/v3 memcached_servers = controller:11211 auth_type = password project_domain_name = Default user_domain_name = Default project_name = service username = nova password = nova [libvirt] [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] region_name = RegionOne project_domain_name = Default project_name = service auth_type = password user_domain_name = Default auth_url = http://controller:5000/v3 username = placement password = placement [placement_database] [powervm] [profiler] [quota] [rdp] [remote_debug] [scheduler] [serial_console] [service_user] [spice] [upgrade_levels] [vault] [vendordata_dynamic_auth] [vmware] [vnc] enabled = true server_listen = 0.0.0.0 server_proxyclient_address = $my_ip novncproxy_base_url = http://controller:6080/vnc_auto.html #改为控制节点的IP地址,或者不修改,去修改windows的hosts文件 [workarounds] [wsgi] [xenserver] [xvp] [zvm] 要修改属性,要不然无法启动: [ ~]# chown root.nova /etc/nova/nova.conf
1、查看是否支持虚拟化 [ ~]# egrep -c ‘(vmx|svm)‘ /proc/cpuinfo 1 如果返回大于0的数不用做操作,如果返回0,添加如下配置在/etc/nova/nova.conf : [libvirt] # ... virt_type = qemu 2、开启 # systemctl enable libvirtd.service openstack-nova-compute.service # systemctl start libvirtd.service openstack-nova-compute.service 如果无法启动: 保证rabbit密码前后一致: Nova日志报错AMQP服务器5672不可访问 一、报错信息如下 二、解决方法如下 1.防火墙未关闭或5672端口未打开 2.配置文件有误
1、查看计算节点 [ ~]# . admin-openrc [ ~]# openstack compute service list --service nova-compute +----+--------------+----------+------+---------+-------+----------------------------+ | ID | Binary | Host | Zone | Status | State | Updated At | +----+--------------+----------+------+---------+-------+----------------------------+ | 6 | nova-compute | compute1 | nova | enabled | up | 2020-02-21T20:13:45.000000 | +----+--------------+----------+------+---------+-------+----------------------------+ 2、同步数据库 [ ~]# su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova Found 2 cell mappings. Skipping cell0 since it does not contain hosts. Getting computes from cell ‘cell1‘: d7d3098d-56b4-4be0-918e-81613a293407 Checking host mapping for compute host ‘compute1‘: 07281b53-0154-4cd7-9925-f887140af17b Creating host mapping for compute host ‘compute1‘: 07281b53-0154-4cd7-9925-f887140af17b Found 1 unmapped computes in cell: d7d3098d-56b4-4be0-918e-81613a293407 [ ~]#
注意:
When you add new compute nodes, you must run nova-manage cell_v2 discover_hosts
on the controller node to register those new compute nodes. Alternatively, you can set an appropriate interval in /etc/nova/nova.conf
:
[scheduler] discover_hosts_in_cells_interval = 300
[_node1 ~]# . admin-openstack.sh [_node1 ~]# openstack compute service list +----+------------------+---------------+----------+---------+-------+----------------------------+ | ID | Binary | Host | Zone | Status | State | Updated At | +----+------------------+---------------+----------+---------+-------+----------------------------+ | 1 | nova-consoleauth | host157_node1 | internal | enabled | up | 2019-12-15T15:24:21.000000 | | 2 | nova-conductor | host157_node1 | internal | enabled | up | 2019-12-15T15:24:21.000000 | | 3 | nova-scheduler | host157_node1 | internal | enabled | up | 2019-12-15T15:24:31.000000 | | 6 | nova-compute | host158_node2 | nova | enabled | up | 2019-12-15T15:24:27.000000 | +----+------------------+---------------+----------+---------+-------+----------------------------+