资源管理Placement部署(Nova)

一、Placement组件简介

最早在 Newton 版本被引入 openstack/nova repo,以 API 的形式存在,所以也常被称为 Placement API。它参与到 nova-scheduler 选择目标主机的调度流程中,负责跟踪记录 Resource Provider 的 Inventory 和 Usage,并使用不同的 Resource Classes 来划分资源类型,使用不同的 Resource Traits 来标记资源特征。
在2018/11,Placement API 开始了 openstack/nova repo 剥离流程,从 Placement API 蜕变为 OpenStack Placement。虽然现在的 OpenStack Placement 还不算稳定,但毋容置疑,Placement 就是 OpenStack 云平台统一资源管理的未来。

二、环境

一、环境配置
控制节点ct

CPU 双核双线程-CPU虚拟化开启
内存 8G
硬盘 300G+1024G(CEPH块存储)
双网卡 VM1-(局域网)192.168. 86.11/NAT-192.168.109.12
操作系统 Centos 7.6(1810)-最小化安装

控制节点c1

CPU 双核双线程-CPU虚拟化开启
内存 8G
硬盘 300G+1024G(CEPH块存储)
双网卡 VM1-(局域网)192.168.86.22 /NAT-192.168.109.22
操作系统 Centos 7.6(1810)-最小化安装

控制节点c2

CPU 双核双线程-CPU虚拟化开启
内存 8G
硬盘 300G+1024G(CEPH块存储)
双网卡 VM1-(局域网)192.168.86.33 /NAT-192.168.109.32
操作系统 Centos 7.6(1810)-最小化安装

三、部署思路

  • 1、创建数据库、授权
  • 2、创建openstack用户、授权、管理
  • 3、修改placement配置文件/etc/placement/placement.conf
  • 4、修改apache配置文件
  • 5、测试

四、Placement组件部署

ct

创建数据库实例和数据库用户

mysql -uroot -p

CREATE DATABASE placement;
GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'localhost' IDENTIFIED BY 'PLACEMENT_DBPASS';
GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'%' IDENTIFIED BY 'PLACEMENT_DBPASS';
flush privileges;
exit

在这里插入图片描述

创建Placement服务用户和API的endpoint

#创建placement用户、授权、创建placement服务
openstack user create --domain default --password PLACEMENT_PASS placement

openstack role add --project service --user placement admin

openstack service create --name placement --description "Placement API" placement

在这里插入图片描述

#注册API端口到placement的service中;注册的信息会写入到mysql中
openstack endpoint create --region RegionOne placement public http://ct:8778
openstack endpoint create --region RegionOne placement internal http://ct:8778
openstack endpoint create --region RegionOne placement admin http://ct:8778

在这里插入图片描述

安装placement服务修改placement配置文件

yum -y install openstack-placement-api

在这里插入图片描述

#修改placement配置文件/etc/placement/placement.conf
cp -a /etc/placement/placement.conf{
    
    ,.bak}
grep -Ev '^$|#' /etc/placement/placement.conf.bak > /etc/placement/placement.conf

在这里插入图片描述

#添加/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

cat /etc/placement/placement.conf

在这里插入图片描述

#导入数据库
su -s /bin/sh -c "placement-manage db sync" placement

在这里插入图片描述

修改Apache配置文件

cd /etc/httpd/conf.d
vim 00-placement-api.conf 

==末行添加==
<Directory /usr/bin>			
<IfVersion >= 2.4>				
	Require all granted
</IfVersion>
<IfVersion < 2.4>				
	Order allow,deny				
	Allow from all		
</IfVersion>
</Directory>

在这里插入图片描述

#重新启动apache
systemctl restart httpd

在这里插入图片描述

测试

#curl 测试访问
curl ct:8778

#查看端口占用(netstat、lsof)
netstat -natp | grep 8778

#检查placement状态
placement-status upgrade check

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_51616026/article/details/114997550