当前位置: 首页 > news >正文

ceph rgw 桶分片之reshard

Ceph RGW(RADOS Gateway)的 reshard 功能是用来动态调整对象存储的分片(shard)数量,从而优化性能和存储利用率。随着数据量的增加,初始的分片设置可能无法满足性能需求,因此 reshard 功能允许用户在不影响服务可用性的情况下进行调整。 
 
### Reshard 功能的详细说明: 
 
1. **分片的概念**: 
   - 在 Ceph RGW 中,分片是将对象存储桶的对象分散到多个分片(shard)中,以便更好地管理和访问数据。每个分片可以被视为一个小的对象存储区域。 
 
2. **动态调整**: 
   - Reshard 功能允许用户根据负载和数据量的变化,动态调整存储桶的分片数量。用户可以增加或减少分片的数量,以适应不同的使用场景。 
 
3. **性能优化**: 
   - 通过增加分片数量,可以提高并发访问的性能,因为多个分片可以同时处理请求。相反,当数据量减少时,可以减少分片数量,从而节省资源。 
 
4. **无缝操作**: 
   - Resharding 过程是无缝的,用户在调整分片数量时,不会影响到正在进行的读写操作。这使得系统能够在高可用性和高性能之间取得平衡。 
 
5. **管理工具**: 
   - Ceph 提供了一些命令行工具和 API 来管理 reshard 操作。用户可以使用这些工具来查看当前的分片状态,执行 reshard 操作,以及监控性能。 
 
6. **监控和优化**: 
   - 在执行 reshard 操作后,建议监控系统的性能,确保调整后的分片数量能够满足当前的负载需求。 
 
### 使用场景: 
- 当存储桶中的对象数量显著增加时,可能需要增加分片数量以保持良好的性能。 
- 当存储桶中的对象数量减少时,可以考虑减少分片数量,以节省资源和提高管理效率。 
 

### 桶分片操作:
1. 查看桶的状态详情。
radosgw-admin bucket stats --bucket abccc

root@u22c01:~# radosgw-admin bucket stats --bucket abccc
{"bucket": "abccc","num_shards": 37,   # 一共有37个分片"tenant": "","zonegroup": "844b2a85-e5d8-40a4-a875-a941523e251c","placement_rule": "default-placement","explicit_placement": {"data_pool": "","data_extra_pool": "","index_pool": ""},"id": "b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9",   # 桶分片索引"marker": "b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.1","index_type": "Normal","owner": "test","ver": "0#190,1#189,2#183,3#190,4#182,5#201,6#191,7#197,8#174,9#183,10#188,11#194,12#204,13#192,14#190,15#171,16#196,17#191,18#202,19#196,20#196,21#194,22#185,23#185,24#179,25#191,26#185,27#197,28#176,29#180,30#191,31#196,32#184,33#185,34#194,35#188,36#208","master_ver": "0#0,1#0,2#0,3#0,4#0,5#0,6#0,7#0,8#0,9#0,10#0,11#0,12#0,13#0,14#0,15#0,16#0,17#0,18#0,19#0,20#0,21#0,22#0,23#0,24#0,25#0,26#0,27#0,28#0,29#0,30#0,31#0,32#0,33#0,34#0,35#0,36#0","mtime": "2024-09-26T10:31:16.678406Z","creation_time": "2024-09-25T13:57:53.525125Z","max_marker": "0#,1#,2#,3#,4#,5#,6#,7#,8#,9#,10#,11#,12#,13#,14#,15#,16#,17#,18#,19#,20#,21#,22#,23#,24#,25#,26#,27#,28#,29#,30#,31#,32#,33#,34#,35#,36#","usage": {"rgw.main": {"size": 7851037,"size_actual": 684150784,"size_utilized": 7851037,"size_kb": 7668,"size_kb_actual": 668116,"size_kb_utilized": 7668,"num_objects": 166905}},"bucket_quota": {"enabled": false,"check_on_raw": false,"max_size": -1,"max_size_kb": 0,"max_objects": -1}
}


2. 查看桶分片索引

root@u22c01:~# rados ls -p default.rgw.buckets.index | grep b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9 | sort
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.0
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.1
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.10
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.11
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.12
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.13
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.14
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.15
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.16
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.17
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.18
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.19
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.2
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.20
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.21
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.22
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.23
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.24
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.25
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.26
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.27
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.28
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.29
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.3
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.30
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.31
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.32
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.33
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.34
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.35
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.36
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.4
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.5
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.6
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.7
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.8
.dir.b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9.9
root@u22c01:~#

