CEPH RGW 使用

创建一个S3风格用法的用户
ceph-admin-node@ceph-admin-node:~$ sudo radosgw-admin user create id=”harvis_rgw_user” –display-name=”Harvis Wang”
命令的输出如下(典型的json风格)
{
“user_id”: “harvis_rgw_user”,
“display_name”: “Harvis Wang”,
“email”: “”,
“suspended”: 0,
“max_buckets”: 1000,
“auid”: 0,
“subusers”: [],
“keys”: [
{
“user”: “harvis_rgw_user”,
“access_key”: “3BUK8A28042KDMXZPHEA”,
“secret_key”: “hNP0Ufx2DLLyH9wHanH3rcwiHODD3szuzlnyIBFQ”
}
],
“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, seceret_key 是用户合法性检验的依据。
创建一个子帐号,用于swift 风格访问ceph object cluster。
sudo radosgw-admin subuser create –uid=harvis_rgw_user –subuser=harvis_rgw_user:swift –access=full
输出如下
{
“user_id”: “harvis_rgw_user”,
“display_name”: “Harvis Wang”,
“email”: “”,
“suspended”: 0,
“max_buckets”: 1000,
“auid”: 0,
“subusers”: [
{
“id”: “harvis_rgw_user:swift”,
“permissions”: “full-control”
}
],
“keys”: [
{
“user”: “harvis_rgw_user”,
“access_key”: “3BUK8A28042KDMXZPHEA”,
“secret_key”: “hNP0Ufx2DLLyH9wHanH3rcwiHODD3szuzlnyIBFQ”
}
],
“swift_keys”: [
{
“user”: “harvis_rgw_user:swift”,
“secret_key”: “qDDbAXjCSlNSMvuqMBu0t27QRDDcyxQdC1zfIOza”
}
],
“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”: []
}

测试 S3 用户能否访问集群,使用python-boto进行测试
首先安装python-boto
ceph-client-node@ceph-client-node:~/opensource/rgw sudoaptgetinstallpythonboto访python(S3AccessTest.py)cephclientnode@cephclientnode: /opensource/rgw cat S3AccessTest.py
import boto.s3.connection

access_key=’3BUK8A28042KDMXZPHEA’
secret_key=’hNP0Ufx2DLLyH9wHanH3rcwiHODD3szuzlnyIBFQ’
rgw_host_name=’ceph-node3’
rgw_port=7480

conn = boto.connect_s3(
aws_access_key_id=access_key,
aws_secret_access_key=secret_key,
host=rgw_host_name,
port=rgw_port,
is_secure=False,
calling_format=boto.s3.connection.OrdinaryCallingFormat(),
)

print conn

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,
)
正常运行的测试输出
ceph-client-node@ceph-client-node:~/opensource/rgw$ python S3AccessTest.py
S3Connection:ceph-node3
my-new-bucket 2017-04-17T11:11:54.386Z

测试 swift 用户能否访问集群
需要安装 swift 工具
ceph-client-node@ceph-client-node:~/opensource/rgw$ sudo apt-get install python-setuptools
ceph-client-node@ceph-client-node:~/opensource/rgw$ sudo easy_install pip
ceph-client-node@ceph-client-node:~/opensource/rgw$ sudo pip install –upgrade setuptools
ceph-client-node@ceph-client-node:~/opensource/rgw$ sudo pip install –upgrade python-swiftclient
至此 swift 工具安装完毕
$ swift -A http://ceph-node3:7480/auth/1.0 -U harvis_rgw_user:swift -K ‘qDDbAXjCSlNSMvuqMBu0t27QRDDcyxQdC1zfIOza’ list
命令输出如下(my-new-bucket 是S3AccessTest.py脚本创建的bucket)
my-new-bucket

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值