此文续接上一篇,openstack3部署keystone组件,继续部署openstack,本节开始部署Nova的子服务placement。
通过Nova服务,使用者可以通过简单的API调用或者控制台界面轻松地创建、管理和监控云计算实例,从而灵活地利用云计算资源。
placement服务是OpenStack Nova项目的一个子模块,它是一个独立的服务,用于管理和分配计算节点的资源。
(此部分内容和作者的“OpenStack4Glance镜像服务部署”内容注解大同小异,可以类比此部分内容,如有需要可自行查看,本章节不做过多解释)
一、创库授权
[root@controller ~]# mysql -u root -p
Enter password: #此部分输入密码(之前有过设置)
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 8
Server version: 10.3.20-MariaDB MariaDB Server
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]> create database placement;
Query OK, 1 row affected (0.000 sec)
MariaDB [(none)]> grant all privileges on placement.* to 'placement'@'localhost' identified by 'pl123';
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]> grant all privileges on placement.* to 'placement'@'%' identified by 'pl123';
Query OK, 0 rows affected (0.001 sec)
MariaDB [(none)]>exit
Bye
二、创建placement服务
. admin-openrc
openstack user create --domain default --password-prompt placement
openstack role add --project service --user placement admin
openstack service create --name placement --description "Placement API" placement
三、创建placement 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
安装配置placement组件
yum install openstack-placement-api -y
编辑/etc/placement/placement.conf并加入以下内容
connection=mysql+pymysql://placement:pl123@controller/placement
auth_strategy=keystone
auth_url=http://controller:5000/v3
memcached_servers=controller:11211
auth_type=password
project_domain_name=Default
user_domain_name=Default
project_name=service
username=placement
password=pl123
四、初始化数据库
su -s /bin/sh -c "placement-manage db sync" placement
五、完善apache
编辑/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>
#用于指定/usr/bin目录的访问权限,此代码可以分为两个部分
<IfVersion >= 2.4>
Require all granted
</IfVersion>
apache2.4 版本及以上,使用
<IfVersion>
条件块来设置访问权限。<IfVersion < 2.4>
Order allow,deny
Allow from all
</IfVersion>
</Directory>
低于 2.4 版本的情况下,使用allow、order指令