配置安装nova compute服务

安装controller节点

一、创建nova数据库

[root@controller ~]# mysql -u root -p>>CREATE DATABASE nova_api;>>CREATE DATABASE nova;>>GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost'   IDENTIFIED BY 'NOVA_DBPASS';>>GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%'   IDENTIFIED BY 'NOVA_DBPASS';>>GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost'   IDENTIFIED BY 'NOVA_DBPASS';>>GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%'   IDENTIFIED BY 'NOVA_DBPASS';

NOVA_DBPASS改为自己要设置的密码

二、创建服务实体和api接口

[root@controller ~]#source /root/admin-openrc.sh[root@controller ~]# openstack user create --domain default   --password-prompt nova[root@controller ~]# openstack role add --project service --user nova admin[root@controller ~]# openstack service create --name nova  --description "OpenStack Compute" compute[root@controller ~]# openstack endpoint create --region RegionOne   compute public http://controller:8774/v2.1/%\(tenant_id\)s[root@controller ~]# openstack endpoint create --region RegionOne   compute internal http://controller:8774/v2.1/%\(tenant_id\)s[root@controller ~]# openstack endpoint create --region RegionOne   compute admin http://controller:8774/v2.1/%\(tenant_id\)s

三、安装nova服务

[root@controller ~]# yum install openstack-nova-api openstack-nova-conductor   openstack-nova-console openstack-nova-novncproxy  openstack-nova-scheduler

编辑nova服务配置文件

[root@controller ~]# mv /etc/nova/nova.conf  /etc/nova/nova.conf_bak[DEFAULT]enabled_apis = osapi_compute,metadatarpc_backend = rabbitauth_strategy = keystonemy_ip = 10.0.0.11use_neutron = Truefirewall_driver = nova.virt.firewall.NoopFirewallDriver[api_database]connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova_api  #改为自己数据库的密码[database]connection = mysql+pymysql://nova:NOVA_DBPASS@controller/nova   #改为自己数据库的密码[oslo_messaging_rabbit]rabbit_host = controllerrabbit_userid = openstackrabbit_password = RABBIT_PASS   #改为自己rabbitmq的密码[keystone_authtoken]auth_uri = http://controller:5000auth_url = http://controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = NOVA_PASS   #改为自己nova服务的密码[vnc]vncserver_listen = $my_ipvncserver_proxyclient_address = $my_ip[glance]api_servers = http://controller:9292[oslo_concurrency]lock_path = /var/lib/nova/tmp

同步数据库

[root@controller ~]# su -s /bin/sh -c "nova-manage api_db sync" nova[root@controller ~]# su -s /bin/sh -c "nova-manage db sync" nova

启动服务,并添加到开机启动

[root@controller ~]# systemctl enable openstack-nova-api.service   openstack-nova-consoleauth.service openstack-nova-scheduler.service   openstack-nova-conductor.service openstack-nova-novncproxy.service[root@controller ~]# systemctl start openstack-nova-api.service   openstack-nova-consoleauth.service openstack-nova-scheduler.service   openstack-nova-conductor.service openstack-nova-novncproxy.service

安装compute节点

一、安装nova服务

[root@compute1 ~]# yum install openstack-nova-compute

编辑配置文件

[root@compute1 ~]#mv /etc/nova/nova.conf  /etc/nova/nova.conf_bak[root@compute1 ~]#vim /etc/nova/nova.conf[DEFAULT]rpc_backend = rabbitauth_strategy = keystonemy_ip = MANAGEMENT_INTERFACE_IP_ADDRESS  #填写本机的管理ip,就是10.0.0段的use_neutron = Truefirewall_driver = nova.virt.firewall.NoopFirewallDriver[oslo_messaging_rabbit]rabbit_host = controllerrabbit_userid = openstackrabbit_password = RABBIT_PASS   #填写你rabbit的密码[keystone_authtoken]auth_uri = http://controller:5000auth_url = http://controller:35357memcached_servers = controller:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = novapassword = NOVA_PASS    #填写你nova服务的密码[vnc]enabled = Truevncserver_listen = 0.0.0.0vncserver_proxyclient_address = $my_ipnovncproxy_base_url = [glance]api_servers = http://controller:9292 [oslo_concurrency]lock_path = /var/lib/nova/tmp[libvirt]virt_type = qemu  #在命令行执行egrep -c '(vmx|svm)' /proc/cpuinfo 如果返回0,就是qemu 如果是1,就 是kvm

启动nova相关服务,并加入开机启动。

[root@compute1 ~]# systemctl enable libvirtd.service openstack-nova-compute.service[root@compute1 ~]# systemctl start libvirtd.service openstack-nova-compute.service

二、验证

在controller节点执行

[root@controller ~]# source /root/admin-openrc.sh[root@controller ~]# openstack compute service list+----+------------------+------------+----------+---------+-------+----------------------------+| Id | Binary           | Host       | Zone     | Status  | State | Updated At                 |+----+------------------+------------+----------+---------+-------+----------------------------+|  1 | nova-consoleauth | controller | internal | enabled | up    | 2016-06-16T11:55:21.000000 ||  2 | nova-conductor   | controller | internal | enabled | up    | 2016-06-16T11:55:18.000000 ||  3 | nova-scheduler   | controller | internal | enabled | up    | 2016-06-16T11:55:25.000000 ||  6 | nova-compute     | compute1   | nova     | enabled | up    | 2016-06-16T11:55:22.000000 ||  7 | nova-compute     | compute2   | nova     | enabled | down  | 2016-06-16T08:41:19.000000 |+----+------------------+------------+----------+---------+-------+----------------------------+我的compute2暂时没启动所以是down状态。

出现上面信息表示成功。

network服务安装请参考: