“网红架构师”解决你的Ceph 运维难题

 欢迎大家前往腾讯云+社区,获取更多腾讯海量技术实践干货哦~

本文由Tstack发表于云+社区专栏

本文为长篇连续剧,将分多个篇幅发表,主要介绍了从动手部署环境到后期运营故障处理过程中常见的问题,内容由浅入深,是居家旅行运维Ceph的必备良药。

Q1. 环境预准备

绝大多数MON创建的失败都是由于防火墙没有关导致的,亦或是SeLinux没关闭导致的。一定一定一定要关闭每个每个每个节点的防火墙(执行一次就好,没安装报错就忽视):

CentOS

sed -i 's/SELINUX=.*/SELINUX=disabled/' /etc/selinux/config setenforce 0 systemctl stop firewalld  systemctl disable firewalld # iptables -F service iptables stop

Q2. 清理环境

MON部署不上的第二大问题就是在旧的节点部署MON,或者在这个节点部署MON失败了,然后重新newmon create-initial,请查看要部署MON的节点上的/var/lib/ceph/mon/目录下是否为空,如果不为空,说明已经在这个目录部署过MON,再次部署会检测子目录下的done文件,由于有了这个文件,就不会再建立新的MON数据库,并且不会覆盖之,导致了部署时的各种异常,这里就不赘述了,直接给出万能清理大法:

对于任何需要新部署MON的节点,请到这个节点下执行如下指令,确保环境已经清理干净:

ps aux|grep ceph |awk '{print $2}'|xargs kill -9 ps -ef|grep ceph #确保此时所有ceph进程都已经关闭!!!如果没有关闭,多执行几次。 rm -rf /var/lib/ceph/mon/* rm -rf /var/lib/ceph/bootstrap-mds/* rm -rf /var/lib/ceph/bootstrap-osd/* rm -rf /var/lib/ceph/bootstrap-rgw/* rm -rf /etc/ceph/* rm -rf /var/run/ceph/*

请直接复制粘贴,遇到过好些个自己打错打漏删了目录的。

Q3. 部署前最后的确认

这里介绍的都是个案,不过还是需要提一下:

  • 确保每个节点的hostname都设置正确,并且添加至/etc/hosts文件中,然后同步到所有节点下。克隆出来的虚拟机或者批量建的虚拟机有可能发生此情形。
  • 确保以下目录在各个节点都存在:
  • /var/lib/ceph/
  • /var/lib/ceph/mon/
  • /var/lib/ceph/osd/
  • /etc/ceph/
  • /var/run/ceph/
  • 上面的目录,如果Ceph版本大于等于jewel,请确认权限均为ceph:ceph,如果是root:root,请自行chown

Q4. 安装Ceph

官网指导方法是使用ceph-deploy install nodeX,但是因为是国外的源,速度慢得令人发指,所以我们换到阿里的源,并且使用yum install的方式安装,没差啦其实,这样反而还快点,毕竟多个节点一起装。

很多安装失败的都是因为没有添加epel源请在每个存储节点都执行以下指令,来安装Ceph:

yum clean all rm -rf /etc/yum.repos.d/*.repo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo sed -i '/aliyuncs/d' /etc/yum.repos.d/CentOS-Base.repo sed -i '/aliyuncs/d' /etc/yum.repos.d/epel.repo sed -i 's/$releasever/7.2.1511/g' /etc/yum.repos.d/CentOS-Base.repo echo " [ceph] name=ceph baseurl=http://mirrors.aliyun.com/ceph/rpm-hammer/el7/x86_64/ gpgcheck=0 [ceph-noarch] name=cephnoarch baseurl=http://mirrors.aliyun.com/ceph/rpm-hammer/el7/noarch/ gpgcheck=0 " > /etc/yum.repos.d/ceph.repo yum install ceph ceph-radosgw -y

这里是安装的

关键字:
50000+
5万行代码练就真实本领
17年
创办于2008年老牌培训机构
1000+
合作企业
98%
就业率

联系我们

电话咨询

0532-85025005

扫码添加微信