部署ceph集群

2案例2:部署ceph集群

2.1问题

沿用案例1,部署ceph集群服务器,实现以下目标:

  • 安装部署工具ceph-deploy
  • 创建ceph集群
  • 准备日志磁盘分区
  • 创建OSD存储空间
  • 查看ceph状态,验证

2.2步骤

实现此案例需要按照如下步骤进行。

步骤一:部署软件

1)在node1安装部署工具,学习工具的语法格式

[root@node1 ~]#  yum -y install ceph-deploy
[root@node1 ~]#  ceph-deploy  --help

2)创建目录

[root@node1 ~]#  mkdir ceph-cluster
[root@node1 ~]#  cd ceph-cluster/

步骤二:部署ceph集群

1)创建ceph集群配置

[root@node1 ceph-cluster]# ceph-deploy new node1 node2 node3

2)给所有节点安装软件包

[root@node1 ceph-cluster]# ceph-deploy install node1 node2 node3

3)初始化所有节点的mon服务(主机名解析必须正确)

[root@node1 ceph-cluster]# ceph-deploy mon create-initial

常见错误及解决方法(非必要操作,有错误可以参考):

如果提示以下错误信息:

[node1][ERROR ] admin_socket: exception getting command descriptions: [Error 2] No such file or directory

解决方案如下(在node1操作):

先检查自己的命令是否是在ceph-cluster目录下执行的!!!!如果确认是在该目录下执行的creat-initial命令,依然保存,可以使用如下方式修复

[root@node1 ceph-cluster]# vim ceph.conf      #文件最后追加以下内容
public_network = 192.168.4.0/24

修改后重新推送配置文件:

[root@node1 ceph-cluster]# ceph-deploy --overwrite-conf config push node1 node2 node3

步骤三:创建OSD

1)准备磁盘分区(node1、node2、node3都做相同操作)

[root@node1 ceph-cluster]#  parted  /dev/vdb  mklabel  gpt
[root@node1 ceph-cluster]#  parted  /dev/vdb  mkpart primary  1M  50%
[root@node1 ceph-cluster]#  parted  /dev/vdb  mkpart primary  50%  100%
[root@node1 ceph-cluster]# chown  ceph.ceph  /dev/vdb1
[root@node1 ceph-cluster]# chown  ceph.ceph  /dev/vdb2
//这两个分区用来做存储服务器的日志journal盘
[root@node1 ceph-cluster]# vim /etc/udev/rules.d/70-vdb.rules
ENV{DEVNAME}=="/dev/vdb1",OWNER="ceph",GROUP="ceph"
ENV{DEVNAME}=="/dev/vdb2",OWNER="ceph",GROUP="ceph"

2)初始化清空磁盘数据(仅node1操作即可)

[root@node1 ceph-cluster]# ceph-deploy disk  zap  node1:vdc   node1:vdd    
[root@node1 ceph-cluster]# ceph-deploy disk  zap  node2:vdc   node2:vdd
[root@node1 ceph-cluster]# ceph-deploy disk  zap  node3:vdc   node3:vdd   

3)创建OSD存储空间(仅node1操作即可)

[root@node1 ceph-cluster]# ceph-deploy osd create \
 node1:vdc:/dev/vdb1 node1:vdd:/dev/vdb2  
//创建osd存储设备,vdc为集群提供存储空间,vdb1提供JOURNAL缓存,
//一个存储设备对应一个缓存设备,缓存需要SSD,不需要很大
[root@node1 ceph-cluster]# ceph-deploy osd create \
 node2:vdc:/dev/vdb1 node2:vdd:/dev/vdb2
[root@node1 ceph-cluster]# ceph-deploy osd create \
 node3:vdc:/dev/vdb1 node3:vdd:/dev/vdb2 

4)常见错误(非必须操作)

使用osd create创建OSD存储空间时,如提示run 'gatherkeys',可以使用如下命令修复:

[root@node1 ceph-cluster]#  ceph-deploy gatherkeys node1 node2 node3 

步骤四:验证测试

1)查看集群状态

[root@node1 ~]#  ceph  -s

2)常见错误(非必须操作)

如果查看状态包含如下信息:

health: HEALTH_WARN
        clock skew detected on  node2, node3…  

clock skew表示时间不同步,解决办法:请先将所有主机的时间都使用NTP时间同步!!!

ceph要求所有主机时差不能超过0.05s,否则就会提示WRAN,如果使用NTP还不能精确同步时间,可以手动修改所有主机的ceph.conf,在[MON]下面添加如下一行:

mon clock drift allowed = 1

如果状态还是失败,可以尝试执行如下命令,重启ceph服务:

[root@node1 ~]#  systemctl restart ceph\*.service ceph\*.target

 

发布了117 篇原创文章 · 获赞 2 · 访问量 3389

猜你喜欢

转载自blog.csdn.net/weixin_41176080/article/details/103633555