云系列--- Openstack Placement组件 | 参数说明 | 详细讲解

(29) 2024-04-26 07:01:01

Placement

  • 前言
  • 一、创建数据库实例和用户
  • 二、创建 Placement 服务用户和 API 的 endpoint
    • 1.创建placement用户
    • 2.让placement用户对service项目拥有admin权限
    • 3.创建一个placement服务,服务类型为placement
    • 4.注册API端口到placement的service中
  • 三、安装 Placement 服务及修改配置文件
    • 1.安装服务
    • 2.修改placement配置文件
    • 3.检查placement配置文件
  • 四、导入数据库及修改 Apache 配置文件
    • 1.导入数据库
    • 2.修改Apache配置文件:00-placemenct-api.conf(安装完placement服务后会自动创建该文件)
    • 3.重启apache
  • 五、测试访问、检查端口及 Placement 的状态
    • 1.curl测试访问
    • 2.检查端口
    • 3.检查palcement的状态

前言

【Placement】服务 是从【nova】服务中拆分出来的组件,作用是收集各个【node】节点的可用资源,把【node】节点的资源统计写入到【MySQL】

【Placement】服务会被【nova scheduler】服务进行调用

【Placement】服务的监听端口是【8778】

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

//ct(192.168.61.55):

mysql -uroot -p1

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';
#赋予用户远程权限:
#允许用户'placement'远程登录(%)连接到mysql服务器中'placement,并使用'PLACEMENT_DBPASS'作为密码

flush privileges;
#刷新数据库的系统权限相关表,否则可能会出现拒绝访问的现象
exit;
#退出MariaDB数据库,或'ctrl+c'

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第1张

二、创建 Placement 服务用户和 API 的 endpoint

1.创建placement用户

openstack user create --domain default --password PLACEMENT_PASS placement

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第2张

2.让placement用户对service项目拥有admin权限

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

3.创建一个placement服务,服务类型为placement

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

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第3张

4.注册API端口到placement的service中

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
#注册的信息会写入到mysql中

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第4张

三、安装 Placement 服务及修改配置文件

1.安装服务

yum -y install openstack-placement-api
#记得重复安装两次

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第5张

2.修改placement配置文件

cp -a /etc/placement/placement.conf{ 
   ,.bak}
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

3.检查placement配置文件

cat /etc/placement/placement.conf

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第6张

四、导入数据库及修改 Apache 配置文件

1.导入数据库

su -s /bin/sh -c "placement-manage db sync" placement
#可能会Warning提示你,这个没问题的,你可以再执行一次看看就没有Warning了

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第7张

2.修改Apache配置文件:00-placemenct-api.conf(安装完placement服务后会自动创建该文件)

vim /etc/httpd/conf.d/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>

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第8张

3.重启apache

systemctl restart httpd

五、测试访问、检查端口及 Placement 的状态

1.curl测试访问

curl ct:8778

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第9张

2.检查端口

netstat -natp | grep 8778
或
lsof -i:8778

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第10张

3.检查palcement的状态

placement-status upgrade check

云系列--- Openstack Placement组件 | 参数说明 | 详细讲解 (https://mushiming.com/)  第11张

THE END

发表回复