文档章节

利用bucket localtion实现rgw集群扩容

秦牧羊
 秦牧羊
发布于 2016/07/07 16:03
字数 424
阅读 507
收藏 1

【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>>

扩容思路:ceph集群容量不足的时候,新加的OSD组成新的pool,制定新的rule规则,新建的bucket都存放在这些新加入的pool里面,注意扩容仅限于新加的bucket,已有的bucket扩容不适用。

###1.新建pool

ceph osd pool create .rgw.buckets.custom 4096 4096
ceph osd pool create .rgw.buckets.custom.index 512 512
ceph osd pool create .rgw.buckets.custom.extra 64 64

###2.调整region和zone配置 导出region配置

radosgw-admin region get --name client.radosgw.us-zone1  > region.conf.json

编辑region.conf.json,修改placement_targets部分

	#修改前
    "placement_targets": [
        {
            "name": "default-placement",
            "tags": []
        }
    ],
    "default_placement": "default-placement"

	#修改后
    "placement_targets": [
        {
            "name": "default-placement",
            "tags": []
        },
        {
            "name": "new",
            "tags": []
        }
    ],
    "default_placement": "default-placement"

导出zone配置

radosgw-admin zone get --name client.radosgw.us-zone1 > zone.conf.json

编辑zone.conf.json,修改placement_targets部分

	#修改前
"placement_pools": [
        {
            "key": "default-placement",
            "val": {
                "index_pool": ".us-zone1.rgw.buckets.index",
                "data_pool": ".us-zone1.rgw.buckets",
                "data_extra_pool": ".us-zone1.rgw.buckets.extra"
            }
        }
   ]

	#修改后
