前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何创建自定义数据pool的RGW实例

如何创建自定义数据pool的RGW实例

作者头像
用户1260683
发布2018-01-31 12:02:21
2.8K0
发布2018-01-31 12:02:21
举报

本文适用于jewel以上版本(含)

本文用到的软件版本如下

代码语言:javascript
复制
ceph:version 10.2.7
OS: Linux 3.16.0-4-amd64 #1 SMP Debian 3.16.7-ckt11-1+deb8u6 (2015-11-09) x86_64 GNU/Linux

1新建pool

创建数据pool,注意每个pool的pg配置规划,可以参考http://ceph.com/pgcalc/进行设计

代码语言:javascript
复制
ceph osd pool create .rgw.root 16 16
ceph osd pool create demo.rgw.data.root 16 16
ceph osd pool create demo.rgw.control 16 16
ceph osd pool create demo.rgw.gc 16 16
ceph osd pool create demo.rgw.log 16 16
ceph osd pool create demo.rgw.intent-log 16 16
ceph osd pool create demo.rgw.usage 16 16
ceph osd pool create demo.rgw.users.keys 16 16
ceph osd pool create demo.rgw.users.email 16 16
ceph osd pool create demo.rgw.users.swift 16 16
ceph osd pool create demo.rgw.users.uid 16 16
ceph osd pool create demo.rgw.buckets.index 16 16
ceph osd pool create demo.rgw.buckets.data 64 64
ceph osd pool create demo.rgw.buckets.non-ec 16 16

2配置文件准备

ceph.conf配置

代码语言:javascript
复制
[client.radosgw.us-zone1]
     rgw dns name = s3.ceph.work
     rgw frontends = "civetweb port=80"
     host = radosgw-1
     keyring = /etc/ceph/ceph.client.radosgw.keyring
     rgw socket path = /home/ceph/var/run/ceph-client.radosgw.us-zone1.sock
     log file = /home/ceph/log/radosgw.us-zone1.log
     rgw print continue = false
     rgw content length compat = true

zone配置

代码语言:javascript
复制
# zone.json
{
    "id": "2f58efaa-3fa2-48b2-b996-7f924ae1215c",
    "name": "demo",
    "domain_root": "demo.rgw.data.root",
    "control_pool": "demo.rgw.control",
    "gc_pool": "demo.rgw.gc",
    "log_pool": "demo.rgw.log",
    "intent_log_pool": "demo.rgw.intent-log",
    "usage_log_pool": "demo.rgw.usage",
    "user_keys_pool": "demo.rgw.users.keys",
    "user_email_pool": "demo.rgw.users.email",
    "user_swift_pool": "demo.rgw.users.swift",
    "user_uid_pool": "demo.rgw.users.uid",
    "system_key": {
        "access_key": "",
        "secret_key": ""
    },
    "placement_pools": [
        {
            "key": "default-placement",
            "val": {
                "index_pool": "demo.rgw.buckets.index", #index pool
                "data_pool": "demo.rgw.buckets.data", #数据pool
                "data_extra_pool": "demo.rgw.buckets.non-ec",
                "index_type": 0
            }
        }
    ],
    "metadata_heap": "",
    "realm_id": ""
}

zonegroup配置

代码语言:javascript
复制
# zonegroup.json
{
    "id": "9d07fb3c-45d7-4d63-a475-fd6ebd41b722", #Zonegroup的ID
    "name": "zg", #zonegroup名称
    "api_name": "", #bucket的localtion定义在这里
    "is_master": "true",
    "endpoints": [],
    "hostnames": [],
    "hostnames_s3website": [],
    "master_zone": "2f58efaa-3fa2-48b2-b996-7f924ae1215c",  #zone的ID
    "zones": [
        {
            "id": "2f58efaa-3fa2-48b2-b996-7f924ae1215c", #zone的ID
            "name": "demo", #zone名称
            "endpoints": [],
            "log_meta": "false",
            "log_data": "false",
            "bucket_index_max_shards": 0,
            "read_only": "false"
        }
    ],
    "placement_targets": [
        {
            "name": "default-placement",
            "tags": []
        }
    ],
    "default_placement": "default-placement",
    "realm_id": ""
}

3导入配置文件

代码语言:javascript
复制
radosgw-admin realm create --rgw-realm=nt --default #新建一个realm名称为nt
radosgw-admin zonegroup set < zonegroup.json --rgw-realm=nt --rgw-zonegroup=zg  --default #导入之前的zonegroup配置,zonegroup名称为zg
radosgw-admin zone set < zone.json --rgw-zonegroup=zg --rgw-zone=demo --master --default #导入zone配置,zone名称为demo

/etc/init.d/radosgw start #启动服务

4验证

新建用户

代码语言:javascript
复制
radosgw-admin user create --uid=s3user --display-name=s3user
代码语言:javascript
复制
ceph df
GLOBAL:
    SIZE       AVAIL      RAW USED     %RAW USED
    92114M     88985M        3128M          3.40
POOLS:
    NAME                        ID     USED     %USED     MAX AVAIL     OBJECTS
    .rgw.root                   73     2072         0        88558M          12
    demo.rgw.data.root          74      609         0        88558M           2
    demo.rgw.control            75        0         0        88558M           8
    demo.rgw.gc                 76        0         0        88558M          32
    demo.rgw.log                77       50         0        88558M         128
    demo.rgw.intent-log         78        0         0        88558M           0
    demo.rgw.usage              79        0         0        88558M           0
    demo.rgw.users.keys         80       13         0        88558M           1
    demo.rgw.users.email        81        0         0        88558M           0
    demo.rgw.users.swift        82        0         0        88558M           0
    demo.rgw.users.uid          83      329         0        88558M           2
    demo.rgw.buckets.index      84        0         0        88558M           1
    demo.rgw.buckets.data       85        0         0        88558M           0
    demo.rgw.buckets.non-ec     86        0         0        88558M           0

demo.rgw.users.keys和demo.rgw.users.uid 的OBJECTS>0,说明已经成功。

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-06-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Ceph对象存储方案 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档