ITPub博客

首页 > 数据库 > 数据库开发技术 > OpenStack离线Train版安装(七)

OpenStack离线Train版安装(七)

原创 数据库开发技术 作者:shuchaoyang 时间:2022-10-29 22:02:32 0 删除 编辑

7 控制节点-计算服务Nova安装

官方参考:OpenStack官方安装指南:服务组件,Nova-install,Nova-controller-install,Nova-compute-install,Nova-install-verify。

7.1 创建Nova相关数据库、凭据与API端点

7.1.1 创建数据库并授权

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

7.1.2 创建计算服务凭据

(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

7.1.3 创建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 endpoint list

7.2 nova相关软件安装与配置

7.2.1 安装nova相关软件

yum install openstack-nova-api openstack-nova-conductor \
openstack-nova-novncproxy openstack-nova-scheduler -y

7.2.2 配置文件修改

/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

7.2.3 同步创建相关数据库(注意顺序)

(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;"

7.2.4 启动计算服并设置开机自启

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

7.2.5 nova安装后检查

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 ~]#

7.3 控制节点Nova服务安装完成

至此,在控制节点安装计算服务nova就完成,继续搭建进入下一篇文档。


有什么吐槽或反馈意见,直接告诉我!

我会解决您说的问题,进一步更好的服务您哦!

温馨提示:如出现二维码失效也可直接添加微信号:ysc13803862469。



原文作者:超哥的IT私房菜;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论
专注于IT系统集成、运维、架构二十年的IT职场老兵,拥有CCNA、OCA、OCP、PGCA、PGCE认证证书,公众号:超哥的IT私房菜,知识星球:超哥的IT私房菜,目前是多家IT厂商的咨询顾问。

注册时间:2021-08-27

  • 博文量
    552
  • 访问量
    303486