2024年最全CentOS 7部署 Ceph分布式存储架构_centos7,2024年最新最新“美团+字节+腾讯”三面问题
root@xuegod63 ceph]# vim ceph.conf#配置文件的默认副本数从3改成2,这样只有两个osd也能达到active+clean状态,把下面这行加入到[global]段(可选配置)[root@xuegod63 ceph]# ceph-deploy mds create xuegod62 xuegod64#我们MDS安装2台。[root@xuegod63 ceph]#ceph
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上软件测试知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
编辑hosts文件(所有节点需要操作):
(规范系统主机名添加hosts文件实现集群主机名与主机名之间相互能够解析(host 文件添加主机名不要使用fqdn方式)可用hostnamectl set-hostname name设置
分别打开各节点的/etc/hosts文件,加入这四个节点ip与名称的对应关系
[root@xuegod63 ~]# vim /etc/hosts
192.168.1.63 xuegod63
192.168.1.62 xuegod62
192.168.1.64 xuegod64
192.168.1.65 xuegod65
SSH免密码登录(所有节点需要操作)
在管理节点使用ssh-keygen 生成ssh keys 发布到各节点
[root@xuegod63 ~]# ssh-keygen #所有的输入选项都直接回车生成。
[root@xuegod63 ~]# ssh-copy-id xuegod63
[root@xuegod63 ~]# ssh-copy-id xuegod62
[root@xuegod63 ~]# ssh-copy-id xuegod64
[root@xuegod63 ~]# ssh-copy-id xuegod65
## 8.2.1 管理节点安装ceph-deploy工具
第一步:增加 yum配置文件(各节点都要配置ceph源)
[root@xuegod63 ~]# mkdir /etc/yum.repos.d/yum/
[root@xuegod63 ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/yum/
[root@xuegod63 ~]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
[root@xuegod63 ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
[root@xuegod63 ~]# vim /etc/yum.repos.d/ceph.repo #添加如下内容:
[ceph]
name=ceph
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/
gpgcheck=0
priority=1
[ceph-noarch]
name=cephnoarch
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/noarch/
gpgcheck=0
priority=1
[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/SRPMS
gpgcheck=0
priority=1
[root@xuegod63 ~]# yum clean all
[root@xuegod63 ~]# yum makecache
第二步:更新软件源并安装ceph-deploy 管理工具
[root@xuegod63 ~]# yum -y install ceph-deploy
创建monitor服务
[root@xuegod63 ~]# mkdir /etc/ceph && cd /etc/ceph
[root@xuegod63 ceph]# ceph-deploy new xuegod63 #mon安装在xuegod63节点
[root@xuegod63 ceph]# ls #生成配置文件在当前目录下
ceph.conf ceph.log ceph.mon.keyring
Ceph配置文件、一个monitor密钥环和一个日志文件
修改副本数
[root@xuegod63 ceph]# vim ceph.conf #配置文件的默认副本数从3改成2,这样只有两个osd也能达到active+clean状态,把下面这行加入到[global]段(可选配置)
[global]
fsid = 92f5581d-79d2-4c9f-a523-4965eedc846b
mon_initial_members = xuegod63
mon_host = 192.168.1.63
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
osd_pool_default_size = 2
## 8.2.2 安装ceph
在所有节点上安装:
[root@xuegod63 ceph]# ceph-deploy install xuegod63 xuegod62 xuegod64 xuegod65
(如果网络源安装失败,手工安装epel-release 然后安装yum -y install ceph-release再yum -y install ceph ceph-radosgw)
## 8.2.3 安装ceph monitor
[root@xuegod63 ceph]# ceph-deploy mon create xuegod63
收集节点的keyring文件
[root@xuegod63 ceph]# ceph-deploy gatherkeys xuegod63
## 8.2.4 部署osd服务
添加osd节点 (所有osd节点执行)
我们实验准备时已经创建目录/var/local/osd{id}
创建激活osd
#创建osd
[root@xuegod63 ceph]# ceph-deploy osd prepare xuegod63:/var/local/osd0 xuegod62:/var/local/osd1 xuegod64:/var/local/osd2
8.2.5 激活osd
[root@xuegod63 ceph]# ceph-deploy osd activate xuegod63:/var/local/osd0 xuegod62:/var/local/osd1 xuegod64:/var/local/osd2
如果报错

解决:在各个节点上给/var/local/osd1/和/var/local/osd2/添加权限
如下:
chmod 777 -R /var/local/osd1/
chmod 777 -R /var/local/osd2/*
查看状态:
[root@xuegod63 ceph]# ceph-deploy osd list xuegod63 xuegod62 xuegod64
统一配置
(用ceph-deploy把配置文件和admin密钥拷贝到所有节点,这样每次执行Ceph命令行时就无需指定monitor地址和ceph.client.admin.keyring了)
root@xuegod63 ceph]# ceph-deploy admin xuegod63 xuegod62 xuegod64
各节点修改ceph.client.admin.keyring权限:
chmod +r /etc/ceph/ceph.client.admin.keyring
查看osd状态
[root@xuegod63 ceph]# ceph health #或 ceph -s

**部署mds服务**
[root@xuegod63 ceph]# ceph-deploy mds create xuegod62 xuegod64 #我们MDS安装2台
[root@xuegod63 ceph]# ceph mds stat #查看状态
集群状态
[root@xuegod63 ceph]# ceph -s

以上基本上完成了ceph存储集群的搭建。
**8.2.6 创建ceph文件系统**
[root@xuegod63 ceph]# ceph fs ls #创建之前

创建存储池
[root@xuegod63 ceph]# ceph osd pool create cephfs_data 128
pool ‘cephfs_data’ created
[root@xuegod63 ceph]# ceph osd pool create cephfs_metadata 128
pool ‘cephfs_metadata’ created
其中: 128 ,
关于创建存储池
确定 pg\_num 取值是强制性的,因为不能自动计算。下面是几个常用的值:
\*少于 5 个 OSD 时可把 pg\_num 设置为 128
\*OSD 数量在 5 到 10 个时,可把 pg\_num 设置为 512
\*OSD 数量在 10 到 50 个时,可把 pg\_num 设置为 4096
\*OSD 数量大于 50 时,你得理解权衡方法、以及如何自己计算 pg\_num 取值
\*自己计算 pg\_num 取值时可借助 pgcalc 工具
随着 OSD 数量的增加,正确的 pg\_num 取值变得更加重要,因为它显著地影响着集群的行为、以及出错时的数据持久性(即灾难性事件导致数据丢失的概率)。
**创建文件系统**
创建好存储池后,你就可以用 fs new 命令创建文件系统了
[root@xuegod63 ceph]# ceph fs new 128 cephfs_metadata cephfs_data
new fs with metadata pool 2 and data pool 1
其中:<fs\_name> = cephfs 可自定义
root@xuegod63 ceph]# ceph fs ls #查看创建后的cephfs
[root@xuegod63 ceph]# ceph mds stat #查看mds节点状态
active是活跃的,另1个是处于热备份的状态
挂载ceph文件系统
## 8.3 不同挂载方式
8.3.1 内核驱动挂载Ceph文件系统


**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618608311)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
中...(img-Pu3OUU10-1714977850998)]
[外链图片转存中...(img-7ZS0CALh-1714977850998)]
**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**
**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618608311)**
**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
更多推荐
所有评论(0)