OpenStack Yoga : Configure Swift (Control Node)2022/06/01 |
|
Configure OpenStack Object Storage (Swift).
This example is based on the environment like follows.
------------+-----------------------------+---------------+---
| | |
eth0|10.0.0.30 eth0|10.0.0.50 |
+-----------+-----------+ +-----------+-----------+ |
| [ dlp.srv.world ] | | [ network.srv.world ] | |
| (Control Node) | | (Proxy Node) | |
| | | | |
| MariaDB RabbitMQ | | Swift Proxy | |
| Memcached httpd | | | |
| Keystone | | | |
+-----------------------+ +-----------------------+ |
|
------------+-----------------------------+---------------+-------------+-----------
eth0|10.0.0.71 eth0|10.0.0.72 eth0|10.0.0.73
+-----------+-----------+ +-----------+-----------+ +-----------+-----------+
| [snode01.srv.world] | | [snode02.srv.world] | | [snode03.srv.world] |
| (Storage Node#1) | | (Storage Node#2) | | (Storage Node#3) |
| | | | | |
| Swift-Account | | Swift-Account | | Swift-Account |
| Swift-Container | | Swift-Container | | Swift-Container |
| Swift-Object | | Swift-Object | | Swift-Object |
+-----------------------+ +-----------------------+ +-----------------------+
|
| [1] | Add Swift user or service on Keystone Server (Control Node) first. |
|
# create [swift] user in [service] project [root@dlp ~(keystone)]# openstack user create --domain default --project service --password servicepassword swift
+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| default_project_id | 8787527217494c6a87dd5a3b68dce1ef |
| domain_id | default |
| enabled | True |
| id | 96d5730073e8400989ed0b410252c527 |
| name | swift |
| options | {} |
| password_expires_at | None |
+---------------------+----------------------------------+
# add [swift] user in [admin] role [root@dlp ~(keystone)]# openstack role add --project service --user swift admin
# create service entry for [swift] [root@dlp ~(keystone)]# openstack service create --name swift --description "OpenStack Object Storage" object-store +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Object Storage | | enabled | True | | id | e553be97270c4a31b5853e72d3156af4 | | name | swift | | type | object-store | +-------------+----------------------------------+ # define Swift Proxy Host [root@dlp ~(keystone)]# export swift_proxy=network.srv.world
# create endpoint for [swift] (public) [root@dlp ~(keystone)]# openstack endpoint create --region RegionOne object-store public https://$swift_proxy:8080/v1/AUTH_%\(tenant_id\)s +--------------+------------------------------------------------------+ | Field | Value | +--------------+------------------------------------------------------+ | enabled | True | | id | 5ed808056f5243e4984e22e909714014 | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | e553be97270c4a31b5853e72d3156af4 | | service_name | swift | | service_type | object-store | | url | https://network.srv.world:8080/v1/AUTH_%(tenant_id)s | +--------------+------------------------------------------------------+ # create endpoint for [swift] (internal) [root@dlp ~(keystone)]# openstack endpoint create --region RegionOne object-store internal https://$swift_proxy:8080/v1/AUTH_%\(tenant_id\)s +--------------+------------------------------------------------------+ | Field | Value | +--------------+------------------------------------------------------+ | enabled | True | | id | 5537fc71e185445193416ce37407dcfc | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | e553be97270c4a31b5853e72d3156af4 | | service_name | swift | | service_type | object-store | | url | https://network.srv.world:8080/v1/AUTH_%(tenant_id)s | +--------------+------------------------------------------------------+ # create endpoint for [swift] (admin) [root@dlp ~(keystone)]# openstack endpoint create --region RegionOne object-store admin https://$swift_proxy:8080/v1 +--------------+-----------------------------------+ | Field | Value | +--------------+-----------------------------------+ | enabled | True | | id | edf38ed8b654410a9713158025d2a211 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | e553be97270c4a31b5853e72d3156af4 | | service_name | swift | | service_type | object-store | | url | https://network.srv.world:8080/v1 | +--------------+-----------------------------------+ |
| Sponsored Link |
|
|