3. 修改桶分片数
root@u22c01:~# radosgw-admin reshard add --bucket abccc --num-shards 64 --yes-i-really-mean-it

4. 查看当前分片操作中的桶

root@u22c01:~# radosgw-admin reshard add --bucket abccc --num-shards 64 --yes-i-really-mean-it
root@u22c01:~# radosgw-admin reshard list
[{"time": "2024-09-26T15:03:32.555544Z","tenant": "","bucket_name": "abccc","bucket_id": "b8e366d3-0ab0-454e-9323-680528f5eccc.1054223.9","new_instance_id": "","old_num_shards": 37,"tentative_new_num_shards": 64}
]

5. 影响桶分片参数
    "rgw_dynamic_resharding": "true",    # 是否开启自动分片
    "rgw_max_objs_per_shard": "100000", # 单分片,最多容纳的文件数,建议在100000-125000万之间

### 总结: 
Ceph RGW 的 reshard 功能是一个强大的工具,可以帮助用户根据实际需求动态调整存储桶的分片数量,从而优化性能和资源利用率。通过合理使用该功能,用户可以确保其对象存储系统在面对变化的负载时,始终保持高效和可靠。 

备注:

        ceph 14 ,如果桶根目录下有中文文件夹或者中文文件,在发生分片时,会丢失。可以将中文文件/文件夹放到子目录里面,一级目录使用字母。ceph 17没有这个问题

相关文章:

ceph rgw 桶分片之reshard

Ceph RGW(RADOS Gateway)的 reshard 功能是用来动态调整对象存储的分片(shard)数量,从而优化性能和存储利用率。随着数据量的增加,初始的分片设置可能无法满足性能需求,因此 reshard 功能允许用…...

开放原子开源基金会网站上的开源项目Opns存在缓冲区溢出缺陷

最近在开放原子开源基金会网站上,看到一些开源项目,之前分析出华为的鸿蒙操作系统代码,没有发现有价值的安全漏洞。现在,下载上面的Onps开源网络协议栈,既然是通讯所使用的软件,其质量应该值得信任呢&#…...

未来前端发展方向:深度探索与技术前瞻

未来前端发展方向:深度探索与技术前瞻 在数字化浪潮席卷全球的今天,前端开发作为连接用户与数字世界的桥梁,其重要性不言而喻。随着技术的不断进步和市场的不断变化,前端开发领域正经历着前所未有的变革。今天,我们将深…...

前端工程规范-2:JS代码规范(Prettier + ESLint)

Prettier 和 ESLint 是两个在现代 JavaScript 开发中广泛使用的工具,它们结合起来可以提供以下作用和优势: 代码格式化和风格统一: Prettier 是一个代码格式化工具,能够自动化地处理代码的缩进、空格、换行等格式问题,…...

Tomcat为什么要打破双亲委派?怎么保证安全

Tomcat打破双亲委派模型的原因主要是为了解决Web应用程序中的类加载冲突问题,并提供更好的灵活性和可扩展性。在Java中,双亲委派模型是一种类加载机制,它确保了类加载的安全性和一致性,但在Web应用程序的场景下,它可能…...

【C++篇】启航——初识C++(下篇)

接上篇【C篇】启航——初识C(上篇) 目录 一、引用 1.引用的概念 2.引用的基本语法 3.引用的特点 3.1 别名 3.2 不占用额外内存 3.3 必须初始化 3.4 不能为 NULL 4.引用的使用 4.1 函数参数传递 4.2 返回值 4.3 常量引用 5.引用和指针的关…...

Elasticsearch快速入门

文章目录 Elasticsearch快速入门核心概念倒排索引基本使用索引操作创建索引类型映射[了解]数据类型[了解] 查看索引删除索引 文档操作添加文档修改文档删除文档查询文档准备数据主键查询精确查询匹配查询 Elasticsearch快速入门 核心概念 Elasticsearch是面向文档的&#xff…...

uniapp微信小程序遮罩层u-popup禁止底层穿透

