OpenStack Yoga : Swift 設定 (Control ノード)2022/04/07 |
OpenStack Object Storage(Swift)を設定します。
当例では以下のような環境を例に Swift サービスを設定します。
------------+---------------------------+-------------+--- | | | eth0|10.0.0.30 eth0|10.0.0.50 | +-----------+-----------+ +-----------+-----------+ | | [ 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 +-----------+-----------+ +-----------+-----------+ +-----------+-----------+ | [ 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] | Control ノードの Keystone に Swift 用のユーザー等々を登録しておきます。 |
# [service] プロジェクト所属で [swift] ユーザーを作成 root@dlp ~(keystone)# openstack user create --domain default --project service --password servicepassword swift +---------------------+----------------------------------+ | Field | Value | +---------------------+----------------------------------+ | default_project_id | c043fb355eff47e69642adfcd7a55620 | | domain_id | default | | enabled | True | | id | 0545a35c180b4e488431b566e465f694 | | name | swift | | options | {} | | password_expires_at | None | +---------------------+----------------------------------+ # [swift] ユーザーを [admin] ロール に加える root@dlp ~(keystone)# openstack role add --project service --user swift admin
# [swift] 用サービスエントリ作成 root@dlp ~(keystone)# openstack service create --name swift --description "OpenStack Object Storage" object-store +-------------+----------------------------------+ | Field | Value | +-------------+----------------------------------+ | description | OpenStack Object Storage | | enabled | True | | id | 63bb1031cbc64da6b34e99f740d0e670 | | name | swift | | type | object-store | +-------------+----------------------------------+ # Swift Proxy ノードを定義 root@dlp ~(keystone)# export swift_proxy=10.0.0.50
# [swift] 用エンドポイント作成 (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 | a8a84e06a1534958abc2a248f2f0aaa9 | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | 63bb1031cbc64da6b34e99f740d0e670 | | service_name | swift | | service_type | object-store | | url | http://10.0.0.50:8080/v1/AUTH_%(tenant_id)s | +--------------+---------------------------------------------+ # [swift] 用エンドポイント作成 (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 | efc6871e3b3842f3a4965e6709d811d9 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | 63bb1031cbc64da6b34e99f740d0e670 | | service_name | swift | | service_type | object-store | | url | http://10.0.0.50:8080/v1/AUTH_%(tenant_id)s | +--------------+---------------------------------------------+ # [swift] 用エンドポイント作成 (admin) root@dlp ~(keystone)# openstack endpoint create --region RegionOne object-store admin http://$swift_proxy:8080/v1 +--------------+----------------------------------+ | Field | Value | +--------------+----------------------------------+ | enabled | True | | id | 8217c75a494a460f8a3e0a5d1f9fa741 | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | 63bb1031cbc64da6b34e99f740d0e670 | | service_name | swift | | service_type | object-store | | url | http://10.0.0.50:8080/v1 | +--------------+----------------------------------+ |
Sponsored Link |