OpenStack——nove组件部署
OpenStack——nove组件部署
- 一、部署Placement
- 1、创建数据库实例和用户
- 2、创建placement服务用户和API的endpoint
- 3、安装placement服务
- 4、导入数据库
- 5、修改Apache配置文件
- 6、启动Apache
- 7、检验
- 二、nova控制节点服务配置
- 1、创建nova数据库,并授权
- 2、管理nova用户
- 3、安装nova组件
- 三、配置计算节点nova服务c1
- 1、安装nova-compute组件
- 2、修改配置文件
- 3、重启服务
- 4、在控制节点进行查看
- 四、总结
- 1、placement
- 2、nova
一、部署Placement
#在部署nova之间一定要先部署placement这个组件,否则后续步骤会报错
1、创建数据库实例和用户
[root@ct ~]# mysql -u root -p123456
MariaDB [(none)]> CREATE DATABASE Placement;
MariaDB [Placement]> GRANT ALL PRIVILEGES ON placement.* TO ‘placement’@‘localhost’ IDENTIFIED BY ‘PLACEMENT_DBPASS’;
MariaDB [Placement]> GRANT ALL PRIVILEGES ON placement.* TO ‘placement’@’%’ IDENTIFIEED BY ‘PLACEMENT_DBPASS’;
MariaDB [Placement]> FLUSH PRIVILEGES;
MariaDB [Placement]> EXIT
2、创建placement服务用户和API的endpoint
创建placement用户
[root@ct ~]# openstack user create --domain default --password PLACEMENT_PASS placement
给用户授予admin权限
[root@ct ~]# openstack role add --project service --user placement admin
创建一个类型为placement的服务
[root@ct ~]# openstack service create --name placement --description “Placement API” placement
注册API端口到placement的service中
#端口分为公共的、私有的、管理的
[root@ct ~]# openstack endpoint create --region RegionOne placement public http://ct:8778
[root@ct ~]# openstack endpoint create --region RegionOne placement internal http://ct:8778
[root@ct ~]# openstack endpoint create --region RegionOne placement admin http://ct:8778
3、安装placement服务
[root@ct ~]# yum -y install openstack-placement-api
#修改配置文件
[root@ct ~]# cp -a /etc/placement/placement.conf{,.bak}
[root@ct ~]# grep -Ev ‘^$|#’ /etc/placement/placement.conf.bak > /etc/placement/placement.conf
#在配置文件中添加内容
openstack-config --set /etc/placement/placement.conf placement_database connection mysql+pymysql://placement:PLACEMENT_DBPASS@ct/placement
openstack-config --set /etc/placement/placement.conf api auth_strategy keystone
openstack-config --set /etc/placement/placement.conf keystone_authtoken auth_url http://ct:5000/v3
openstack-config --set /etc/placement/placement.conf keystone_authtoken memcached_servers ct:11211
openstack-config --set /etc/placement/placement.conf keystone_authtoken auth_type password
openstack-config --set /etc/placement/placement.conf keystone_authtoken project_domain_name Default
openstack-config --set /etc/placement/placement.conf keystone_authtoken user_domain_name Default
openstack-config --set /etc/placement/placement.conf keystone_authtoken project_name service
openstack-config --set /etc/placement/placement.conf keystone_authtoken username placement
openstack-config --set /etc/placement/placement.conf keystone_authtoken password PLACEMENT_PASS
4、导入数据库
[root@ct ~]# su -s /bin/sh -c “placement-manage db sync” placement
5、修改Apache配置文件
[root@ct ~]# cd /etc/httpd/conf.d/
[root@ct conf.d]# vim 00-placement-api.conf
<Directory /usr/bin> #此处是bug,必须添加下面的配置来启用对placement api的访问,否则在访问apache的api时会报403;添加在文件的最后即可
= 2.4>
Require all granted<IfVersion < 2.4> #apache版本;允许apache访问/usr/bin目录;否则/usr/bin/placement-api将不允许被访问
Order allow,deny
Allow from all #允许apache访问
6、启动Apache
[root@ct conf.d]# systemctl restart httpd.service
7、检验
#curl 测试访问
[root@ct conf.d]# curl ct:8778
#查看端口
[root@ct conf.d]# netstat -natp | grep 8778
#查看placement状态
[root@ct conf.d]# placement-status upgrade check
二、nova控制节点服务配置
1、创建nova数据库,并授权
[root@ct ~]# mysql -u root -p123123
MariaDB [(none)]> CREATE DATABASE nova_api;
MariaDB [(none)]> CREATE DATABASE nova;
MariaDB [(none)]> CREATE DATABASE nova_cell0;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova’@‘localhost’ IDENTIFIED BY ‘NOVA_DBPASS’;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_api.* TO ‘nova’@’%’ IDENTIFIED BY ‘NOVA_DBPASS’;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@‘localhost’ IDENTIFIED BY ‘NOVA_DBPASS’;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova.* TO ‘nova’@’%’ IDENTIFIED BY ‘NOVA_DBPASS’;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO ‘nova’@‘localhost’ IDENTIFIED BY ‘NOVA_DBPASS’;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON nova_cell0.* TO ‘nova’@’%’ IDENTIFIED BY ‘NOVA_DBPASS’;
MariaDB [(none)]> flush privileges;
2、管理nova用户
#创建nova用户
[root@ct ~]# openstack user create --domain default --password NOVA_PASS nova
#给用户添加admin权限
[root@ct ~]# openstack role add --project service --user nova admin
#创建nova服务
openstack service create --name nova --description “OpenStack Compute” compute
#添加断掉到nova服务中
[root@ct ~]# openstack endpoint create --region RegionOne compute public http://ct:8774/v2.1
[root@ct ~]# openstack endpoint create --region RegionOne compute internal http://ct:8774/v2.1
[root@ct ~]# openstack endpoint create --region RegionOne compute admin http://ct:8774/v2.1
3、安装nova组件
[root@ct ~]# yum -y install openstack-nova-api openstack-nova-conductor openstack-nova-novncproxy openstack-nova-scheduler
①修改nova配置文件
[root@ct ~]# cp -a /etc/nova/nova.conf{,.bak}
[root@ct ~]# grep -Ev ‘^$|#’ /etc/nova/nova.conf.bak > /etc/nova/nova.conf
#在nova.conf中添加
openstack-config --set /etc/nova/nova.conf DEFAULT enabled_apis osapi_compute,metadata
openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.100.111
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 DEFAULT transport_url rabbit://openstack:RABBIT_PASS@ct
openstack-config --set /etc/nova/nova.conf api_database connection mysql+pymysql://nova:NOVA_DBPASS@ct/nova_api
openstack-config --set /etc/nova/nova.conf database connection mysql+pymysql://nova:NOVA_DBPASS@ct/nova
openstack-config --set /etc/nova/nova.conf placement_database connection mysql+pymysql://placement:PLACEMENT_DBPASS@ct/placement
openstack-config --set /etc/nova/nova.conf api auth_strategy keystone
openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_url http://ct:5000/v3
openstack-config --set /etc/nova/nova.conf keystone_authtoken memcached_servers ct: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_PASS
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://ct: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://ct:5000/v3
openstack-config --set /etc/nova/nova.conf placement username placement
openstack-config --set /etc/nova/nova.conf placement password PLACEMENT_PASS
②初始化数据库
#初始化nova_api的数据库
[root@ct ~]# su -s /bin/sh -c “nova-manage api_db sync” nova
③注册cell0数据库
#nova服务内部把资源划分到不同的cell中,把计算节点划分到不同的cell中;openstack内部基于cell把计算节点进行逻辑上的分组
[root@ct ~]# su -s /bin/sh -c “nova-manage cell_v2 map_cell0” nova
#创建cell1单元格
[root@ct ~]# su -s /bin/sh -c “nova-manage cell_v2 create_cell --name=cell1 --verbose” nova
#初始化nova数据库;可以通过 /var/log/nova/nova-manage.log 日志判断是否初始化成功
[root@ct ~]# su -s /bin/sh -c “nova-manage db sync” nova
#可使用以下命令验证cell0和cell1是否注册成功
[root@ct ~]# su -s /bin/sh -c “nova-manage cell_v2 list_cells” nova
④启动nova服务
[root@ct ~]# systemctl enable openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
[root@ct ~]# systemctl start openstack-nova-api.service openstack-nova-scheduler.service openstack-nova-conductor.service openstack-nova-novncproxy.service
⑤检查端口号
[root@ct ~]# netstat -tnlup|egrep ‘8774|8775’
三、配置计算节点nova服务c1
1、安装nova-compute组件
[root@c1 ~]# yum -y install openstack-nova-compute
2、修改配置文件
cp -a /etc/nova/nova.conf{,.bak}
grep -Ev ‘^$|#’ /etc/nova/nova.conf.bak > /etc/nova/nova.conf
openstack-config --set /etc/nova/nova.conf DEFAULT my_ip 192.168.100.222
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 api auth_strategy keystone
openstack-config --set /etc/nova/nova.conf keystone_authtoken auth_url http://ct:5000/v3
openstack-config --set /etc/nova/nova.conf keystone_authtoken memcached_servers ct: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_PASS
openstack-config --set /etc/nova/nova.conf vnc enabled true
openstack-config --set /etc/nova/nova.conf vnc server_listen 0.0.0.0
openstack-config --set /etc/nova/nova.conf vnc server_proxyclient_address ’ $my_ip’
openstack-config --set /etc/nova/nova.conf vnc novncproxy_base_url http://192.168.100.111:6080/vnc_auto.html
openstack-config --set /etc/nova/nova.conf glance api_servers http://ct: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://ct:5000/v3
openstack-config --set /etc/nova/nova.conf placement username placement
openstack-config --set /etc/nova/nova.conf placement password PLACEMENT_PASS
openstack-config --set /etc/nova/nova.conf libvirt virt_type qemu
3、重启服务
[root@c1 ~]# systemctl enable libvirtd.service openstack-nova-compute.service
[root@c1 ~]# systemctl start libvirtd.service openstack-nova-compute.service
4、在控制节点进行查看
[root@ct ~]# openstack compute service list --service nova-compute
#扫描当前openstack中有哪些计算节点可用,发现后会把计算节点创建到cell中,后面就可以在cell中创建虚拟机;相当于openstack内部对计算节点进行分组,把计算节点分配到不同的cell中
[root@ct ~]# su -s /bin/sh -c “nova-manage cell_v2 discover_hosts --verbose” nova
#修改配置文件,进行自动扫描节点
[root@ct ~]# vim /etc/nova/nova.conf
[scheduler]
discover_hosts_in_cells_interval = 300[root@ct ~]# systemctl restart openstack-nova-api.service
#验证计算节点服务,查看每个节点的状态
[root@ct ~]# openstack compute service list
#查看各个组件api是否正常
[root@ct ~]# openstack catalog list
#检查是否能够查看到镜像
[root@ct ~]# openstack image list
#查看cell的api和placement的api是否正常,只要其中一个有误,后期无法创建虚拟机
[root@ct ~]# nova-status upgrade check
四、总结
1、placement
Placement提供了placement-apiWSGI脚本,用于与Apache,nginx或其他支持WSGI的Web服务器一起运行服务(通过nginx或apache实现python入口代理)。
根据用于部署OpenStack的打包解决方案,WSGI脚本可能位于/usr/bin 或中/usr/local/bin
Placement服务是从 S 版本,从nova服务中拆分出来的组件,作用是收集各个node节点的可用资源,把node节点的资源统计写入到mysql,Placement服务会被nova scheduler服务进行调用 Placement服务的监听端口是8778
需修改的配置文件:
① placement.conf
主要修改思路:
Keystone认证相关(url、HOST:PORT、域、账号密码等)
对接数据库(位置)
② 00-placement-api.conf
主要修改思路:
Apache权限、访问控制
2、nova
Nova分为控制节点、计算节点
Nova组件核心功能是调度资源,在配置文件中需要体现的部分:指向认证节点位置(URL、ENDPOINT)、调用服务、注册、提供支持等,配置文件中的所有配置参数基本都是围绕此范围进行设置
OpenStack——nove组件部署相关推荐
- OpenStack T版—Nova组件部署详解
目录 一.Nova计算服务 1.1.Nova系统架构 1.2.Nova组件介绍-API 1.3.Nova组件介绍-Scheduler 1.3.1.Nova调度器的类型 1.3.2.过滤器调度器调度过程 ...
- Openstack组件部署 — Overview和前期环境准备
目录 目录 前言 软件环境 Openstack 简介 Openstack 架构 Openstack Install Overview 创建Node虚拟机 环境准备 基础设置 Install OpenS ...
- Openstack组件部署 — Networking service_Compute Node
目录 目录 前文列表 安装组件 配置通用组件 配置自服务网络选项 配置Linux 桥接代理 配置Nova使用网络 完成安装 验证操作Execute following commands on Cont ...
- Openstack组件部署 — Netwotking service组件介绍与网络基本概念
目录 目录 前文列表 Openstack Networking serivce 基本的Neutron概念 Neutron的抽象对象 网络networks 子网subnets 路由器routers 端口 ...
- Openstack组件部署 — Nova_Install and configure a compute node
目录 目录 前文列表 Prerequisites 先决条件 Install and configure a compute node Install the packages Edit the etc ...
- Openstack组件部署 — Keystone功能介绍与认证实现流程
目录 目录 前文列表 Keystone认证服务 Keystone认证服务中的概念 Keystone的验证过程 简单来说 前文列表 Openstack组件部署 - Overview和前期环境准备 Ope ...
- 传统公司部署OpenStack(t版)简易介绍(三)——Glance组件部署
传统公司部署OpenStack(t版)简易介绍(三)--Glance组件部署 一.创建数据库实例和数据库用户 二.创建用户.修改配置文件 总结:Glance部署思路 一.创建数据库实例和数据库用户 m ...
- 传统公司部署OpenStack(t版)简易介绍(二)——Keystone组件部署
传统公司部署OpenStack(t版)简易介绍(二)--Keystone组件部署 一.OpenStack组件安装的顺序 二.创建数据库实例和数据库用户(ct控制节点) 三.安装.配置keystone. ...
- openstack“T版“Placement组件部署
文章目录 OpenStack-Placement组件部署 OpenStack-Placement组件部署 一.创建数据库实例和数据库用户 [root@ct ~]# mysql -uroot -p Ma ...
最新文章
- pytorch 测试每一类_DeepFM全方面解析(附pytorch源码)
- jquery1.43源码分析之工具方法
- Linux下ntpdate时间同步
- jsp mysql论坛_使用SSM和ajax做一个简易的论坛-01(简介和建表)
- 3说明书_知行翻译:做化妆品说明书翻译时,这3点需要谨记
- unlink(file_name)
- 用了这么多年的PCA可视化竟然是错的!!!
- webpack打包缓存_webpack独立打包与缓存处理
- icon 做成html形式,一段生成iconfont预览html的代码
- [转载]更改XP默认字体为微软雅黑
- 用户名登陆时如何在后面加一个小红*_最后一个登陆框引起的血案
- Linux系统中僵尸进程的查看与删除
- 大学物理计算机仿真实验报告,大学物理实验实验报告模板.doc
- 破解/忘记Win7密码
- 4g网络什么时候淘汰_4g网络手机。什么时候淘汰
- jxl 冻结单元格_如何在Word中冻结表格中单元格的大小
- 阿里云虚拟主机部署php项目分享
- 蚩尤战团--管理分布
- 实验室家具系列之通风柜
- 李宏毅2023春季机器学习笔记 - 01生成AI(ChatGPT)