openstack学习三-虚拟机上手工最小化安装stein(5)nova-计算节点

转到计算节点安装,首先安装计算节点软件包,在第二部分安装时我们已经装过了,如果忘记参考下面的安装命令

yum install openstack-nova-compute -y

一、修改防火墙配置

firewall-cmd --add-port=5900-5999/tcp --permanent  && firewall-cmd --reload && firewall-cmd --list-all

openstack学习三-虚拟机上手工最小化安装stein(5)nova-计算节点_第1张图片

二、修改nova配置

编辑/etc/nova/nova.conf文件并完成以下操作:

在计算节点上不需要和数据库直接通信,所以比起在控制节点上的nova配置,基本上就是减少了数据库部分的配置,其它的需要修改一下相关的监听IP地址即可。

  • 在该[DEFAULT]部分中,仅启用计算和元数据API

  • enabled_apis = osapi_compute,metadata
  • transport_url = rabbit://openstack:openstack@controller
  • my_ip =10.37.6.24
    [api]
    auth_strategy = 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
  • use_neutron = true
    firewall_driver = nova.virt.firewall.NoopFirewallDriver
  • 默认情况下,Compute使用内部防火墙服务。由于Networking包含防火墙服务,因此必须使用nova.virt.firewall.NoopFirewallDriver防火墙驱动程序禁用Compute防火墙服务。
    [vnc]
    enabled = true
    server_listen = 0.0.0.0
    server_proxyclient_address = $my_ip
    novncproxy_base_url = http://controller:6080/vnc_auto.html
  • 服务器组件侦听所有IP地址,并且代理组件仅侦听计算节点的管理接口IP地址。基本URL指示您可以使用Web浏览器访问此计算节点上的实例的远程控制台的位置。
  • [glance]
    api_servers = http://controller:9292
  • [oslo_concurrency]
    lock_path = /var/lib/nova/tmp

    在该[placement]部分中,配置Placement API:

    [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

汇总看一下nova.conf的配置

[root@compute ~]# egrep ^\\[\|^[a-z] /etc/nova/nova.conf 
[DEFAULT]
my_ip=10.37.6.24
use_neutron=true
firewall_driver=nova.virt.firewall.NoopFirewallDriver
enabled_apis=osapi_compute,metadata
transport_url=rabbit://openstack:openstack@controller
[api]
auth_strategy=keystone
[glance]
api_servers=http://controller:9292
[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]
virt_type=kvm
[oslo_concurrency]
lock_path=/var/lib/nova/tmp
[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
[vnc]
enabled=true
server_listen=0.0.0.0
server_proxyclient_address=$my_ip
novncproxy_base_url=http://controller:6080/vnc_auto.html

二、检查设备硬件是否支持KVM虚拟

egrep -c '(vmx|svm)' /proc/cpuinfo

只要大于0即可,大于0就可在上面的libervirt中把type设置为kvm,否则就只能设置为QEMU模式。

三、启动Compute服务及其依赖项,并将它们配置为在系统引导时自动启动:

# systemctl enable libvirtd.service openstack-nova-compute.service
# systemctl start libvirtd.service openstack-nova-compute.service

四、将计算节点添加至单元数据库

下面的操作需要切换会控制节点,controller 10.37.6.23上操作

openstack compute service list --service nova-compute

openstack学习三-虚拟机上手工最小化安装stein(5)nova-计算节点_第2张图片

五、发现计算节点

 su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova

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': 942b93d2-8ff8-4f0e-9175-1547be28a6a0
Found 0 unmapped computes in cell: 942b93d2-8ff8-4f0e-9175-1547be28a6a0

也可以通过在nova配置文件中修改配置,设置成nova定时自动发现计算节点

[scheduler]

discover_hosts_in_cells_interval = 300

六、总结

     nova计算节点要通过rabbitmq与控制节点通信,所以控制节点的rabbitmq监听端口5672必须开放,否则出现计算节点的计算服务无法启动故障,此时在/var/log/nova/nova.log中可以看到出错提示。

 

 

你可能感兴趣的:(Openstack学习)