ceph-rados网关管理操作rest api
radosgw-admin的Python项目详细描述
用于ceph rados网关(radosgw)管理操作的python rest api
http://docs.ceph.com/docs/master/radosgw/adminops/
注意:库支持ceph版本>;=10.2(jewel)。 从库的版本1.6.0开始,对ceph-hammer或更早版本的支持已被放弃。
要求
- 博托
安装
该包在https://pypi.python.org/pypi/radosgw-admin上可用。要安装它,请使用pip:
pip install radosgw-admin
或者克隆这个repository并在本地安装:
python setup.py install
管理员用户的配置
要在radosgw中创建或修改bucket/用户,管理员用户需要以下read,write功能(caps):
"caps": [ { "type": "buckets", "perm": "*" }, { "type": "usage", "perm": "read" }, { "type": "metadata", "perm": "read" }, { "type": "users", "perm": "*" } ]
可以使用^ {TT3}$命令向现有用户添加功能:
radosgw-admin caps add --uid <USER_ID> --caps "buckets=read,write" radosgw-admin caps add --uid <USER_ID> --caps "users=read,write"
示例
参见examples/radosgw-admin-example.py
中的示例下面是一个简单的示例:
importradosgwrgwadmin=radosgw.connection.RadosGWAdminConnection(host='hostname.example.org',access_key='<ADMIN_ACCESS_KEY>',secret_key='<ADMIN_SECRET_KEY>')# user operationstestuser2=rgwadmin.create_user('testuser2',display_name='A test user',email='testuser2@example.org')testuser2.update(display_name='Second test user',suspended=True)testuser1=rgwadmin.get_user('testuser1')# bucket operationsbuckets=rgwadmin.get_buckets()forbucketinbuckets:print(bucket)testuser1_buckets=testuser1.get_buckets()forbucketintestuser1_buckets:# transfer buckets to testuser2rgwadmin.link_bucket(bucket.name,bucket.id,testuser2.id)