CentOS 7
Sponsored Link

OpenStack Mitaka : Configure Swift#1 (Control Node)2016/05/11

 
Configure OpenStack Object Storage (Swift).
This example shows to configure like the environment below.
                                    |
     +------------------+           |           +-----------------+
     | [ Control Node ] |10.0.0.30  |  10.0.0.50|  [ Proxy Node ] |
     |     Keystone     |-----------+-----------|                 |
     +------------------+           |           +-----------------+
                                    |
        +---------------------------+--------------------------+
        |                           |                          |
        |10.0.0.71                  |10.0.0.72                 |10.0.0.73 
+-------+----------+       +--------+---------+       +--------+---------+
| [Storage Node#1] |       | [Storage Node#2] |       | [Storage Node#3] |
|                  |-------|                  |-------|                  |
+------------------+       +------------------+       +------------------+

[1] Add Swift user or service on Keystone Server (Control Node) first.
# add swift user

[root@dlp ~(keystone)]#
openstack user create --domain default --project service --password servicepassword swift

+--------------------+----------------------------------+
| Field              | Value                            |
+--------------------+----------------------------------+
| default_project_id | 4a80b177558b49d7a58038770a344aeb |
| domain_id          | dc18e12756a54ce7aea35e99f01decd8 |
| enabled            | True                             |
| id                 | 5c1baa0245b04c6d9213cd9c03831f03 |
| name               | swift                            |
+--------------------+----------------------------------+

# add swift user in admin role

[root@dlp ~(keystone)]#
openstack role add --project service --user swift admin
# add an entry for swift service

[root@dlp ~(keystone)]#
openstack service create --name swift --description "OpenStack Object Storage" object-store

+-------------+----------------------------------+
| Field       | Value                            |
+-------------+----------------------------------+
| description | OpenStack Object Storage         |
| enabled     | True                             |
| id          | c20cb07ca9bd4b328e8e206555773183 |
| name        | swift                            |
| type        | object-store                     |
+-------------+----------------------------------+

# define the IP address of Proxy Node

[root@dlp ~(keystone)]#
export swift_proxy=10.0.0.50
# add an entry for swift endpoint (public)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne object-store public http://$swift_proxy:8080/v1/AUTH_%\(tenant_id\)s

+--------------+---------------------------------------------+
| Field        | Value                                       |
+--------------+---------------------------------------------+
| enabled      | True                                        |
| id           | 0c06923c959b41868770b18b39919c1a            |
| interface    | public                                      |
| region       | RegionOne                                   |
| region_id    | RegionOne                                   |
| service_id   | c20cb07ca9bd4b328e8e206555773183            |
| service_name | swift                                       |
| service_type | object-store                                |
| url          | http://10.0.0.50:8080/v1/AUTH_%(tenant_id)s |
+--------------+---------------------------------------------+

# add an entry for swift endpoint (internal)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne object-store internal http://$swift_proxy:8080/v1/AUTH_%\(tenant_id\)s

+--------------+---------------------------------------------+
| Field        | Value                                       |
+--------------+---------------------------------------------+
| enabled      | True                                        |
| id           | 5bfde60a07824fa280cae8dba0259c4d            |
| interface    | internal                                    |
| region       | RegionOne                                   |
| region_id    | RegionOne                                   |
| service_id   | c20cb07ca9bd4b328e8e206555773183            |
| service_name | swift                                       |
| service_type | object-store                                |
| url          | http://10.0.0.50:8080/v1/AUTH_%(tenant_id)s |
+--------------+---------------------------------------------+

# add an entry for swift endpoint (admin)

[root@dlp ~(keystone)]#
openstack endpoint create --region RegionOne object-store admin http://$swift_proxy:8080/v1

+--------------+----------------------------------+
| Field        | Value                            |
+--------------+----------------------------------+
| enabled      | True                             |
| id           | 24c317024a8c4bb5972c4de58f50451b |
| interface    | admin                            |
| region       | RegionOne                        |
| region_id    | RegionOne                        |
| service_id   | c20cb07ca9bd4b328e8e206555773183 |
| service_name | swift                            |
| service_type | object-store                     |
| url          | http://10.0.0.50:8080/v1         |
+--------------+----------------------------------+
Matched Content