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组件部署相关推荐

  1. OpenStack T版—Nova组件部署详解

    目录 一.Nova计算服务 1.1.Nova系统架构 1.2.Nova组件介绍-API 1.3.Nova组件介绍-Scheduler 1.3.1.Nova调度器的类型 1.3.2.过滤器调度器调度过程 ...

  2. Openstack组件部署 — Overview和前期环境准备

    目录 目录 前言 软件环境 Openstack 简介 Openstack 架构 Openstack Install Overview 创建Node虚拟机 环境准备 基础设置 Install OpenS ...

  3. Openstack组件部署 — Networking service_Compute Node

    目录 目录 前文列表 安装组件 配置通用组件 配置自服务网络选项 配置Linux 桥接代理 配置Nova使用网络 完成安装 验证操作Execute following commands on Cont ...

  4. Openstack组件部署 — Netwotking service组件介绍与网络基本概念

    目录 目录 前文列表 Openstack Networking serivce 基本的Neutron概念 Neutron的抽象对象 网络networks 子网subnets 路由器routers 端口 ...

  5. Openstack组件部署 — Nova_Install and configure a compute node

    目录 目录 前文列表 Prerequisites 先决条件 Install and configure a compute node Install the packages Edit the etc ...

  6. Openstack组件部署 — Keystone功能介绍与认证实现流程

    目录 目录 前文列表 Keystone认证服务 Keystone认证服务中的概念 Keystone的验证过程 简单来说 前文列表 Openstack组件部署 - Overview和前期环境准备 Ope ...

  7. 传统公司部署OpenStack(t版)简易介绍(三)——Glance组件部署

    传统公司部署OpenStack(t版)简易介绍(三)--Glance组件部署 一.创建数据库实例和数据库用户 二.创建用户.修改配置文件 总结:Glance部署思路 一.创建数据库实例和数据库用户 m ...

  8. 传统公司部署OpenStack(t版)简易介绍(二)——Keystone组件部署

    传统公司部署OpenStack(t版)简易介绍(二)--Keystone组件部署 一.OpenStack组件安装的顺序 二.创建数据库实例和数据库用户(ct控制节点) 三.安装.配置keystone. ...

  9. openstack“T版“Placement组件部署

    文章目录 OpenStack-Placement组件部署 OpenStack-Placement组件部署 一.创建数据库实例和数据库用户 [root@ct ~]# mysql -uroot -p Ma ...

最新文章

  1. pytorch 测试每一类_DeepFM全方面解析(附pytorch源码)
  2. jquery1.43源码分析之工具方法
  3. Linux下ntpdate时间同步
  4. jsp mysql论坛_使用SSM和ajax做一个简易的论坛-01(简介和建表)
  5. 3说明书_知行翻译:做化妆品说明书翻译时,这3点需要谨记
  6. unlink(file_name)
  7. 用了这么多年的PCA可视化竟然是错的!!!
  8. webpack打包缓存_webpack独立打包与缓存处理
  9. icon 做成html形式,一段生成iconfont预览html的代码
  10. [转载]更改XP默认字体为微软雅黑
  11. 用户名登陆时如何在后面加一个小红*_最后一个登陆框引起的血案
  12. Linux系统中僵尸进程的查看与删除
  13. 大学物理计算机仿真实验报告,大学物理实验实验报告模板.doc
  14. 破解/忘记Win7密码
  15. 4g网络什么时候淘汰_4g网络手机。什么时候淘汰
  16. jxl 冻结单元格_如何在Word中冻结表格中单元格的大小
  17. 阿里云虚拟主机部署php项目分享
  18. 蚩尤战团--管理分布
  19. 实验室家具系列之通风柜
  20. 李宏毅2023春季机器学习笔记 - 01生成AI(ChatGPT)

热门文章

  1. 在你们眼中,杭州和苏州都是江南名城,有什么区别?
  2. vs2015安装使用体验
  3. 特征选择(模型输入参数的分析选择)方法汇总
  4. [分享]包饺子全攻略
  5. 同花顺股票交易接口定义被类实现
  6. Webpack5快速入门 (二) CSS相关loader的使用及兼容性处理 手把手带你打开前端工程化的大门
  7. 统计字符串中的大小写字母个数
  8. 数据库闯新世纪----施伯乐、周傲英、朱杨勇
  9. Android应用开发详解【郭宏志】(奋斗之小鸟)_PDF 电子书
  10. boss直聘上看信息 但是不会显示已读