本文指针对mimic版的ceph镜像成功部署,其他版本自行测试
经实验拉取最新版本的ceph镜像(docker pull ceph/daemon:latest)在部署osd时容器报错:
/opt/ceph-container/bin/osd_disk_prepare.sh: line 46: ceph-disk: command not found
GitHub相关issue:https://github.com/ceph/ceph-container/issues/1395
# 1.拉取镜像、创建目录 docker pull ceph/daemon:latest-mimic mkdir /etc/ceph mkdir /var/lib/ceph # 2.节点1运行mon、并将配置复制到其他节点 docker run -d --net=host --name=mon --restart=always -v /etc/ceph:/etc/ceph -v /var/lib/ceph:/var/lib/ceph -e MON_IP=192.168.200.186 -e CEPH_PUBLIC_NETWORK=192.168.200.0/24 ceph/daemon:latest-mimic mon scp -r /etc/ceph/* ceph02:/etc/ceph/ scp -r /etc/ceph/* ceph03:/etc/ceph/ scp -r /var/lib/ceph/bootstrap-* ceph02:/var/lib/ceph/ scp -r /var/lib/ceph/bootstrap-* ceph03:/var/lib/ceph/ # 3.节点2运行mon docker run -d --net=host --name=mon --restart=always -v /etc/ceph:/etc/ceph -v /var/lib/ceph:/var/lib/ceph -e MON_IP=192.168.200.187 -e CEPH_PUBLIC_NETWORK=192.168.200.0/24 ceph/daemon:latest-mimic mon # 4.节点3运行mon docker run -d --net=host --name=mon --restart=always -v /etc/ceph:/etc/ceph -v /var/lib/ceph:/var/lib/ceph -e MON_IP=192.168.200.188 -e CEPH_PUBLIC_NETWORK=192.168.200.0/24 ceph/daemon:latest-mimic mon # 5.运行osd(有多少osd就运行多少个docker容器) docker run -d --net=host --name=osd-1 --restart=always -v /etc/ceph:/etc/ceph -v /var/lib/ceph:/var/lib/ceph -v /dev/:/dev/ --pid=host --privileged=true -e OSD_DEVICE=/dev/sdb -e OSD_TYPE=disk -v /run/udev/:/run/udev/ ceph/daemon:latest-mimic osd docker run -d --net=host --name=osd-2 --restart=always -v /etc/ceph:/etc/ceph -v /var/lib/ceph:/var/lib/ceph -v /dev/:/dev/ --pid=host --privileged=true -e OSD_DEVICE=/dev/sdc -e OSD_TYPE=disk -v /run/udev/:/run/udev/ ceph/daemon:latest-mimic osd docker run -d --net=host --name=osd-3 --restart=always -v /etc/ceph:/etc/ceph -v /var/lib/ceph:/var/lib/ceph -v /dev/:/dev/ --pid=host --privileged=true -e OSD_DEVICE=/dev/sdd -e OSD_TYPE=disk -v /run/udev/:/run/udev/ ceph/daemon:latest-mimic osd # 6.运行mgr docker run -d --net=host --name=mgr --restart=always -v /etc/ceph:/etc/ceph -v /var/lib/ceph:/var/lib/ceph ceph/daemon:latest-mimic mgr # 7.验证 docker ps docker exec mon ceph -s docker exec mon ceph osd tree