"placement_pools": [
        {
            "key": "default-placement",
            "val": {
                "index_pool": ".us-zone1.rgw.buckets.index",
                "data_pool": ".us-zone1.rgw.buckets",
                "data_extra_pool": ".us-zone1.rgw.buckets.extra"
            }
        },
        {
            "key": "new",
            "val": {
                "index_pool": ".rgw.buckets.custom.index",
                "data_pool": ".rgw.buckets.custom",
                "data_extra_pool": ".rgw.buckets.custom.extra"
            }
        }

导入配置

radosgw-admin region set --name client.radosgw.us-zone1 < region.conf.json
radosgw-admin zone set --name client.radosgw.us-zone1 < zone.conf.json

刷新配置信息

radosgw-admin regionmap update --name client.radosgw.us-zone1

3.重启服务

注意:所有radosgw服务节点都要进行这一步

/etc/init.d/radosgw restart

###4. 验证测试

测试方法1: 新建bucket需要指定localtion,boto代码如下

from boto.s3.connection import S3Connection
import boto

access_key = 'xxx'
secret_key = 'xxxx'
host = 's3.ceph.work'
bucket = 'localtest2'

conn = S3Connection(access_key, secret_key, host=host, is_secure=False)

conn = boto.connect_s3(
        aws_access_key_id = access_key,
        aws_secret_access_key = secret_key,
        host = host,
        is_secure=False,
        calling_format = boto.s3.connection.SubdomainCallingFormat(),
        validate_certs = True,
        )
bucket = conn.create_bucket(bucket,location=':new')
bucket = conn.get_bucket(bucket)
print bucket

测试方法2

s3cmd mb s3://localtest2 --bucket-location=:new

验证

root@ceph.work/# radosgw-admin bucket stats --bucket=localtest2 --name client.radosgw.us-zone1

{
    "bucket": "localtest2",
    "pool": ".rgw.buckets.custom",
    "index_pool": ".rgw.buckets.custom.index",
    "id": "us-zone1.477528.2",
    "marker": "us-zone1.477528.2",
    "owner": "gf",
    "ver": "0#1,1#1,2#1,3#1,4#1,5#1,6#1,7#1",
    "master_ver": "0#0,1#0,2#0,3#0,4#0,5#0,6#0,7#0",
    "mtime": "2016-07-07 15:50:53.000000",
    "max_marker": "0#,1#,2#,3#,4#,5#,6#,7#",
    "usage": {},
    "bucket_quota": {
        "enabled": false,
        "max_size_kb": -1,
        "max_objects": -1
    }
}

© 著作权归作者所有

秦牧羊
粉丝 77
博文 57
码字总数 28980
作品 0
广州
架构师
私信 提问
加载中

评论(1)

安静美男子
安静美男子
已有bucket如果使用新pool,1. 通过radosgw-admin metadata能修改bucket的pool吗?2 。设计到rgw读写数据的修改,把对象每次写的datapool记录下来。
玩转 Ceph 的正确姿势

玩转 Ceph 的正确姿势 本文先介绍 Ceph, 然后会聊到一些正确使用 Ceph 的姿势;在集群规模小的时候,Ceph 怎么玩都没问题;但集群大了(到PB级别),这些准则可是保证集群健康运行的不二法门...

张立达
2017/05/03
0
0
基于redhat7.3 ceph对象存储集群搭建+owncloud S3接口整合生产实践

一、环境准备 安装redhat7.3虚拟机四台 在四台装好的虚拟机上分别加一块100G的硬盘。如图所示: 3.在每个节点上配置主机名 4.集群配置信息如下 5.各节点配置yum源 #需要在每个主机上执行以下...

盖世英雄iii
2018/06/27
0
0
从传统运维到云运维演进历程之软件定义存储(五)下

上篇文章讲到了Ceph在灾备方面有三大神兵利器:故障域、RBD异地灾备、RGW异地灾备。那么本文讲述下剩下的两大利器RBD异地灾备和RGW异地灾备 关卡五:Ceph灾备神兵利器-RBD Mirroring & RGW异...

Devin
2016/12/20
0
0
Openstack之CEPH简介

Oepnstack之CEPH系列是根据Ceph Cookbook整理的笔记,分为以下几个部分: 1. 《Ceph简介》 2. 《Ceph集群操作》 3. 《Ceph块设备管理与Openstack配置》 4. 《深入Ceph》 5. 《ceph优化与性能...

hiubuntu
2016/11/30
0
0
RGW S3 User解析

一、RGW S3 User使用的类关系图。 clsuserheader和clsuserbucketentry从用户角度看到用户所拥有的buckets信息,这两个对象(其中clsuserbucketentry以数组的形式出现)需要保存在ceph集群中。...

linuxhunter
2016/04/15
408
0

没有更多内容

加载失败,请刷新页面

加载更多

oracle查杀连接会话

由于频繁强制启停tomcat不清理连接等情况时可能导致oracle连接爆满,此时可以使用这个方式清理 --查询select sess.sid,sess.serial#,sess.machine,lo.oracle_username,lo.os_user_name,...

孑竹三秋
14分钟前
5
0
为什么互联网公司天天都在招人?

互联网公司招聘是很重要的环节,互联网公司离职率普遍较高,传统企业离职率较低,所以对于公司招聘是很重要的环节,同样一句“很重要”我看到许多人理解其程度实际上大相径庭。在很多互联网公...

码农突围
15分钟前
4
0
001-open-falcon的单机版安装

open-falcon 每台服务器,都有安装falcon-agent,falcon-agent是一个golang开发的daemon程序,用于自发现的采集单机的各种数据和指标 单机安装 redis mkdir /home/redis && cd /home/redis...

伟大源于勇敢的开始
16分钟前
3
0
人工智能领跑的未来,智能CRM未来可期

现在,几乎每个技术预测故事都以同样的方式开始:人工智能AI正在开辟新的可能性。这种趋势同样发生在CRM领域中。 人工智能正在通过访问和分析来改变CRM。它正在通过添加语音助手、同时改善工...

怡海软件-CRM
18分钟前
3
0
mysql-5.7.28-linux-glibc2.12-x86_64配置(参考)

[client]socket                                            = /data/mysql/var/mysql.sockport                                         ...

Wybaron
22分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部