资源预览内容
第1页 / 共48页
第2页 / 共48页
第3页 / 共48页
第4页 / 共48页
第5页 / 共48页
第6页 / 共48页
第7页 / 共48页
第8页 / 共48页
第9页 / 共48页
第10页 / 共48页
亲,该文档总共48页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
一、前言 近日,公司招来几个年轻的工程师,主要负责某客户数据中心的运维工作。在前几天的一次H3C ONEStor分布式存储故障运维过程中,发现他们总是没有总体思路,真正实施起来无从下手。事后在一起做技术交流时,他们都说在实验环境都会部署和操作,但到了生产环境中就不知所措了。究其原因,还是在于他们只会利用自动化部署工具来搭建集群,但部署过程中的所涉及的命令和工作原理很未深入吃透。 为了今后能够更好地服务于这方面的运维工作,今天我就着手写一下通过手工安装部署Ceph集群,让他们感受一下自动化部署其实并没有多少奥妙,只不过将这些手工命令自动地在各节点执行了一遍而已。同时在今后的运维过程中,如出现某此功能模块故障的时候,可以有目标性地进行处理。二、部署的环境本次是利用公司的vMware 虚拟化平台的虚拟机来进行的,在虚拟化平台上创建了5台虚拟机和1台客户端,具体配置为:5台虚拟机配置:4个vCPU,4GB内存,2块网卡,4块磁盘,操作系统为Centos7.5(1804) ,采用mini安装方式客户端为:2vCPU,4GB内存、1块网卡、1块磁盘,操作系统为entos7.5(1804) ,采用mini安装方式5台虚拟机的主机名为ceph01至ceph05mon节点:ceph01-ceph03mgr节点:ceph01-ceph03mds节点:ceph01-ceph03rgw节点:ceph01网络规划:public_network = 192.168.1.0/24cluster_network = 192.168.10.0/24本次配置虚拟机全部可以上互联网,从互联网获取aliyun的yum源。如果今后在内网安装部署,则需要制作一台yum源服务器,可以参考我的另外两篇自建yum源自建和通过kictstart自动化部署Centos的文章。三、前期应该要做的事情由于是mini版安装缺省好多工具包,先安装一下需要使用的:yum -y install deltarpm如果不安装deltarpm,则会报Delta RPMs disabled because /usr/bin/applydeltarpm not installed的信息,其实我没有安装,ceph的包也正常的能够安装。最好安装一下吧,不费多大的功夫!yum -y install net-tools wget #这两个就不用多说了,否则你连ifconfig这样命令都无法执行,更何况要从阿里云上获取文件呢?现在我们更换一下yum源,以提升安装速度,将centos的源更换为国内的yum源。mkdir /etc/yum.repos.d/repobak & cd /etc/yum.repos.d/repobakmv /etc/yum.repos.d/* /etc/yum.repos.d/repobakll /etc/yum.repos.d/wget -O /etc/yum.repos.d/CentOS-Base.repo wget -O /etc/yum.repos.d/epel-7.repo 再手式创建一下ceph.repocat /etc/yum.repos.d/ceph.repo /etc/yum.repos.d/ceph.repo别忘了,更新下yum源yum clean all & yum makecache现在可以利用国内的镜像网站进行yum安装了。OK!我们先制一台时钟服务器,让集群节点同步它的时钟,以避免节点间的时钟发生偏移。本次将client作为集群的时钟服务器吧。首先在ceph01上安装chonyd服务yum -y install chrony然后修改chrony.conf配置文件 cp /etc/chrony.conf,.baksed -i s/server/#server/g /etc/chrony.confcat /etc/chrony.conf EOFserver iburst #添加了阿里云的时钟服务器,当然国内好大学server iburst #也有时钟服务,你可以自由选择allow 192.168.0.0/16EOF我们通过egrep来看一下chony.conf的配置内容:egrep -v $|# /etc/chrony.conf现在启动时钟服务,并验证一下。systemctl enable chronyd.servicesystemctl start chronyd.service验证一下:chronyc sources -vtimedatectl在ceph01至ceph05节点上安装ntpdate,以同步ceph01的时钟。yum -y install ntpdate同步一下ceph01的时钟,看一下是否成功。ntpdate client会输出adjust time server XX.XX.XX.XX offset 的字样。加入crontab中,每隔5分钟同步一次。crontab -e*/5 * * * * /usr/bin/ntpdate client /var/log/ntpdate.log我们将防火墙关闭了,并将SELINUX设为disabledsystemctl stop firewalld.servicesystemctl disable firewalld.servicesed -i /SELINUX=.*/c SELINUX=disabled /etc/selinux/configgrep -color=auto SELINUX /etc/selinux/configsetenforce 0more /etc/selinux/config在client、ceph01至ceph05节点上,配置一下hosts文件,每台服务器都执行一下。echo “192.168.1.201 ceph01192.168.1.202 ceph02192.168.1.203 ceph03192.168.1.204 ceph04192.168.1.205 ceph05192.168.1.210 client“ /etc/hosts四、在ceph01至ceph05节点安装ceph组件每个节点均安装上yum -y install python2-pip python-pecanyum -y install ceph-mds ceph-mgr ceph-osd ceph-mon ceph-radosgw为了在client上做分布式存储访问,只安装ceph-common吧yum -y install python2-pip python-pecanyum -y install ceph-common五、开始手动部署工作(一)手工配置Mon为了保障集群的可靠性,本次配置3个monitor在ceph01节点上部署第一个monitor首先通过uuidgen为ceph集群生成一个uuid,并生成配置文件ceph.conf,放置于/etc/ceph目录下。创建集群大佬用户mon.和密钥注意生成的ceph.mon.keyring保存在/etc/ceph下。再生成二哥client.admin管理用户并创建密钥#然后一次性创建bootstrap-osd/mgr/mds/rgw客户端密钥将client.admin密钥导入利用monmap-tool工具创建映射文件创建mon的工作目录,并利用映射文件创建相关文件再创建两个文件done和systemd,并赋权限启动服务并查看运行状态提醒一下,再执行下systemctl enable ceph-monceph01让其下次随系统一起启动。但是我们查看一下集群状态没有输出信息,卡住了!这是因为此时还未到达半数,配额数量不够,如果我们在创建monmap时只添加ceph01,这时就可以了。不过没事。还有两个节点要添加呢。我们再在用几个命令来查看一下:发
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号