添加 touchmove.prevent&#xff0c;遮罩层底部的页面就不会滑动了微信开发者工具不生效&#xff0c;真机生效 <u-popup :show"showEwm" close"closeEwm" mode"center" touchmove.prevent><view class"ewmshow"></vie…...

【RocketMQ】秒杀设计与实现

&#x1f3af; 导读&#xff1a;本文档详细探讨了高并发场景下的秒杀系统设计与优化策略&#xff0c;特别是如何在短时间内处理大量请求。文档分析了系统性能指标如QPS&#xff08;每秒查询率&#xff09;和TPS&#xff08;每秒事务数&#xff09;&#xff0c;并通过实例讲解了…...

高级架构师面试题

一、技术深度方面 微服务架构的核心概念和优势&#xff1a; • 核心概念&#xff1a;将一个大型的应用拆分为多个小型的、独立部署的服务&#xff0c;每个服务都围绕着特定的业务功能进行构建&#xff0c;服务之间通过轻量级的通信机制进行交互。 • 优势&#xff1a; • 独…...

phpstudy简易使用

注意&#xff0c;本文所述的操作步骤均建立在电脑上已经完成php环境变量的配置与vscode的安装之上 、...

ubuntu server 常用配置

这里写目录标题 0001 虚拟机静态IP0002 vim tab 4个空格0003 设置时区0004 网络端口查看端口开放端口 0005 修噶机主机名 0001 虚拟机静态IP win网络链接&#xff0c;IP地址&#xff1a;192.168.220.1 - NAT网关&#xff1a;192.168.220.2 - ubuntu静态IP设置&#xff1a; ca…...

[Day 82] 區塊鏈與人工智能的聯動應用:理論、技術與實踐

AI在風險控制中的應用案例 風險控制是企業管理中至關重要的一環&#xff0c;AI技術的引入為風險控制帶來了前所未有的自動化和智能化。無論是在金融、保險、製造業&#xff0c;還是網絡安全中&#xff0c;AI都能有效地分析和預測潛在風險。本文將探討AI在風險控制中的應用&…...

微信小程序map组件自定义气泡真机不显示

最近遇到一个需求需要使用uniapp的map自定义气泡 &#xff0c;做完之后发现在模拟器上好好的&#xff0c;ios真机不显示&#xff0c;安卓页数时好时不好的 一番查询发现是小程序的老问题了&#xff0c;网上的方法都试了也没能解决 后来看到有人说用nvue可以正常显示&#xff0c…...

数据结构之链表(2),双向链表

目录 前言 一、链表的分类详细 二、双向链表 三、双向链表的实现 四、List.c文件的完整代码 五、使用演示 总结 前言 接着上一篇单链表来详细说说链表中什么是带头和不带头&#xff0c;“哨兵位”是什么&#xff0c;什么是单向什么是双向&#xff0c;什么是循环和不循环。然后实…...

STL之list篇(下)(从底层分析实现list容器,逐步剥开list的外表)

文章目录 前言一、list的数据结构和类实现需求1.1 数据结构1.2 list类实现需求 二、list迭代器的实现2.1 为什么list不能直接把迭代器当作指针一样使用&#xff1f;2.2 list迭代器的框架设计2.3 *和-> 操作符的重载2.4 和-- 操作符的重载2.5 !和 操作符的重载 三、 list的函…...

视频去水印的3个技巧,教你无痕去水印

许多视频平台为了推广自身品牌或者广告用途&#xff0c;会在视频上添加水印。这些水印不仅影响了视频的美观&#xff0c;还可能限制了内容的传播范围。幸运的是&#xff0c;有几种简单而有效的方法可以帮助我们去除视频中的水印&#xff0c;同时保持视频的原始画质和观感。以下…...

LSTM模型改进实现多步预测未来30天销售额

关于深度实战社区 我们是一个深度学习领域的独立工作室。团队成员有&#xff1a;中科大硕士、纽约大学硕士、浙江大学硕士、华东理工博士等&#xff0c;曾在腾讯、百度、德勤等担任算法工程师/产品经理。全网20多万粉丝&#xff0c;拥有2篇国家级人工智能发明专利。 社区特色…...

八LAMP搭建

# LAMP ## 一、知识回顾 ### FTP samba nfs 特点 - 借用Linux用户作为映射用户&#xff0c;进行权限管理 - 软件本身还有管理控制权限 #### 客户端连接到服务器后进行读写执行等操作 &#xff0c;必须同时具有: - 软件许可的权限 vsftpd: anon upload enableYES - 文件…...

