CEPH 简介
不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 Ceph 作为他用,所有 Ceph 存储集群的部署都始于部署一个个 Ceph 节点、网络和 Ceph 存储集群。 Ceph 存储集群至少需要一个 Ceph Monitor 和两个 OSD 守护进程。而运行 Ceph 文件系统客户端时,则必须要有元数据服务器( Metadata Server )。
文章图片
- Ceph OSDs: Ceph OSD 守护进程( Ceph OSD )的功能是存储数据,处理数据的复制、恢复、回填、再均衡,并通过检查其他OSD 守护进程的心跳来向 Ceph Monitors 提供一些监控信息。当 Ceph 存储集群设定为有2个副本时,至少需要2个 OSD 守护进程,集群才能达到 active+clean 状态( Ceph 默认有3个副本,但你可以调整副本数)。
- Monitors: Ceph Monitor维护着展示集群状态的各种图表,包括监视器图、 OSD 图、归置组( PG )图、和 CRUSH 图。 Ceph 保存着发生在Monitors 、 OSD 和 PG上的每一次状态变更的历史信息(称为 epoch )。
- MDSs: Ceph 元数据服务器( MDS )为 Ceph 文件系统存储元数据(也就是说,Ceph 块设备和 Ceph 对象存储不使用MDS )。元数据服务器使得 POSIX 文件系统的用户们,可以在不对 Ceph 存储集群造成负担的前提下,执行诸如 ls、find 等基本命令。
环境说明: 服务器
节点 | 类型 | ip | CPU | 内存 | 硬盘 |
ceph-deploy | 管理平台 | 192.168.68.50 | 2 | 4G | /dev/sdb /dev/sdc |
ceph1 | Monitor osd | 192.168.68.51 | 2 | 4G | /dev/sdb /dev/sdc |
ceph2 | osd | 192.168.68.52 | 2 | 4G | /dev/sdb /dev/sdc |
ceph3 | osd | 192.168.68.53 | 2 | 4G | /dev/sdb /dev/sdc |
ceph version: 14.2.22 nautilus OS: CentO7.9 内核:5.4.161转载请在文章开头附上原文链接地址:https://www.cnblogs.com/Sunzz/p/15624370.html
环境准备 修改/etc/hosts
每个服务器都要修改
192.168.68.50 ceph.local 192.168.68.51 ceph1.local ceph1 192.168.68.52 ceph2.local ceph2 192.168.68.53 ceph3.local ceph3
新增用户
各ceph节点新增cephuser用户
useradd cephuser echo "123456" | passwd --stdin cephuser echo "cephuser ALL = (root) NOPASSWD:ALL" > /etc/sudoers.d/cephuser
安装rpm包
ceph-deploy节点安装所需的包,root用户操作
yum install ceph-deploy python2-pip.noarch ceph-common -y
部署节点新增用户
deploy管理节点新增manager用户
useradd manager echo "123456" | passwd --stdin manager
copy密钥 在ceph-deploy节点上生成并copy密钥,做免密登陆
su - manager ssh-keygen #一顿回车或者根据自己情况选择 ssh-copy-id cephuser@192.168.68.51 ssh-copy-id cephuser@192.168.68.52 ssh-copy-id cephuser@192.168.68.53
简化ssh配置 ceph-deply节点的manger用户家目录下, 修改config后deploy节点所建的用户名登录Ceph节点无需每次指定 --username cephuser ,简化了ssh和scp的用法 vim /home/manager/.ssh/config
Host ceph1 Hostname ceph1 User cephuser Host ceph2 Hostname ceph2 User cephuser Host ceph3 Hostname ceph3 User cephuser
chmod 600 .ssh/config
创建集群 创建工作目录
mkdir ceph-cluster cd ceph-cluster
创建集群
ceph-deploy new ceph1
或 指定网段,如果有多个网卡,可使用不同的网段
ceph-deploy new --cluster-network 192.168.68.0/24 --public-network 192.168.68.0/24 ceph1
文章图片
安装ceph
ceph-deploy install ceph1 ceph2 ceph3 --stable --release nautilus --repo-url=https://mirrors.aliyun.com/ceph/rpm-nautilus/el7/ --gpg-url=https://mirrors.aliyun.com/ceph/keys/release.asc
--stable 指名为稳定版 --release 指定版本 nautilus ,即就是14.2版本 可指定repo为国内源 --repo-url=https://mirrors.aliyun.com/ceph/rpm-nautilus/el7/ --gpg-url=https://mirrors.aliyun.com/ceph/keys/release.asc
文章图片
初始化monitor
ceph-deploy mon create-initial#初始monitor、并收集所有密钥
文章图片
部署MGR 部署mgr
ceph-deploy mgr create ceph1 ceph2 ceph3
复制key
ceph-deploy admin ceph1 ceph2 ceph3
给deploy本身也复制一份,需要用root操作,以方便用deploy管理ceph集群
cp /home/manager/ceph-cluster/ceph.client.admin.keyring /etc/ceph/ chmod 644 /etc/ceph/ceph.client.admin.keyring
查看集群状态
ceph -s
文章图片
WARN解决
1. Module 'restful' has failed dependency: No module named 'pecan' (这个在centos7上安装13版本不会出现) yum install python36-devel pip3 install werkzeug pecan systemctl restart ceph-mon.target systemctl restart ceph-mgr.target 2. mon is allowing insecure global_id reclaim 如果有警告,则禁用安全模式 ceph config set mon auth_allow_insecure_global_id_reclaim false 3.OSD count 0 < osd_pool_default_size 3 这个是因为还没有添加osd,等一会添加后就好了 添加OSD 列出磁盘
ceph-deploy disk list ceph1 【ceph2 ceph3】
添加osd
ceph-deploy osd create --data /dev/sdb ceph1 ceph-deploy osd create --data /dev/sdc ceph1 ceph-deploy osd create --data /dev/sdb ceph2 ceph-deploy osd create --data /dev/sdc ceph2 ceph-deploy osd create --data /dev/sdb ceph3 ceph-deploy osd create --data /dev/sdc ceph3
文章图片
文章图片
扩展高可用
ceph-deploy mon add ceph2
开启dashboard 提示:默认情况下,dashboard的所有HTTP连接均使用SSL/TLS进行保护。以上内置命令可快速生成并安装自签名证书。 各ceph节点安装dashboard
yum install ceph-mgr-dashboard.noarch -y
启用dashboard
ceph mgr module enable dashboard ceph dashboard create-self-signed-cert echo admin > pass.txt#设置管理员密码
ceph dashboard ac-user-create admin -i pass.txt#创建管理员
或者 ceph dashboard set-login-credentials admin -i pass.txt ceph mgr services #确认验证
或者关闭ssl
ceph mgr module enable dashboard ceph config set mgr mgr/dashboard/ssl false echo admin > pass.txt#创建管理员 ceph dashboard set-login-credentials admin -i pass.txt
文章图片
阿里云镜像源 aliyun-base.repo
文章图片
文章图片
[base] name=CentOS-$releasever - Base - mirrors.aliyun.com failovermethod=priority baseurl=http://mirrors.aliyun.com/centos/$releasever/os/$basearch/ http://mirrors.aliyuncs.com/centos/$releasever/os/$basearch/ http://mirrors.cloud.aliyuncs.com/centos/$releasever/os/$basearch/ gpgcheck=1 enabled=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7 #released updates [updates] name=CentOS-$releasever - Updates - mirrors.aliyun.com failovermethod=priority baseurl=http://mirrors.aliyun.com/centos/$releasever/updates/$basearch/ http://mirrors.aliyuncs.com/centos/$releasever/updates/$basearch/ http://mirrors.cloud.aliyuncs.com/centos/$releasever/updates/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7 #additional packages that may be useful [extras] name=CentOS-$releasever - Extras - mirrors.aliyun.com failovermethod=priority baseurl=http://mirrors.aliyun.com/centos/$releasever/extras/$basearch/ http://mirrors.aliyuncs.com/centos/$releasever/extras/$basearch/ http://mirrors.cloud.aliyuncs.com/centos/$releasever/extras/$basearch/ gpgcheck=1 gpgkey=http://mirrors.aliyun.com/centos/RPM-GPG-KEY-CentOS-7
base.repo 阿里云epel源 aliyun-epel.repo
文章图片
文章图片
[epel] name=Extra Packages for Enterprise Linux 7 - $basearch baseurl=http://mirrors.aliyun.com/epel/7/$basearch failovermethod=priority enabled=1 gpgcheck=0 gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7
eple.repo 阿里云ceph源
文章图片
文章图片
[ceph-noarch] name=Ceph noarch packages baseurl=https://mirrors.aliyun.com/ceph/rpm-15.2.9/el7/noarch/ #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
ceph.repo 总结 octopus ,即就是15.2版本,在centos7上问题比较多,dashboard没法使用。 yum install ceph-mgr-dashboard
文章图片
缺的这三个报在centos8上有,centos7上没有。
【CentOS7部署ceph】