OpenStack Victoria版——5.控制节点-Placement服务组件

684 阅读3分钟

这是我参与11月更文挑战的第26天,活动详情查看:2021最后一次更文挑战


5.控制节点-Placement服务组件

更多步骤:OpenStack Victoria版安装部署系列教程

OpenStack部署系列文章
OpenStack Victoria版 安装部署系列教程
OpenStack Ussuri版 离线安装部署系列教程(全)
OpenStack Train版 离线安装部署系列教程(全)
欢迎留言沟通,共同进步。


Placement服务的作用是跟踪资源(如计算节点,存储资源池,网络资源池等)的使用情况,提供自定义资源的能力,为分配资源提供服务。Placement在openstack的Stein版本之前是属于Nova组件的一部分。

在安装Nova之前需要先安装此组件。

@[toc]

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

1.创建placement数据库并授权

使用mysql数据库的root账户登录,密码为控制节点环境准备时初始化mysql数据设置的密码为root。

mysql -u root -proot

创建placement数据库并授权,设置密码为111111

CREATE DATABASE placement;
GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'localhost' IDENTIFIED BY '111111';
GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'%' IDENTIFIED BY '111111';

flush privileges;
show databases;
select user,host from mysql.user;
exit

2.创建服务凭据

同样,创建并注册该项目的服务证书

域用户、项目、实体

先加载环境变量source /admin-openrc.sh

cd 
source admin-openrc.sh

创建一个plancement用户并设置密码为111111

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

使用admin角色将Placement用户添加到服务项目中

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

创建Plancement服务

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

3.创建placement项目的endpoint(API端口)

openstack endpoint create --region RegionOne placement public http://controller:8778
openstack endpoint create --region RegionOne placement internal http://controller:8778
openstack endpoint create --region RegionOne placement admin http://controller:8778
openstack endpoint list

placement相关软件安装与配置

1.安装placement软件

dnf install openstack-placement-api -y

2.配置文件修改

(1)/etc/placement/placement.conf
修改前先备份 编辑vim /etc/placement/placement.conf文件,文件700行左右

cp /etc/placement/placement.conf /etc/placement/placement.conf.bak

命令行修改文件内容

crudini --set /etc/placement/placement.conf placement_database connection mysql+pymysql://placement:111111@controller/placement
crudini --set /etc/placement/placement.conf api auth_strategy keystone
crudini --set /etc/placement/placement.conf keystone_authtoken auth_url http://controller:5000/v3
crudini --set /etc/placement/placement.conf keystone_authtoken memcached_servers controller:11211
crudini --set /etc/placement/placement.conf keystone_authtoken auth_type password
crudini --set /etc/placement/placement.conf keystone_authtoken project_domain_name Default
crudini --set /etc/placement/placement.conf keystone_authtoken user_domain_name Default
crudini --set /etc/placement/placement.conf keystone_authtoken project_name service
crudini --set /etc/placement/placement.conf keystone_authtoken username placement
crudini --set /etc/placement/placement.conf keystone_authtoken password 111111
echo "Result of Configuration"
grep '^[a-z]' /etc/placement/placement.conf

(2)nova的虚拟主机配置文件

如果下面检查placement服务状态出现问题可以使用下面方法解决

编辑/etc/httpd/conf.d/00-placement-api.conf V版本安装完成后会自动生成:/etc/httpd/conf.d/00-placement-api.conf文件
由于有个包的bug需要配置修改文件,需要修改nova虚拟主机配置文件,增加内容,完整的文件内容如下:

cp /etc/httpd/conf.d/00-placement-api.conf /etc/httpd/conf.d/00-placement-api.conf.bak
vim /etc/httpd/conf.d/00-placement-api.conf

#在#SSLCertificateKeyFile ...底下添加

#Placement API
<Directory /usr/bin>
   <IfVersion >= 2.4>
      Require all granted
   </IfVersion>
   <IfVersion < 2.4>
      Order allow,deny
      Allow from all
   </IfVersion>
</Directory>

3.同步placement数据库

su -s /bin/sh -c "placement-manage db sync" placement
mysql -uplacement -p111111 -e "use placement;show tables;"

4.重启Apache服务(httpd)

如果重启失败,注意防火墙配置

systemctl restart httpd
systemctl status httpd

5.检查Placement服务状态

placement-status upgrade check

出现如下图所示,说明安装配置成功 在这里插入图片描述

placement服务安装完成

使用VMware虚拟机的话,现在可以关机做快照。

poweroff