久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

Ceph部署中RGW如何搭建

194次閱讀
沒有評論

共計 3710 個字符,預計需要花費 10 分鐘才能閱讀完成。

丸趣 TV 小編給大家分享一下 Ceph 部署中 RGW 如何搭建,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

部署 Ceph RGW

進入上文所述的 my-cluster 目錄。

$ cd my-cluster

修改默認端口(可選的)

RGW 默認使用 Civetweb 作為其 Web Sevice,而 Civetweb 默認使用端口 7480 提供服務,如果想修改端口(如 80 端口),就需要修改 Ceph 的配置文件。在配置文件中增加一個 section[client.rgw. gateway-node],其中 gateway-node 需要修改為 RGW 的 hostname。如下:

[client.rgw.node4]
rgw_frontends =  civetweb port=80

然后再將配置文件推送到 RGW 節點。

$ ceph-deploy --overwrite-conf config push node4

安裝 CEPH OBJECT GATEWAY

格式為:

$ ceph-deploy install --rgw  gateway-node1  [gateway-node2  ...]

由于我們環境中只有一個 RGW,所以執行命令:

$ ceph-deploy install –-rgw node4

管理 RGW 節點

Ceph CLI 工具需要在管理員模式下運行,因此需要執行以下命令:

$ ceph-deploy admin node4

安裝 RGW 實例

執行命令:

$ ceph-deploy rgw create node4

一旦 RGW 開始運行,我們就可以通過端口 7480(如果沒有修改的話)來訪問。如:

http://node4:7480

如果 RGW 運行正常,它應該返回類似的信息:

ListAllMyBucketsResult 
  Owner 
  ID anonymous /ID 
  DisplayName/ 
  /Owner 
  Buckets/ 
 /ListAllMyBucketsResult

注意:剩下的創建用戶的步驟都應該在 RGW 節點上運行。

創建 S3 用戶

想正常的訪問 RGW,需要創建相應的 RGW 用戶,并賦予相應的權限,radosgw-admin 命令實現了這些功能。
執行下面命令,來創建一個名為 testuser 的用戶:

$ radosgw-admin user create --uid= testuser  --display-name= First User

命令的輸出大致如下:

{
  user_id :  testuser ,
  display_name :  First User ,
  email :  ,
  suspended : 0,
  max_buckets : 1000,
  auid : 0,
  subusers : [],
  keys : [{
  user :  testuser ,
  access_key :  I0PJDPCIYZ665MW88W9R ,
  secret_key :  dxaXZ8U90SXydYzyS5ivamEP20hkLSUViiaR+ZDA 
 }],
  swift_keys : [],
  caps : [],
  op_mask :  read, write, delete ,
  default_placement :  ,
  placement_tags : [],
  bucket_quota : {
  enabled : false,
  max_size_kb : -1,
  max_objects : -1
 },
  user_quota : {
  enabled : false,
  max_size_kb : -1,
  max_objects : -1
 },
  temp_url_keys : []}

注意:需要記住返回結果中 keys- access_key 和 keys- secret_key 的值,用于 S3 接口訪問確認。

創建 Swift 用戶

Swift 用戶是作為子用戶 subuser 被創建的,執行以下命令:

$ radosgw-admin subuser create --uid=testuser --subuser=testuser:swift --access=full

輸出結果大致如下:

  user_id :  testuser ,
  display_name :  First User ,
  email :  ,
  suspended : 0,
  max_buckets : 1000,
  auid : 0,
  subusers : [{
  id :  testuser:swift ,
  permissions :  full-control 
 }],
  keys : [{
  user :  testuser:swift ,
  access_key :  3Y1LNW4Q6X0Y53A52DET ,
  secret_key :  
 }, {
  user :  testuser ,
  access_key :  I0PJDPCIYZ665MW88W9R ,
  secret_key :  dxaXZ8U90SXydYzyS5ivamEP20hkLSUViiaR+ZDA 
 }],
  swift_keys : [{
  user :  testuser:swift ,
  secret_key :  244+fz2gSqoHwR3lYtSbIyomyPHf3i7rgSJrF\/IA 
 }],
  caps : [],
  op_mask :  read, write, delete ,
  default_placement :  ,
  placement_tags : [],
  bucket_quota : {
  enabled : false,
  max_size_kb : -1,
  max_objects : -1
 },
  user_quota : {
  enabled : false,
  max_size_kb : -1,
  max_objects : -1
 },
  temp_url_keys : []

注意:需要記住返回結果中 swift_keys- secret_key 的值,用于 Swift 接口訪問確認。

測試 S3 接口

需要創建一個 Python 測試腳本來測試 S3 訪問。該腳本會連接 RGW,創建一個 bucket 并列出所有的 bucket。其中,變量 access_key 和 secret_access 的值,來自于創建 S3 用戶命令時,radosgw-admin 命令返回的 keys- access_key 和 keys- secret_key。
執行以下步驟,首先安裝 python-boto 庫,該庫用于連接 S3:

$ apt-get install python-boto

創建并編輯 Python 腳本:

$ vi s3test.py
import boto.s3.connection
access_key =  I0PJDPCIYZ665MW88W9R 
secret_key =  dxaXZ8U90SXydYzyS5ivamEP20hkLSUViiaR+ZDA 
conn = boto.connect_s3(
 aws_access_key_id=access_key,
 aws_secret_access_key=secret_key,
 host= {hostname} , port={port},
 is_secure=False, calling_format=boto.s3.connection.OrdinaryCallingFormat(),
 )
bucket = conn.create_bucket(my-new-bucket )
for bucket in conn.get_all_buckets():
 print  {name} {created} .format(
 name=bucket.name,
 created=bucket.creation_date,
 )

替換 {hostname}、{port} 為真實環境的 hostname(或者 ip)和 RGW 的端口。執行命令進行測試:

$ python s3test.py

輸出應該類似如下:

my-new-bucket-2 2017-02-19T04:34:17.530Z

5.4.8 測試 Swift 接口

Swfit 的訪問可以通過命令行。首先安裝相關軟件包:

$ apt-get install python-setuptools
$ apt-get install python-swiftclient

執行下列命令,范文 Swift 接口:

$ swift -A http://{IP ADDRESS}:{port}/auth/1.0 -U testuser:swift -K  {swift_secret_key}  list

替換 {IP ADDRESS}、{port}、{swift_secret_key} 等相關參數,其中 {swift_secret_key} 為創建 Swift 用戶時,radosgw-admin 命令返回的 swift_keys- secret_key 的值。正常的輸出應該為:

my-new-bucket

以上是“Ceph 部署中 RGW 如何搭建”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注丸趣 TV 行業資訊頻道!

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-25發表,共計3710字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 七台河市| 乐都县| 韩城市| 峨边| 渑池县| 偃师市| 凤凰县| 余江县| 汉阴县| 澳门| 阿图什市| 丽水市| 盘锦市| 绵阳市| 安阳县| 沙湾县| 郎溪县| 同心县| 峨山| 军事| 云霄县| 搜索| 松原市| 保定市| 惠东县| 武穴市| 乾安县| 乐昌市| 黑龙江省| 屯昌县| 广宁县| 广灵县| 库尔勒市| 哈巴河县| 澄城县| 望都县| 湖北省| 南陵县| 西乡县| 大冶市| 会东县|