CEPH搭建流程详解,集群扩容和模拟osd故障并恢复
CEPH搭建流程详解一、环境准备1.准备三台centos7虚拟机。2.每台虚拟机安装两块网卡,一块仅主机模式,一块nat模式。3.准备两块硬盘,一块系统盘,另一块作为ceph使用大小1024G。二、CEPH搭建前的准备工作1.修改主机名,和hosts文件。为每个节点修改主机名hostnamectl set-hostname ceph01hostnamectl set-hostna...
·
CEPH搭建流程详解
一、环境准备
1.准备三台centos7虚拟机。
2.每台虚拟机安装两块网卡,一块仅主机模式,一块nat模式。
3.准备两块硬盘,一块系统盘,另一块作为ceph使用大小1024G。
二、CEPH搭建前的准备工作
1.修改主机名,和hosts文件。
为每个节点修改主机名
hostnamectl set-hostname ceph01
hostnamectl set-hostname ceph02
hostnamectl set-hostname ceph03
su
vi /etc/hosts
2.关闭所有节点的防火墙
systemctl stop firewalld
systemctl disabled firewalld
setenforce 0
vi /etc/sysconfig/selinux
SELINUX=disabled
3.所有节点做ssh免交互,这是为了ceph在安装时需要节点之间的通信。
#设置免交互秘钥
ssh-keygen -t rsa
#将公钥交给其他节点
ssh-copy-id root@节点主机名
4.下载,更新yum源。
#安装wget命令,方便下载新的yum源。
yum install wget -y
#备份原有yum源。
mkdir /etc/yum.repos.d/backup
mv /etc/yum.repos.d/* backup
#用wget命令下载新的yum源。
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
5.更新系统
yum update -y
6.添加ceph,yum源。
vim /etc/yum.repos.d/local.repo
[ceph]
name=Ceph packages for
baseurl=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/$basearch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
[ceph-noarch]
name=Ceph noarch packages
baseurl=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/noarch/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
[ceph-source]
name=Ceph source packages
baseurl=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/SRPMS/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc
priority=1
三、安装ceph集群
1.首先安装好相应的工具
yum install ceph-deploy python-setuptools -y
2.创建ceph目录,安装ceph
mkdir /etc/ceph
cd /etc/ceph
yum install ceph -y
3.创建mon监控,并初始化监控和秘钥
ceph-deploy new ceph01 ceph02
ceph-deploy mon create-initial
这里先创建两个节点,后面通过集群扩容将第三个节点加入到集群中。
初始化好了集群状态。
4.在其中一个节点上创建osd
ceph-deploy osd create --data /dev/sdb ceph01
ceph-deploy osd create --data /dev/sdb ceph02
ceph osd tree,查看osd状态
5.下发admin秘钥到所有节点之中,并增加执行权限。
ceph-deploy admin ceph01 ceph02
#在每个节点上修改秘钥文件的权限
chmod +x /etc/ceph/ceph.client.admin.keyring
5.开始为集群扩容
首先将osd加入到集群之中。
ceph-deploy osd create --data /dev/sdb ceph03
将扩容节点的mon服务加入到集群。
ceph-deploy mon add ceph03`
配置文件无法自动修改,只能手动添加
vi /etc/ceph/ceph.conf
mon_initial_members = ceph01, ceph02, ceph03
mon_host = 192.168.20.20,192.168.20.21,192.168.20.22
public_network= 192.168.20.0/24
下发配置给所有节点,进行覆盖
ceph-deploy --overwrite-conf config push ceph01 ceph02 ceph03
重启三个节点mon服务
systemctl restart ceph-mon.target
扩容成功!
最后在为每个节点安装mgr服务整个集群就健康了。
ceph-deploy mgr create ceph01 ceph02 ceph03
四、模拟故障,重新添加osd到集群之中
1.首先模拟故障,将一个osd从集群中移除。
移除osd,删除osd,删除osd认证
ceph osd out osd.2
ceph osd crush remove osd.2
ceph auth del osd.2
#重启所有节点osd服务,osd.2就down掉了
systemctl restart ceph-osd.target
2.重新将osd加入到集群中。
查看ceph位置信息
df -hT
显示位置信息:
tmpfs tmpfs 1.9G 28K 1.9G 1% /var/lib/ceph/osd/ceph-2
查看/var/lib/ceph/osd/ceph-2的fsid
[root@ceph03 ceph-2]# more fsid
418ab936-e99e-4299-bdf3-404a2c428c06
重新添加osd进入集群
ceph osd create 418ab936-e99e-4299-bdf3-404a2c428c06
重新添加认证权限
ceph auth add osd.2 osd 'allow *' mon 'allow rwx' -i /var/lib/ceph/osd/ceph-2/keyring
设置ceph03的权重,ceph osd crush add osdID号 权重 host=主机名
ceph osd crush add 2 0.99899 host=ceph03
将osd加入集群
ceph osd in osd.2
重启所有节点的osd服务
systemctl restart ceph-osd.target
这样osd就重新加入到集群之中。
更多推荐
已为社区贡献4条内容
所有评论(0)