ceph基本部署

ceph基本部署

前言

最近在学kuberbetes,碰到需要用ceph集群,于是乎就去查官方文档,太过繁琐,以下是最精简的ceph集群搭建

部署环境
ceph版本:14.2.2
OS:centos 7.6

准备工作
修改主机名 我的三台主机名分别是k8s-master,k8s-slave1,k8s-slave2
修改集群中每个节点/etc/hosts文件,将其他主机名添加进来,
cat /etc/hosts

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Fs4xt4GN-1618361595660)(image-20210326134040138.png)]

关闭防火墙和selinux

$ systemctl stop firewalld
$ systemctl disable firewalld
$ setenforce 0
$ sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config

NTP同步时间

$ sudo yum install ntp -y
$ sudo start ntpd.service
$ sudo enable ntpd.service

配置三个节点之间SSH免密

  • ssh-keygen -t rsa (n q t L 8e)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8pExCpam-1618361595663)(image-20210326143708763.png)]

配置所有节点yum 软件仓库源(如果已经配置过源,跳过)
删掉 /etc/yum.repo.d/ *.repo 文件。
CentOS 7 源设置

$ wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

epel 仓库源

$ wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo

编辑 ceph.repo源:

vi /etc/yum.repos.d/ceph.repo

[ceph-nautilus]

name=ceph-nautilus
baseurl=http://mirrors.aliyun.com/ceph/rpm-nautilus/el7/x86_64/
enabled=1
gpgcheck=0
[ceph-nautilus-noarch]
name=ceph-nautilus-noarch
baseurl=http://mirrors.aliyun.com/ceph/rpm-nautilus/el7/noarch/
enabled=1
gpgcheck=0

软件安装

生成缓存

  • yum clean all&&yum makecache

每个主机安装 ceph

  • yum install ceph

Admin节点安装

  • yum install ceph-deploy

开始搭建集群

在admin节点, 建立cluster目录

  • mkdir cluster && cd cluster (以后的所有命令都在此目录执行)

部署mon

部署ceph-mon服务到三个服务器上

  • ceph-deploy new k8s-master k8s-slave1 k8s-slave2

部署初始化mon 和 准备keys

  • ceph-deploy --overwrite-conf mon create-initial
  • systemctl restart/start/stop ceph-mon@hostname

在每个节点配置admin key

  • ceph-deploy admin k8s-master k8s-slave1 k8s-slave2

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VFHzumb3-1618361595665)(image-20210326144055909.png)]

部署mgr
部署 mgr

  • ceph-deploy mgr create host172(主机名)

启动服务

  • systemctl restart/start/stop ceph-mgr@host

部署OSD
在每个节点新建一个空白磁盘

  • fdisk /dev/sda (此处我部署在sda4)

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Sq9jl8oo-1618361595667)(image-20210326142524329.png)]

(部署之前确认磁盘是否已经有挂载,有的话要卸载掉, 如果在硬盘已经挂载情况下部署OSD,部署会出错,建议新建盘专门用来部署OSD)

部署命令如下,vdX代表硬盘编号,

  • ceph-deploy --overwrite-conf osd create --data /dev/vdX hostname

检查集群状态
ceph -s
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rH5sk99V-1618361595668)(image-20210326142851197.png)]
ceph-deploy --overwrite-conf osd create --data /dev/vdX hostname

检查集群状态
ceph -s
[外链图片转存中…(img-rH5sk99V-1618361595668)]
至此,集群部署完毕

上一篇:在K8S集群中搭建REDIS集群搭配CEPH存储


下一篇:CentOS8安装MySQL报错,解决Failed to start mysqld.service: Unit not found