OpenStack Caracal : Swift 設定 (Control ノード)2024/05/22 |
|
OpenStack Object Storage(Swift)を設定します。 当例では以下のような環境を例に Swift サービスを設定します。
------------+--------------------------+------------
| |
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 Nginx | | Nginx |
| Keystone httpd | | |
+-----------------------+ +-----------------------+
------------+--------------------------+--------------------------+-----------
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] | Control ノードの Keystone に Swift 用のユーザー等々を登録しておきます。 |
|
# [service] プロジェクト所属で [swift] ユーザーを作成 root@dlp ~(keystone)# openstack user create --domain default --project service --password servicepassword swift
+---------------------+----------------------------------+
| Field | Value |
+---------------------+----------------------------------+
| default_project_id | ab9749e59bdb48e4807a18abb83c9f99 |
| domain_id | default |
| enabled | True |
| id | aec1c215630c467880734684e17e0cd5 |
| 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 | 29db359aa9d44086aaf4ff0b50a04b2a | | name | swift | | type | object-store | +-------------+----------------------------------+ # Swift Proxy ノードを定義 root@dlp ~(keystone)# export swift_proxy=network.srv.world
# [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 | fb95c056bcf346bfb70e393a496c3686 | | interface | public | | region | RegionOne | | region_id | RegionOne | | service_id | 29db359aa9d44086aaf4ff0b50a04b2a | | service_name | swift | | service_type | object-store | | url | https://network.srv.world:8080/v1/AUTH_%(tenant_id)s | +--------------+------------------------------------------------------+ # [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 | 720bbf226b434ad5b095d7242ee94e23 | | interface | internal | | region | RegionOne | | region_id | RegionOne | | service_id | 29db359aa9d44086aaf4ff0b50a04b2a | | service_name | swift | | service_type | object-store | | url | https://network.srv.world:8080/v1/AUTH_%(tenant_id)s | +--------------+------------------------------------------------------+ # [swift] 用エンドポイント作成 (admin) root@dlp ~(keystone)# openstack endpoint create --region RegionOne object-store admin https://$swift_proxy:8080/v1 +--------------+-----------------------------------+ | Field | Value | +--------------+-----------------------------------+ | enabled | True | | id | 8a1c88fc239d435496db11a92159765d | | interface | admin | | region | RegionOne | | region_id | RegionOne | | service_id | 29db359aa9d44086aaf4ff0b50a04b2a | | service_name | swift | | service_type | object-store | | url | https://network.srv.world:8080/v1 | +--------------+-----------------------------------+ |
| Sponsored Link |
|
|