1、实验目的:mysql
1、理解nova服务在OpenStack中的做用sql
2、掌握在控制节点上安装配置nova的方法和步骤数据库
3、掌握在计算节点上安装与配置nova的方法和步骤api
2、实验步骤:服务器
1、在controller节点上为nova建立数据库,并建立管理帐号,参考命令dom
创建nova的数据库:spa
#mysql -u root -p (用数据库链接客户端以 root 用户链接到数据库服务器)3d
#CREATE DATABASE nova_api;rest
#CREATE DATABASE nova; (建立 nova_api 和 nova 数据库:)code
#CREATE DATABASE nova_cell0;
对数据库进行正确的受权:
#GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'localhost' \
IDENTIFIED BY '密码';
#GRANT ALL PRIVILEGES ON nova_api.* TO 'nova'@'%' \
IDENTIFIED BY '密码';
#GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'localhost' \
IDENTIFIED BY '密码';
#GRANT ALL PRIVILEGES ON nova.* TO 'nova'@'%' \
IDENTIFIED BY '密码';
#GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'localhost' \
IDENTIFIED BY '密码';
#GRANT ALL PRIVILEGES ON nova_cell0.* TO 'nova'@'%' \
IDENTIFIED BY '密码';
建立三个数据库:
受权:
2、在keystone中为nova建立用户、角色、服务和API接口,参考命令
#. admin-openrc
建立nova用户:
#openstack user create --domain default --password-prompt nova
#openstack role add --project service --user nova admin
把nova用户添加到admin角色中:
建立 nova 服务实体:
#openstack service create --name nova --description "OpenStack Compute" compute
建立 Compute 服务 API 端点:
#openstack endpoint create --region RegionOne \
compute public http://controller:8774/v2.1
#openstack endpoint create --region RegionOne \
compute internal http://controller:8774/v2.1
#openstack endpoint create --region RegionOne \
compute admin http://controller:8774/v2.1
#openstack user create --domain default --password-prompt placement
#openstack role add --project service --user placement admin
#openstack service create --name placement --description "Placement API" placement
#openstack endpoint create --region RegionOne placement public http://controller:8778
# openstack endpoint create --region RegionOne placement internal http://controller:8778
#openstack endpoint create --region RegionOne placement admin http://controller:8778
3、在控制节点上安装nova,参考命令以下
# yum install openstack-nova-api openstack-nova-conductor \
openstack-nova-console openstack-nova-novncproxy \
openstack-nova-scheduler openstack-nova-placement-api
4、参考文档修改配置文件
5、启动nova服务
重启httpd 服务:
#systemctl restart httpd
填充nova-api数据库:
#su -s /bin/sh -c "nova-manage api_db sync" nova
注册cell0数据库:
#su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova
建立cell1单元格
#su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
填充新星数据库:
su -s /bin/sh -c "nova-manage db sync" nova
验证nova cell0和cell1是否正确注册:
nova-manage cell_v2 list_cells
正确注册:
设置开机自启动
#systemctl enable openstack-nova-api.service \ openstack-nova-consoleauth.service openstack-nova-scheduler.service \ openstack-nova-conductor.service openstack-nova-novncproxy.service
启动服务
# systemctl start openstack-nova-api.service \ openstack-nova-consoleauth.service openstack-nova-scheduler.service \ openstack-nova-conductor.service openstack-nova-novncproxy.service
6、安装并配置计算节点
7、验证
#. admin-openrc
#openstack compute service list
这里有问题,status应该为up,后来查阅了不少资料修改正确
此供参考
输出正常即为配置正确
#openstack catalog list
#openstack image list
#nova-status upgrade check