Windows——解除Windows系统中文件名和目录路径的最大长度限制

第一步&#xff1a;打开本地组策略编辑器 按下Win R键打开运行窗口&#xff0c;输入 gpedit.msc 并回车&#xff0c;打开本地组策略编辑器。 第二步&#xff1a;开启 长路径设置 第三步&#xff1a;重启计算机...

Qt/C++开发监控GB28181系统/取流协议/同时支持udp/tcp被动/tcp主动

一、前言说明 在2011版本的gb28181协议中&#xff0c;拉取视频流只要求udp方式&#xff0c;从2016开始要求新增支持tcp被动和tcp主动两种方式&#xff0c;udp理论上会丢包的&#xff0c;所以实际使用过程可能会出现画面花屏的情况&#xff0c;而tcp肯定不丢包&#xff0c;起码…...

MODBUS TCP转CANopen 技术赋能高效协同作业

在现代工业自动化领域&#xff0c;MODBUS TCP和CANopen两种通讯协议因其稳定性和高效性被广泛应用于各种设备和系统中。而随着科技的不断进步&#xff0c;这两种通讯协议也正在被逐步融合&#xff0c;形成了一种新型的通讯方式——开疆智能MODBUS TCP转CANopen网关KJ-TCPC-CANP…...

零基础设计模式——行为型模式 - 责任链模式

第四部分&#xff1a;行为型模式 - 责任链模式 (Chain of Responsibility Pattern) 欢迎来到行为型模式的学习&#xff01;行为型模式关注对象之间的职责分配、算法封装和对象间的交互。我们将学习的第一个行为型模式是责任链模式。 核心思想&#xff1a;使多个对象都有机会处…...

初学 pytest 记录

安装 pip install pytest用例可以是函数也可以是类中的方法 def test_func():print()class TestAdd: # def __init__(self): 在 pytest 中不可以使用__init__方法 # self.cc 12345 pytest.mark.api def test_str(self):res add(1, 2)assert res 12def test_int(self):r…...

如何在Windows本机安装Python并确保与Python.NET兼容

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

Vue3 PC端 UI组件库我更推荐Naive UI

一、Vue3生态现状与UI库选择的重要性 随着Vue3的稳定发布和Composition API的广泛采用&#xff0c;前端开发者面临着UI组件库的重新选择。一个好的UI库不仅能提升开发效率&#xff0c;还能确保项目的长期可维护性。本文将对比三大主流Vue3 UI库&#xff08;Naive UI、Element …...

Mysql故障排插与环境优化

前置知识点 最上层是一些客户端和连接服务&#xff0c;包含本 sock 通信和大多数jiyukehuduan/服务端工具实现的TCP/IP通信。主要完成一些简介处理、授权认证、及相关的安全方案等。在该层上引入了线程池的概念&#xff0c;为通过安全认证接入的客户端提供线程。同样在该层上可…...

MCP和Function Calling

MCP MCP&#xff08;Model Context Protocol&#xff0c;模型上下文协议&#xff09; &#xff0c;2024年11月底&#xff0c;由 Anthropic 推出的一种开放标准&#xff0c;旨在统一大模型与外部数据源和工具之间的通信协议。MCP 的主要目的在于解决当前 AI 模型因数据孤岛限制而…...

LeetCode - 148. 排序链表

目录 题目 思路 基本情况检查 复杂度分析 执行示例 读者可能出的错误 正确的写法 题目 148. 排序链表 - 力扣&#xff08;LeetCode&#xff09; 思路 链表归并排序采用"分治"的策略&#xff0c;主要分为三个步骤&#xff1a; 分割&#xff1a;将链表从中间…...

CCF 开源发展委员会 “开源高校行“ 暨红山开源 + OpenAtom openKylin 高校行活动在西安四所高校成功举办

点击蓝字 关注我们 CCF Opensource Development Committee CCF开源高校行 暨红山开源 openKylin 高校行 西安站 5 月 26 日至 28 日&#xff0c;CCF 开源发展委员会 "开源高校行" 暨红山开源 OpenAtom openKylin 高校行活动在西安四所高校&#xff08;西安交通大学…...