---
title: 安装Placement
description: "Placement提供用于跟踪资源提供者清单和用法的HTTP API。请在控制节点安装Placement。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengcpfs/ecosystemEnable/OpenStack/kunpengopenstacktrain_04_016.html
sourcePath: /source/zh/kunpengcpfs/ecosystemEnable/OpenStack/kunpengopenstacktrain_04_016.html
indexId: 927e194bf8c1dc4af977a1c7f340d3a89c5122a9dc920cdf33f0a0da15f12bd682
---
# 安装Placement

Placement提供用于跟踪资源提供者清单和用法的HTTP API。请在控制节点安装Placement。

1. 创建数据库、Placement服务凭证和API端点。

  a. 以root用户登录数据库。
    1 mysql -u root -p

  b. 在数据库中，创建Placement数据库并授权。
    1 2 3 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_DBPASS替换为Placement数据库用户的密码，请根据实际需求进行设置。密码中请勿包含字符“#@$”，支持特殊字符“&=- _ . + ! * ()”


  c. 退出数据库。
    1 exit

  d. 创建Placement服务凭证。

```
source
~
/.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
```


    密码中请勿包含字符“#@$”，支持特殊字符“&=- _ . + ! * ()”

  e. 创建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
```


2. 安装和配置Placement。

  a. 安装Placement。

```
yum install openstack-placement-api
```


  b. 配置Placement。

    1. 打开“/etc/placement/placement.conf”文件。

```
vi /etc/placement/placement.conf
```


    2. 按“i”进入编辑模式，将配置文件修改为如下内容。

```
[placement_database]
connection = mysql+pymysql://placement:
PLACEMENT_DBPASS
@controller/placement
[api]
auth_strategy = keystone
[keystone_authtoken]
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 =
PLACEMENT_PASSWORD
```


      将PLACEMENT_DBPASS和PLACEMENT_PASSWORD分别替换为Placement数据库密码和Placement用户密码，请根据实际情况进行设置。密码中请勿包含字符“#@$”，支持特殊字符“&=- _ . + ! * ()”


    3. 按“Esc”键退出编辑模式，输入:wq!，按“Enter”键保存并退出文件。

  c. 同步数据库。

```
su -s /bin/sh -c "placement-manage db sync" placement
```


  d. 启动httpd服务。

```
systemctl restart httpd
```


3. 验证Placement是否安装成功。

  a. 执行状态检查。

```
source
~
/.admin-openrc
placement-status upgrade check
```


    安装成功的预期结果示例：

  b. 安装osc-placement，列出可用的资源类别及特性。

```
yum install python3-osc-placement
openstack --os-placement-api-version 1.2 resource class list --sort-column name
openstack --os-placement-api-version 1.6 trait list --sort-column name
```
