首页 > 数据库 > 数据库开发技术 > OpenStack离线Train版安装(七)
官方参考:OpenStack官方安装指南:服务组件,Nova-install,Nova-controller-install,Nova-compute-install,Nova-install-verify。
mysql -uroot -proot
需要创建3个数据库,分别是:nova_api,nova,nova_cell0
create database nova_api;
create database nova;
create database nova_cell0;
grant all privileges on nova_api.* to 'nova'@'localhost' identified by 'nova';
grant all privileges on nova_api.* to 'nova'@'%' identified by 'nova';
grant all privileges on nova.* to 'nova'@'localhost' identified by 'nova';
grant all privileges on nova.* to 'nova'@'%' identified by 'nova';
grant all privileges on nova_cell0.* to 'nova'@'localhost' identified by 'nova';
grant all privileges on nova_cell0.* to 'nova'@'%' identified by 'nova';
flush privileges;
show databases;
select user,host from mysql.user;
exit
(1)在keystone上创建nova用户
cd
source admin-openrc.sh
openstack user create --domain default --password=nova nova
openstack user list
(2)在keystone上将nova用户,配置为admin角色,并添加进service项目以下命令无输出
openstack role add --project service --user nova admin
(3)创建nova计算服务的实体
openstack service create --name nova --description "OpenStack Compute" compute
openstack service list
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 endpoint list
yum install openstack-nova-api openstack-nova-conductor \
openstack-nova-novncproxy openstack-nova-scheduler -y
/etc/nova/nova.conf依次执行以下命令,将其写入脚本,执行脚本
touch controller-node-nova.conf.sh
vim controller-node-nova.conf.sh
controller-node-nova.conf.sh文件内容
#!/bin/bash
#controller-node-nova.conf.sh
openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis osapi_compute,metadata
openstack-config --set /etc/nova/nova.conf api_database connection mysql+pymysql://nova:nova@controller/nova_api
openstack-config --set /etc/nova/nova.conf database connection mysql+pymysql://nova:nova@controller/nova
openstack-config --set /etc/nova/nova.conf DEFAULT transport_url rabbit://openstack:openstack@controller:5672/
openstack-config --set /etc/nova/nova.conf api auth_strategy keystone
openstack-config --set /etc/nova/nova.conf keystone_authtoken www_authenticate_uri http://controller:5000/
openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_url http://controller:5000/
openstack-config --set /etc/nova/nova.conf keystone_authtoken memcached_servers controller:11211
openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_type password
openstack-config --set /etc/nova/nova.conf keystone_authtoken project_domain_name Default
openstack-config --set /etc/nova/nova.conf keystone_authtoken user_domain_name Default
openstack-config --set /etc/nova/nova.conf keystone_authtoken project_name service
openstack-config --set /etc/nova/nova.conf keystone_authtoken username nova
openstack-config --set /etc/nova/nova.conf keystone_authtoken password nova
openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 10.224.24.161
openstack-config --set /etc/nova/nova.conf DEFAULT use_neutron true
openstack-config --set /etc/nova/nova.conf DEFAULT firewall_driver nova.virt.firewall.NoopFirewallDriver
openstack-config --set /etc/nova/nova.conf vnc enabled true
openstack-config --set /etc/nova/nova.conf vnc server_listen '$my_ip'
openstack-config --set /etc/nova/nova.conf vnc server_proxyclient_address '$my_ip'
openstack-config --set /etc/nova/nova.conf glance api_servers http://controller:9292
openstack-config --set /etc/nova/nova.conf oslo_concurrency lock_path /var/lib/nova/tmp
openstack-config --set /etc/nova/nova.conf placement region_name RegionOne
openstack-config --set /etc/nova/nova.conf placement project_domain_name Default
openstack-config --set /etc/nova/nova.conf placement project_name service
openstack-config --set /etc/nova/nova.conf placement auth_type password
openstack-config --set /etc/nova/nova.conf placement user_domain_name Default
openstack-config --set /etc/nova/nova.conf placement auth_url http://controller:5000/v3
openstack-config --set /etc/nova/nova.conf placement username placement
openstack-config --set /etc/nova/nova.conf placement password placement
echo "Result of Configuration"
egrep -v "^#|^$" /etc/nova/nova.conf
注意:openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 10.224.24.161【注意修改为本机管理网的IP地址】
bash controller-node-nova.conf.sh
(1)填充nova-api数据库
su -s /bin/sh -c "nova-manage api_db sync" nova
验证数据库
mysql -unova -pnova -e "use nova_api;show tables;"
(2)注册cell0数据库
su -s /bin/sh -c "nova-manage cell_v2 map_cell0" nova
(3)创建cell1单元
su -s /bin/sh -c "nova-manage cell_v2 create_cell --name=cell1 --verbose" nova
(4)初始化nova数据库
su -s /bin/sh -c "nova-manage db sync" nova
这里遇到两个警告信息,不是很严重,后续版本会修复,再重新执行一下就不会报了
su -s /bin/sh -c "nova-manage db sync" nova
(5)检查确认cell0和cell1注册成功
su -s /bin/sh -c "nova-manage cell_v2 list_cells" nova
返回的数据存储在nova_api数据库的cell_mappings表中
(6)验证数据库
mysql -unova -pnova -e "use nova_api;show tables;"
mysql -uplacement -pplacement -e "use placement;show tables;"
systemctl start \
openstack-nova-api.service \
openstack-nova-scheduler.service \
openstack-nova-conductor.service \
openstack-nova-novncproxy.service
systemctl status \
openstack-nova-api.service \
openstack-nova-scheduler.service \
openstack-nova-conductor.service \
openstack-nova-novncproxy.service
systemctl enable \
openstack-nova-api.service \
openstack-nova-scheduler.service \
openstack-nova-conductor.service \
openstack-nova-novncproxy.service
systemctl list-unit-files |grep openstack-nova* |grep enabled
nova service-list
[root@controller ~]# nova service-list
+--------------------------------------+----------------+------------+----------+---------+-------+----------------------------+-----------------+-------------+
| Id | Binary | Host | Zone | Status | State | Updated_at | Disabled Reason | Forced down |
+--------------------------------------+----------------+------------+----------+---------+-------+----------------------------+-----------------+-------------+
| f177aab0-cf6a-4a47-b31e-929c20fa09d2 | nova-conductor | controller | internal | enabled | up | 2022-09-14T10:13:50.000000 | - | False |
| 71a127f4-0ce6-4e78-8d7a-0cff11ed46fb | nova-scheduler | controller | internal | enabled | up | 2022-09-14T10:13:53.000000 | - | False |
+--------------------------------------+----------------+------------+----------+---------+-------+----------------------------+-----------------+-------------+
[root@controller ~]#
至此,在控制节点安装计算服务nova就完成,继续搭建进入下一篇文档。
有什么吐槽或反馈意见,直接告诉我!
我会解决您说的问题,进一步更好的服务您哦!
温馨提示:如出现二维码失效也可直接添加微信号:ysc13803862469。
原文作者:超哥的IT私房菜;如有侵权,请联系管理员删除。