OpenStack Train版离线部署|5控制节点-Placement服务组件

568 阅读4分钟

欢迎留言讨论,期待与你共同进步掘金人的第一篇博客 - 掘金 (juejin.cn)

本系列文章包教你如何从零开始搭建一套OpenStack开发环境,涉及多个OpenStack。
当前教程中使用的OpenStack的安装版本为第20个版本Train,简称T版本。
Release Note
Train,Originally Released: 16 October, 2019
Ussuri,Originally Released: 13 May, 2020
Victoria,Originally Released: 14 October, 2020

掘金社区


掘金社区:OpenStack Train版离线部署|系列教程「全」
掘金社区:OpenStack Ussuri版离线部署|系列教程「全」
掘金社区:OpenStack Victoria版部署|系列教程「全」

OpenStack Train版离线部署|0制作本地离线yum源
OpenStack Train版离线部署|1控制节点-环境准备
OpenStack Train版离线部署|2计算节点-环境准备
OpenStack Train版离线部署|3控制节点-Keystone认证服务组件
OpenStack Train版离线部署|4控制节点-Glance镜像服务组件
OpenStack Train版离线部署|5控制节点-Placement服务组件
OpenStack Train版离线部署|6.1控制节点-Nova计算服务组件
OpenStack Train版离线部署|6.2计算节点-Nova计算服务组件
OpenStack Train版离线部署|6.3控制节点-Nova计算服务组件
OpenStack Train版离线部署|7.1控制节点-Neutron网络服务组件
OpenStack Train版离线部署|7.2计算节点-Neutron网络服务组件
OpenStack Train版离线部署|7.3控制节点-Neutron网络服务组件
OpenStack Train版离线部署|8控制节点-Horizon服务组件
OpenStack Train版离线部署|9启动一个实例
OpenStack Train版离线部署|10控制节点-Heat服务组件
OpenStack Train版离线部署|11.1控制节点-Cinder存储服务组件
OpenStack Train版离线部署|11.2存储节点-Cinder存储服务组件
OpenStack Train版离线部署|11.3控制节点-Cinder存储服务组件
OpenStack Train版离线部署|11.4计算节点-Cinder存储服务组件
OpenStack Train版离线部署|11.5实例使用-Cinder存储服务组件


掘金社区:个性化制作OpenStack镜像|系列教程
个性化制作OpenStack镜像|环境准备
个性化制作OpenStack镜像|Windows7
个性化制作OpenStack镜像|Windows10
个性化制作OpenStack镜像|Linux
个性化制作OpenStack镜像|Windows Server2019


CSDN

CSDN:OpenStack部署系列文章
OpenStack Victoria版 安装部署系列教程
OpenStack Ussuri版 离线安装部署系列教程(全)
OpenStack Train版 离线安装部署系列教程(全)
欢迎留言讨论,期待与你共同进步。


OpenStack Train版离线部署|5控制节点-Placement服务组件

官方参考链接:
OpenStack官方安装指南:服务组件
OpenStack官方安装指南:placement-install

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

1.创建placement数据库并授权

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

mysql -u root -proot

创建placement数据库并授权

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

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

exit

2.创建服务凭据

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

cd 
source admin-openrc.sh
# 域用户
openstack user create --domain default --password=placement placement
# 项目
openstack role add --project service --user placement admin
# 实体
openstack service create --name placement --description "Placement API" placement

# 

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软件

yum install openstack-placement-api -y

2.配置文件修改

(1)/etc/placement/placement.conf
依次执行以下命令,将其写入脚本,执行脚本

touch placement.conf.sh
vim placement.conf.sh
bash placement.conf.sh

placement.conf.sh文件内容

#!/bin/bash
#placement.conf.sh
openstack-config --set  /etc/placement/placement.conf api auth_strategy  keystone 
openstack-config --set  /etc/placement/placement.conf keystone_authtoken auth_url  http://controller:5000/v3
openstack-config --set  /etc/placement/placement.conf keystone_authtoken memcached_servers  controller: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  
openstack-config --set  /etc/placement/placement.conf placement_database connection  mysql+pymysql://placement:placement@controller/placement

echo "Result of Configuration"
grep '^[a-z]' /etc/placement/placement.conf
bash placement.conf.sh  

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

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>

3.同步placement数据库

(1)同步并初始化

su -s /bin/sh -c "placement-manage db sync" placement
#如有警告,再执行一遍

(2)同步完成进行连接测试
保证所有需要的表已经建立,否则后面可能无法进行下去

mysql -uplacement -pplacement -e "use placement;show tables;"

4.更多配置

【可选】

cd 
source admin-openrc.sh
placement-status upgrade check
pip install osc-placement
openstack --os-placement-api-version 1.2 resource class list --sort-column name

5.重启Apache服务(httpd)
如果重启失败,注意防火墙配置

systemctl restart httpd
systemctl status httpd 

三、placement服务安装完成。