Docker安装部署Ceph

参考 :
使用Docker单机部署Ceph

[Centos7系统Docker Ceph 集群的安装配置](https://blog.csdn.net/hxx688/article/details/103440967)

三台虚拟机的部署情况如下表所示

主机名称 主机IP 说明
Ceph1 202.205.161.81 容器主节点(Dashboard、mon、rgw、mgr、osd)
Ceph2 202.205.161.82 容器子节点(mon、rgw、mgr、osd)
Ceph3 202.205.161.83 容器子节点(mon、rgw、mgr、osd)

0.清理现有环境:所有机器都执行:

rm -rf etc/ceph /var/lib/ceph /var/log/ceph

1.创建Ceph专用网络

docker network create --driver bridge --subnet 172.20.0.0/16 ceph-network

2.拉取搭建用镜像(All)

docker pull ceph/daemon:latest-luminous

ctr image pull docker.io/ceph/daemon:latest-luminous

3.搭建mon节点—Master

这个脚本是为了启动监视器,监视器的作用是维护整个Ceph集群的全局状态。一个集群至少要有一个监视器,最好要有奇数个监视器。方便当一个监视器挂了之后可以选举出其他可用的监视器。

启动脚本说明:

  1. name参数,指定节点名称,这里设为ceph-mon

  2. -v xxx:xxx 是建立宿主机与容器的目录映射关系,包含 etc、lib、logs目录。

  3. MON_IP是Docker运行的IP地址(通过ifconfig来查询,取ens33里的inet那个IP),这里我们有3台服务器,那么MAN_IP需要写上3个IP,如果IP是跨网段的CEPH_PUBLIC_NETWORK必须写上所有网段。

  4. CEPH_PUBLIC_NETWORK配置了运行Docker主机所有网段 这里必须指定nautilus版本,不然会默认操作最新版本ceph,mon必须与前面定义的name保持一致。

#首先启动主节点mon(master节点)
docker run -d --name ceph-mon \
     --restart unless-stopped \
     --network host \
     -e CLUSTER=ceph -e WEIGHT=1.0 \
     -e MON_IP=202.205.161.81,202.205.161.82,202.205.161.83 \
     -e MON_NAME=ceph-mon \
     -e CEPH_PUBLIC_NETWORK=202.205.161.0/23 \
     -v /etc/ceph:/etc/ceph \
     -v /var/lib/ceph/:/var/lib/ceph/ \
     -v /var/log/ceph/:/var/log/ceph/ \
     -v /etc/localtime:/etc/localtime:ro \
     ceph/daemon:latest-luminous mon

image.png

#生成文件
docker exec ceph-mon ceph auth get client.bootstrap-osd -o /var/lib/ceph/bootstrap-osd/ceph.keyring			#在mon节点生成osd的密钥信息
docker exec ceph-mon ceph auth get client.bootstrap-rgw -o /var/lib/ceph/bootstrap-rgw/ceph.keyring			#在mon节点生成rgw的密钥信息

image.png

#####修改配置文件

# 修改配置文件以兼容etx4硬盘
vim /etc/ceph/ceph.conf
#在文件最后添加:
osd max object name len = 256
osd max object namespace len = 64

# 容忍更多的时钟误差
mon clock drift allowed = 2
mon clock drift warn backoff = 30
# 允许删除pool
mon_allow_pool_delete = true

[mgr]
# 开启WEB仪表盘
mgr modules = dashboard
[client.rgw.ceph1]
# 设置rgw网关的web访问端口
rgw_frontends = "civetweb port=20003"

4.拷贝配置文件

scp -pr  /etc/ceph/    ceph2:/etc/
scp -pr  /etc/ceph/    ceph3:/etc/
scp -pr /var/lib/ceph ceph2:/var/lib/
scp -pr /var/lib/ceph ceph3:/var/lib/

image.png

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TIPl8Gdp-1674877991314)(https://img.winjay.cn/md/image-20210122112338587.png)]image-20210221004551668

5.Node节点启动mon

报错:

[root@ceph1 ceph]# docker logs ceph-mon 
2021-
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

WinJayX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值