###ceph安装篇一、环境1、主机分配osd:2台,各6块硬盘,其中2块做raid1安装系统,其他4块为数据盘mon:1台,后期扩展为3台admin:1台client:1台-N台2、操作系统及配置OS:CentOS Linux release 7.2.1511 selinux: disablefirewalld:disable二、安装1、安装准备#添加集群主机列表到所有主机的hosts文件192.168.1.241osd1192.168.1.242osd2192.168.1.243mon1192.168.1.244 admin192.168.1.245client#集群所有主机名的修改修改 /etc/hostname 文件 后 reboot 或者hostnamectl set-hostname admin #心主机名称为 admin#添加安装和管理用户所有集群主机useradd ceph-deploy #安装用户可以自定义echo mobnote | passwd ceph-deploy --stdin # 修改用户密码#增加sudo权限cat /etc/sudoers.d/ceph-deployceph-deploy ALL = (root) NOPASSWD:ALLDefaults:ceph-deploy |requirettyEOF#切换用户su - ceph-deploy#增加ssh公钥登录其他集群主机ssh-keygen -b 4096 #生成公钥和密钥对,注意要输入密码##以后每次通过admin主机操作集群时,##使用ssh-agent bash##和ssh-add 输入密码后,即可登录其他集群机器#上述生成的公钥拷贝到其他主机for node in "admin osd1 osd2 mon1" ;do ssh-copy-id $node ;done# 更新系统sudo yum update -ysudo reboot2、集群软件安装#admin 节点安装#安装ceph软件仓库及相关软件sudo yum install epel-release -ysudo yum -y install --enablerepo=extras centos-release-ceph#安装ceph-deploy软件包sudo yum install ceph-deploy -y#安装mon节点ceph-deploy install --mon mon1#安装osd节点ceph-deploy install --osd osd1 osd23、集群安装#生成集群配置文件ceph-deploy new mon1#生成3个文件ceph.conf #集群配置文件ceph.log #日志文件ceph.mon.keyring #keyring文件,集群验证用#修改集群配置文件cat > ceph.conf#osd_journal_size = 10000 #注释osd日志大小osd_pool_default_size = 2 #osd修改复制份数为2osd_pool_default_min_size = 1 #osd最小复制数量为1osd_crush_chooseleaf_type = 1 osd_crush_update_on_start = truemax_open_files = 131072osd pool default pg num = 128osd pool default pgp num = 128mon_pg_warn_max_per_osd = 0EOF#集群初始化ceph-deploy mon create-initial# 配置集群的命令行接口ceph-deploy install --cli adminceph-deploy admin admin4、osd设备安装#清理osd上磁盘ceph-deploy disk zap osd1:sdb osd1:sdc osd1:sdd osd1:sde osd2:sdb osd2:sdc osd2:sdd osd2:sde#准备osdceph-deploy osd prepare osd1:sdb osd1:sdc osd1:sdd osd1:sde osd2:sdb osd2:sdc osd2:sdd osd2:sde#激活osdceph-deploy osd activate osd1:sdb1 osd1:sdc1 osd1:sdd1 osd1:sde1 osd2:sdb1 osd2:sdc1 osd2:sdd1 osd2:sde15、检查集群情况sudo ceph health#集群健康状态sudo ceph -s#sudo ceph status#集群状态sudo ceph report # 详细报告三、安装遇到问题及解决1、错误1[ceph][DEBUG ] Delta RPMs disabled because /usr/bin/applydeltarpm not installed.[ceph][WARNIN] http://mirror.centos.org/centos/7/storage/x86_64/ceph-hammer/leveldb-1.12.0-5.el7.x86_64.rpm: [Errno -1] 软件包与预期下载的不符。建议:运行 yum --enablerepo=centos-ceph-hammer clean metadata[ceph][WARNIN] 正在尝试其它镜像。解决:因为之前执行的yum update 之后没有reboot,reboot后再次执行就OK了。2、错误2/etc/init.d/ceph: line 15: /lib/lsb/init-functions: No such file or directory 错误解决:yum provides /lib/lsb/init-functionsyum install -y redhat-lsb-core-4.1-27.el7.centos.1.x86_643、问题3file /etc/yum.repos.d/ceph.repo from install of ceph-release-1-1.el7.noarch conflicts with file from package ceph-release-1-1.el7.noarch解决:yum remove ceph-release-1-1.el7.noarch4、问题4[ceph][DEBUG ] Delta RPMs disabled because /usr/bin/applydeltarpm not installed.解决:yum provides /usr/bin/applydeltarpmyum info deltarpm-3.6-3.el7.x86_64yum install deltarpm-3.6-3.el7.x86_645、问题5 本次集群的系统安装是采用cobbler自动安装的,原先的主机的raid信息没有清除,由原先的raid5一个vd,修改为3个vd就出现下面错误:kickstarts 安装过程中出现 『Starting automated install …………………』之后安装无法继续,一直持续 ……………..解决:停止cobbler安装,重启主机,进入原系统用fdisk 删除 分区表信息,reboot再装即可#出现的该问题之前的步骤,进raid设置,将原先的raid5的一个虚拟磁盘分割为三个