img
img
img

既有适合小白学习的零基础资料,也有适合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


如果报错  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20201202231900835.png)  
 解决:在各个节点上给/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


![在这里插入图片描述](https://img-blog.csdnimg.cn/20201202231915267.png)  
 **部署mds服务**



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

[root@xuegod63 ceph]# ceph -s


![在这里插入图片描述](https://img-blog.csdnimg.cn/20201202231929620.png)  
 以上基本上完成了ceph存储集群的搭建。


**8.2.6 创建ceph文件系统**



[root@xuegod63 ceph]# ceph fs ls #创建之前


![在这里插入图片描述](https://img-blog.csdnimg.cn/20201202231946119.png)  
 创建存储池



[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文件系统


![img](https://img-blog.csdnimg.cn/img_convert/7ae8f326f78e2d17b7db810349c3c7c6.png)
![img](https://img-blog.csdnimg.cn/img_convert/3c0a27b43a024fc8eaecbcce43c39483.png)

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618608311)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

中...(img-Pu3OUU10-1714977850998)]
[外链图片转存中...(img-7ZS0CALh-1714977850998)]

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化的资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618608311)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

Logo

更多推荐