Ceph RGW + OpenStack Keystone 配置教學(下篇)

事隔多日來繼續介紹後續 Ceph RGW 與 OpenStack Keystone 的整合配置,還沒有讀上篇的讀者可以先閱讀上篇,若有興趣也可逐步跟著這系列的文章進行操作,或許你會對於內容更有感覺唷!

話不多說就開始吧!!

前置條件

  • 在虛擬機器或實體機器上已安裝 Ceph RGW 與 OpenStack Keystone

環境變數

  • OS_USERNAME=admin
  • OS_PASSWORD=password
  • OS_PROJECT_NAME=admin
  • OS_USER_DOMAIN_NAME=Default
  • OS_PROJECT_DOMAIN_NAME=Default
  • OS_AUTH_URL=http://172.17.1.100:5000/v3
  • OS_IDENTITY_API_VERSION=3

注意,注意,注意,很重要所以講三次!!本篇介紹採用環境變數與上篇有些許不同。讀者需特別注意!

配置

首先修改 /etc/ceph/ceph.conf 檔案,並加入 OpenStack keystone 相關配置,如:domain, project, user …等。

整體配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$ vim /etc/ceph/ceph.conf

...
[client.radosgw.gateway]
host = 172.17.1.110:6789
keyring = /etc/ceph/ceph.radosgw.keyring
log file = /var/log/ceph/client.radosgw.gateway.log
rgw enable usage log = true

# For keystone of openstack
rgw keystone api version = 3
# Enable Keystone Auth for S3 APIs
rgw keystone url = http://172.17.1.100:5000
rgw s3 auth use keystone = true
rgw keystone admin user = admin
rgw keystone admin password = password
rgw keystone admin domain = Default
rgw keystone admin project = admin
rgw keystone accepted roles = admin
rgw keystone verify ssl = false

OpenStack Keystone 參數部分讀者需依照自己建置 OpenStack Keystone 的設定自行修改。

Ceph RGW 配置完成後,需重新啟動

1
$ systemctl restart ceph-radosgw@radosgw.gateway

配置完成後,就可以開始在建立 OpenStack Keystone 內建立 Ceph RGW 的使用者了,透過 openstack ec2 credentials 指令進行建立。

1
2
3
4
5
6
7
8
9
10
11
12
$ openstack ec2 credentials create --project admin --user admin

+------------+--------------------------------------------------------------------------------------------------------------------------------------+
| Field | Value |
+------------+--------------------------------------------------------------------------------------------------------------------------------------+
| access | 25f332ce156248e6b1370a30276db861 |
| links | {u'self': u'http://172.17.1.100:5000/v3/users/4a6ccdd4c5d44b90951afd1c7f0051e0/credentials/OS-EC2/25f332ce156248e6b1370a30276db861'} |
| project_id | 11545854141449f7abb6b7782f61cbce |
| secret | ddd08e575e7949e0ba0efeed5386d679 |
| trust_id | None |
| user_id | 4a6ccdd4c5d44b90951afd1c7f0051e0 |
+------------+--------------------------------------------------------------------------------------------------------------------------------------+

輸入完成後,系統會回應如上的資訊,其中 accesssecret 就是 Ceph RGW 的 access key 與 secret key。

結果

在 OpenStack Keystone 使用者建立完成後,需要任意呼叫一支 Ceph RGW API 或透過第三方工具,如: s3browser, cyberduck 進行登入,才會在 Ceph RGW 看到該使用者資訊。

登入前檢查 Ceph RGW 當前使用者列表。

1
2
3
4
5
$ radosgw-admin user list

[
"admin"
]

開啟 Cyberduck 並點擊視窗中左下角的”+”符號新增一個”S3(HTTP)”的連線,並且輸入您 Server URL 與 RGW Port,以及本篇介紹在 OpenStack Keystone 所建立的 ec2 credential access key 與 secret key 進行登入。

Cyberduck Login

最後,我們再透過 Ceph RGW 指令檢查當前使用者列表。

1
2
3
4
5
6
$ radosgw-admin user list

[
"admin",
"11545854141449f7abb6b7782f61cbce"
]

從上述可以看到多一個名為 11545854141449f7abb6b7782f61cbce 的使用者,該名稱來自於 OpenStack Project Name。

若針對本篇教學有任何疑問或有敘述錯誤的地方,歡迎在底下留言討論唷~

評論

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×