Ceph集群多服务器离线部署
存储系统:ceph-14.2.22
操作系统:ubuntu-server-18.04
集群组织架构
在ceph集群中,安装了ceph软件的并且部署了一系列ceph集群服务的主机被称之为ceph集群节点,上图中的node0虽然属于管理节点,但它并不属于ceph集群,它没有安装任何ceph软件,也没有部署任何ceph集群服务;
获取Ceph源码
获取方式
获取ceph源码的方式很多,常见的2种方法:
- 从github上拉取代码到本地;
- 直接下载ceph源码的tar包;
本文推荐选择第二种;原因:首先,访问github网站很慢,需要配置镜像源。而且有的镜像源用着用着就出现无法解析域名,有点坑;其次,tar包中包含了ceph整个项目的源码(包括使用的子模块源码),所以不用担心源码缺失问题;
下载地址
tar包下载地址:https://mirrors.aliyun.com/ceph/debian-nautilus/pool/main/c/ceph/ceph_14.2.22.orig.tar.gz
制作本地软件仓库源
制作deb包
Ceph官网提供制作deb包方法,经过测试发现会有问题。如果直接执行dpkg-buildpackage,会出现签证问题,导致制作失败。此处应该禁用签证,并开启多线程。在ceph源码根目录下执行以下命令;
dpkg-buildpackage --build=binary -us -ui -uc -j4- 上面制作过程很漫长,另外所有的包全部放在了ceph源码外面,和ceph源码同级目录;
- 默认会生成2种deb包,一种是带dbg后缀的,一种是不带dbg后缀的;区别在于,dbg包可以用来调试代码。比如:如果想要调试osd进程,需要同时安装ceph-osd和ceph-osd-dbg包;
创建Ceph软件仓库目录
mkdir -p /opt/ceph.14.2.22/pool将所有deb包放到仓库中
mv *.deb /opt/ceph.14.2.22/pool/生成Packages文件
cd /opt/ceph.14.2.22/ dpkg-scanpackages . /dev/null | gzip -9c > Packages.gz最终的目录结构如下
. ├── Packages.gz │ └── pools├── ceph_14.2.22-1_amd64.deb├── ceph-base_14.2.22-1_amd64.deb├── ceph-base-dbg_14.2.22-1_amd64.deb├── ceph-common_14.2.22-1_amd64.deb├── ceph-common-dbg_14.2.22-1_amd64.deb├── cephfs-shell_14.2.22-1_all.deb├── ceph-fuse_14.2.22-1_amd64.deb└── ceph-fuse-dbg_14.2.22-1_amd64.deb添加ceph.list
添加本地源有2种方式:采用http服务的形式和采用file的形式。
file形式
创建ceph.list文件,并将该文件添加到 /etc/apt/source.list.d/ 下,并添加以下内容。
[ 注 ] ubuntu默认情况下不支持没有签名认证的软件,因此必须要添加[trusted=yes]
http形式
创建ceph.list文件,并将该文件添加到 /etc/apt/source.list.d/ 下,并添加以下内容。
如果采用http方式,需要安装apache服务才可以使用;
安装Apache服务
安装完之后,浏览器访问http://192.168.3.10,默认是apche界面,需要设置,以便可以访问 http://192.168.3.10/ceph;
ln -s /opt/ceph.14.2.22 /var/www/html/ceph更新仓库
apt update
集群部署
离线部署ceph过程和在线部署ceph过程总体上是一样的,可以参考【Ceph集群部署】多机在线部署,唯一不同点在于ceph-deploy工具的安装。离线部署ceph需要手动下载ceph-deploy安装包并离线安装,下载地址:ceph-deploy_2.0.1;
总结
以上是生活随笔为你收集整理的Ceph集群多服务器离线部署的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: DM3730开发
- 下一篇: H5版俄罗斯方块(5)---需求演进和产