OpenStack组件:放置服务(Placement)安装

OpenEuler的安装_openeuler5.1.0-249-CSDN博客

OpenStack云计算平台基础环境准备_openstack基础环境配置-CSDN博客

OpenStack组件:镜像服务(Glance)安装-CSDN博客

OpenStack组件:认证服务(Keystone)安装_认证服务(keystone)安装-CSDN博客

一、放置服务(Placement Service)的核心作用

OpenStack 放置服务(placement)是 Nova 组件的核心依赖服务,主要用于管理计算资源的调度和分配,解决以下关键问题:

  1. 资源跟踪:记录计算节点(Compute Node)的 CPU、内存、磁盘、PCI 设备 等资源的使用情况和库存。

  2. 调度决策:为 Nova Scheduler 提供资源查询接口,帮助调度器根据资源过滤条件(如可用资源量、亲和 / 反亲和策略等)选择合适的计算节点。

  3. 多维度资源管理:支持对 自定义资源类型(如 GPU 数量、FPGA 设备等)进行建模和跟踪,满足异构计算场景需求。

二、项目实施

1、安装与配置Placement放置服务

1.1、安装Placement软件包

root@controller \~\]# yum install -y openstack-placement-api ![](https://i-blog.csdnimg.cn/direct/8df22a2eab4f493c84b4a09476f17daf.png) //查看用户信息 \[root@controller \~\]# cat /etc/passwd \| grep placement //查看用户组信息 \[root@controller \~\]# cat /etc/group \| grep placement ![](https://i-blog.csdnimg.cn/direct/862463a77c6b485db2bee0ad28699872.png)

1.2、创建Placement的数据库并授权

复制代码
[root@controller ~]# mysql -uroot -p000000   //进入数据库
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 4
Server version: 10.5.25-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 '000000';   //远程管理授权
Query OK, 0 rows affected (0.005 sec)

MariaDB [(none)]> GRANT ALL PRIVILEGES ON placement.* TO 'placement'@'%' IDENTIFIED BY '000000';
Query OK, 0 rows affected (0.001 sec)

MariaDB [(none)]> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.000 sec)

MariaDB [(none)]> EXIT;//退出
Bye

1.3、修改Placement配置文件

复制代码
[root@controller ~]# cp /etc/placement/placement.conf /etc/placement/placement.bak

[root@controller ~]# grep -Ev '^$|#' /etc/placement/placement.bak > /etc/placement/placement.conf

[root@controller ~]# cat /etc/placement/placement.conf
[DEFAULT]
[api]
[cors]
[keystone_authtoken]
[oslo_policy]
[placement]
[placement_database]
[profiler]

[root@controller ~]# vim /etc/placement/placement.conf(编辑添加下面的内容)

[DEFAULT]
[api]
auth_strategy = keystone

[cors]
[keystone_authtoken]
auth_url = http://controller:5000
memcached_servers = controller:11211
auth_type = password
project_domain_name = Default
user_domain_name = Default
project_name = project
username = placement
password = 000000

[oslo_policy]
[placement]

[placement_database]
connection = mysql+pymysql://placement:000000@controller/placement

[profiler]

1.4、初始化Placement的数据库

复制代码
//同步数据库
[root@controller ~]# su -s /bin/sh -c "placement-manage db sync" placement

/usr/lib/python3.9/site-packages/pymysql/cursors.py:170: Warning: (1280, "Name 'alembic_version_pkc' ignored for PRIMARY key.")
  result = self._query(query)

//进入收据库验证同步是否成功
[root@controller ~]# mysql -uroot -p000000
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 7
Server version: 10.5.25-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)]> use placement;
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed
MariaDB [placement]> show tables;
+------------------------------+
| Tables_in_placement          |
+------------------------------+
| alembic_version              |
| allocations                  |
| consumers                    |
| inventories                  |
| placement_aggregates         |
| projects                     |
| resource_classes             |
| resource_provider_aggregates |
| resource_provider_traits     |
| resource_providers           |
| traits                       |
| users                        |
+------------------------------+
12 rows in set (0.000 sec)

2、Placement组件初始化

2.1 、创建Placement用户并分配角色

复制代码
[root@controller ~]# source admin-login   //导入环境变量,模拟登录

//在openstack云计算平台中创建用户placement
[root@controller ~]# openstack user create --domain default --password 000000 placement
+---------------------+----------------------------------+
| Field               | Value                            |
+---------------------+----------------------------------+
| domain_id           | default                          |
| enabled             | True                             |
| id                  | 323ce14e683a490f8ee53d2b15a876b0 |
| name                | placement                        |
| options             | {}                               |
| password_expires_at | None                             |
+---------------------+----------------------------------+

//为用户分配admin角色
[root@controller ~]# openstack role add --project project --user placement admin

2.2、创建Placement服务及服务端点

复制代码
//创建一个名字和类型都是placement的服务
[root@controller ~]# openstack service create --name placement placement

//创建服务端点
[root@controller ~]# openstack endpoint create --region RegionOne placement public http://controller:8778

[root@controller ~]# openstack endpoint create --region RegionOne placement internal http://controller:8778

[root@controller ~]# openstack endpoint create --region RegionOne placement admin http://controller:8778

2.3、启动Placement服务

root@controller \~\]# systemctl restart httpd //重启使之配置文件生效

3、检测Placement服务

3.1、查看端口情况

root@controller \~\]# netstat -tnlup\|grep 8778

3.2、检验服务端点

root@controller \~\]# curl http://controller:8778

出现以下信息,表示placement服务运行正常

相关推荐
是垚不是土25 天前
Kolla-Ansible搭建与扩容OpenStack私有云平台
linux·运维·服务器·云计算·ansible·openstack
#暖瓶1 个月前
基于openEuler系统利用 Kolla-Ansible 工具多节点安装OpenStack平台
ansible·openstack
北观止1 个月前
虚拟环境配置——Windows11 环境在VMware中部署 OpenStack
服务器·ubuntu·云计算·openstack
北观止1 个月前
批量删除OpenStack实例
linux·前端·chrome·openstack
刘某的Cloud1 个月前
openstack迁移虚机rbd报错,删除异常rbd
linux·运维·openstack·nova·rbd
Johny_Zhao1 个月前
OpenStack 全套搭建部署指南(基于 Kolla-Ansible)
linux·python·信息安全·云计算·openstack·shell·yum源·系统运维
小余吃大鱼1 个月前
OpenStack私有云详细介绍
开发语言·php·openstack
@t.t.1 个月前
利用脚本搭建私有云平台,部署云平台,发布云主机并实现互连和远程连接
运维·云计算·openstack
ZVAyIVqt0UFji1 个月前
360 OpenStack支持IP SAN存储实现
网络·网络协议·tcp/ip·openstack