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

Ceph篇之利用shell脚本实现批量创建bucket桶

Ceph创建bucket桶

在 Ceph 中创建桶(bucket)需要使用 Ceph 对象网关(RGW)。
请添加图片描述
注:如果查看shell批量创建脚本请直接参见目录3

1. 利用radosgw-admin工具创建桶

确保 Ceph 集群和对象网关已正确配置
确保你的 Ceph 集群已安装并配置了 RADOS 网关(RGW)。
对象网关是 Ceph的对象存储接口,可以通过 S3 或 Swift API 访问。

创建一个用户(如果还没有用户的话)
如果你还没有创建用户,可以使用 radosgw-admin 工具创建一个用户。用户通常用于管理桶。

radosgw-admin user create --uid=<username> --display-name="User Display Name"

例如:

radosgw-admin user create --uid=johndoe --display-name="John Doe"

使用 radosgw-admin 工具创建桶:

使用 radosgw-admin 工具创建桶。以下命令可以帮助你创建一个新的桶:

radosgw-admin bucket create --bucket=<bucket-name> --user=<username>

例如:

radosgw-admin bucket create --bucket=mybucket --user=johndoe

验证桶的创建:
你可以使用 radosgw-admin bucket stats 命令来检查桶的状态和信息。

radosgw-admin bucket stats --bucket=<bucket-name>

例如:

radosgw-admin bucket stats --bucket=mybucket

2. 利用s3cmd创建ceph的bucket桶

通过 S3 或 Swift API 访问桶:
你也可以通过 S3 或 Swift API 来管理桶和对象,这需要你配置好相应的访问权限和认证信息。

前提条件: 需要利用s3cmd服务关联存储服务,
详情可参考这篇文章:https://blog.csdn.net/xu710263124/article/details/141229039?spm=1001.2014.3001.5501

// 创建桶:
s3cmd mb s3://my-bucket-name

3. 利用shell脚本直接批量创建bucket桶并开放公共读取权限

前提条件: 需要利用s3cmd服务关联存储服务,
详情可参考这篇文章:https://blog.csdn.net/xu710263124/article/details/141229039?spm=1001.2014.3001.5501

实现方式如下:

1、编译需要创建的桶名称

vim buckets.txt

例如:

bucket1
bucket2

2、脚本内容

vim create_buckets.sh

注意事项:

这里需要注意两个变量:

  1. 修改S3CMD_CONFIG为自己的路径地址
  2. 修改BUCKETS_FILE为自己的路径地址
#!/bin/bash# 配置 s3cmd 的配置文件路径
S3CMD_CONFIG="/path/to/.s3cfg"# 桶名称文件路径
BUCKETS_FILE="buckets.txt"# 检查桶名称文件是否存在
if [ ! -f "$BUCKETS_FILE" ]; thenecho "桶名称文件 $BUCKETS_FILE 不存在。"exit 1
fi# 读取每一行,并创建桶
while IFS= read -r bucket_name; doif [ -z "$bucket_name" ]; thencontinue  # 跳过空行fi# 创建桶echo "创建桶: $bucket_name"s3cmd mb "s3://$bucket_name" --config="$S3CMD_CONFIG"if [ $? -ne 0 ]; thenecho "创建桶 $bucket_name 失败。"continuefi# 设置公共读取权限echo "设置公共读取权限: $bucket_name"s3cmd setacl "s3://$bucket_name" --acl-public --config="$S3CMD_CONFIG"if [ $? -ne 0 ]; thenecho "设置桶 $bucket_name 公共读取权限失败。"elseecho "桶 $bucket_name 创建成功,并设置为公共读取。"fidone < "$BUCKETS_FILE"

赋权

chmod +x  create_buckets.sh

执行

sh create_buckets.sh

输出结果如下:
在这里插入图片描述

http://www.lryc.cn/news/426402.html

相关文章:

  • 周末总结(2024/08/17)
  • SQL高级编程:掌握自定义函数和过程的艺术
  • python监听环境内是否有声音
  • 合并两个有序链表--力扣
  • 【自用】Python爬虫学习(三):图片下载、使用代理、防盗链视频下载、多线程与多进程
  • #Datawhale AI夏令营第4期#AIGC方向Task3
  • 【docker综合篇】关于我用docker搭建了6个应用服务的事
  • 【sgCreateAPIFunction】自定义小工具:敏捷开发→自动化生成API接口方法代码片段脚本(接口方法代码生成工具)
  • Vue2图片懒加载(vue-lazyload)
  • Jenkins-拉取代码
  • 深度解析:.secret勒索病毒如何加密你的数据并勒索赎金
  • 测试岗位应该学什么
  • 【RISC-V设计-12】- RISC-V处理器设计K0A之验证环境
  • react-redux的使用
  • 大模型在chat bi 场景下的优化思路
  • Qt登录窗口
  • Zookeeper的在Ubuntu20.04上的集群部署
  • Qt+OpenCV配置和测试
  • Ruby GUI宝典:探索顶级图形界面库
  • 探索Jinja2的神秘力量:Python模板引擎的魔法之旅
  • Vue3小兔仙电商项目实战
  • MATLAB基础应用精讲-【数模应用】肯德尔协调系数(附MATLAB、R语言和python代码实现)
  • 计算函数(c语言)
  • Linux 7 x86平台上安装达梦8数据库
  • 【老张的程序人生】我命由我不由天:我的计算机教师中级岗之旅
  • 1.Linux_常识
  • 下载文件--后端返回文件数据,前端怎么下载呢
  • CSS方向选择的艺术:深入探索:horizontal和:vertical伪类
  • 探索PHP的心脏:流行CMS系统全解析
  • 图片展示控件QGraphicsView、QGraphicsScene、QGraphicsItem的使用Demo