记录:332
场景:在CentOS 7.9操作系统上,使用ceph的rpm-mimic的ceph-13.2.10安装ceph集群。应用ceph对象存储(ceph object store);应用ceph块设备(ceph block device);应用ceph文件系统(ceph file system)。
版本:
操作系统:CentOS 7.9
ceph版本:ceph-13.2.10
名词:
Ceph:一个开源的分布式存储系统。
Ceph: Ceph uniquely delivers object, block, and file storage in one unified system.
Monitors: A Ceph Monitor (ceph-mon) maintains maps of the cluster state, including the monitor map, manager map, the OSD map, the MDS map, and the CRUSH map.
Managers: A Ceph Manager daemon (ceph-mgr) is responsible for keeping track of runtime metrics and the current state of the Ceph cluster, including storage utilization, current performance metrics, and system load.
Ceph OSDs: An Object Storage Daemon (Ceph OSD, ceph-osd) stores data, handles data replication, recovery, rebalancing, and provides some monitoring information to Ceph Monitors and Managers by checking other Ceph OSD Daemons for a heartbeat.
MDSs: A Ceph Metadata Server (MDS, ceph-mds) stores metadata on behalf of the Ceph File System (i.e., Ceph Block Devices and Ceph Object Storage do not use MDS).
1.主机规划
1.1主机磁盘规划
(1)安装ceph集群节点主机规划
主节点app161;内存:4GB;硬盘(SCSI):50GB;硬盘2(SCSI):40GB。
从节点app162;内存:4GB;硬盘(SCSI):50GB;硬盘2(SCSI):40GB。
从节点app163;内存:4GB;硬盘(SCSI):50GB;硬盘2(SCSI):40GB。
要求:主机app161、app162、app163都挂载一个干净硬盘,该硬盘是专门给集群挂载ceph文件系统使用。
(2)安装ceph客户端挂载ceph文件系统节点主机
从节点app164;内存:4GB;硬盘(SCSI):50GB。
从节点app165;内存:4GB;硬盘(SCSI):50GB。
1.2主机软件规划
ceph集群和ceph客户端的主机、IP以及组件分布规划。
2.下载安装包
(1)在公 下载ceph的rpm包
主机:可连接公 的机器。
下载rpm包:使用reposync命令下载。
下载地址:https://mirrors.aliyun.com/ceph
ceph-13.2.10版本noarch包:https://mirrors.aliyun.com/ceph/rpm-mimic/el7/noarch
ceph-13.2.10版本x86_64包:https://mirrors.aliyun.com/ceph/rpm-mimic/el7/x86_64
(2)已下载的rpm包拷贝到内 机器
(3)在内 制作本地ceph镜像仓库
主机:内 主机。
制作本地镜像:使用createrepo命令。
发布本地镜像:使用httpd发布。
(4)满足使用yum命令安装ceph需求
确认本地镜像仓库包含版本:ceph-13.2.10。
查看命令:yum list –showduplicates ceph-13.2.10
(5)搭建本地镜像仓库参考博文
参考博文:https://blog.csdn.net/zhangbeizhen18/article/details/128010070
3.主机基础环境
(1)JDK环境
查看版本:java -version
打印信息:java version “1.8.0_281”
(2)设置主机名称
B161机器:hostnamectl set-hostname app161
B162机器:hostnamectl set-hostname app162
B163机器:hostnamectl set-hostname app163
B164机器:hostnamectl set-hostname app164
B165机器:hostnamectl set-hostname app165
(3)hosts文件
修改命令:vi /etc/hosts
修改内容:
(4)关闭SELinux
修改指令:vi /etc/selinux/config
修改内容:把SELINUX=enforcing改成SELINUX=disabled
(5)关闭防火墙
设置开机禁用防火墙:systemctl stop firewalld
(6)设置swappiness
设置swappiness命令:echo vm.swappiness = 10 >> /etc/sysctl.conf
(7)关闭透明大页面
添加可执行命令:chmod +x /etc/rc.d/rc.local
(8)设置最大文件句柄数
修改指令:vi /etc/security/limits.conf
修改内容:
* soft nofile 102400
* hard nofile 102400
(9)配置免密登录
公钥和秘钥生成指令:ssh-keygen -t rsa
拷贝公钥到目标主机:ssh-copy-id app162
验证免密登录:ssh root@app162
(10)配置ntp时间同步服务器
查看ntp状态命令:ntpstat
(11)配置本地yum源镜像仓库
查看仓库中ceph包:yum list –showduplicates ceph
(12)其它工具
安装命令:yum install -y net-tools.x86_64 yum-utils
安装命令:yum install -y python-setuptools
安装命令:yum install -y perl
4.ceph集群安装软件说明
ceph集群由ceph、mon、mgr、osd、rgw等模块组成,需逐个模块创建,才能完成部署。
(1)主从节点安装软件包说明
在主节点app161安装ceph-deploy、ceph、ceph-radosgw软件包。
在从节点app162、app163安装ceph、ceph-radosgw软件包。
(2)主节点使用ceph-deploy说明
在主节点使用ceph-deploy命令,完成ceph集群的ceph、mon、mgr、mds、osd、rgw等模块创建和部署。
5.主节点安装ceph
主机app161是主节点,ceph的组件:mon、mgr、osd、rgw创建集群等操作都在主节点操作。
(1)安装ceph-deploy和ceph
安装命令:yum install -y ceph-deploy ceph-13.2.10
(2)安装ceph-radosgw
安装命令:yum install -y ceph-radosgw-13.2.10
(3)安装完成后目录和文件说明
配置文件目录:/etc/ceph/
日志目录:/var/log/ceph
查看ceph:ll /usr/bin/ | grep ceph
查看radosgw:ll /usr/bin/ | grep radosgw
6.从节点安装ceph
主机app162和app163是从节点。
(1)安装ceph
安装命令:yum install -y ceph-13.2.10
(2)安装ceph-radosgw
安装命令:yum install -y ceph-radosgw-13.2.10
(3)安装完成后目录和文件说明
配置文件目录:/etc/ceph/
日志目录:/var/log/ceph
查看ceph:ll /usr/bin/ | grep ceph
查看radosgw:ll /usr/bin/ | grep radosgw
7.创建ceph的mon模块
在主节点app161操作,操作目录:cd /etc/ceph。操作工具:ceph-deploy。
(1)创建ceph集群
命令:ceph-deploy new app161 app162 app163
解析:使用ceph-deploy new命令创建一个集群。在/etc/ceph目录下,生成的配置文件:ceph.conf、ceph-deploy-ceph.log、ceph.mon.keyring、rbdmap。
(2)创建并初始化mon模块
命令:ceph-deploy mon create-initial
解析:在ceph集群中创建并初始mon,创建Ceph的mon守护进程管理器。
在主节点/etc/ceph下生成并写配置文件:ceph.bootstrap-mds.keyring、ceph.bootstrap-mgr.keyring、ceph.bootstrap-osd.keyring、ceph.bootstrap-rgw.keyring、ceph.client.admin.keyring、ceph.conf、ceph-deploy-ceph.log、ceph.mon.keyring、rbdmap。
在从节点/etc/ceph下生成并写配置文件:ceph.conf、rbdmap、tmp5mSKU7。
(3)查看集群状态
命令:ceph -s
解析:集群安装完成后,可以使用ceph -s,查看集群状态。包括cluster、services、data三个模块。
8.创建ceph的osd模块
在主节点app161操作,操作目录:cd /etc/ceph。操作工具:ceph-deploy。
(1)确认每个节点挂载的磁盘
主节点app161磁盘:/dev/sdb
从节点app162磁盘:/dev/sdb
从节点app163磁盘:/dev/sdb
查看命令:ceph-deploy disk list app161
解析:使用ceph-deploy disk list查主机磁盘。
(2)格式化每个节点挂载磁盘
app161节点硬盘格式化:ceph-deploy disk zap app161 /dev/sdb
app162节点硬盘格式化:ceph-deploy disk zap app162 /dev/sdb
app163节点硬盘格式化:ceph-deploy disk zap app163 /dev/sdb
解析:格式化需挂载的磁盘。
(3)创建osd并挂载到磁盘
将每个主机的/dev/sdb磁盘挂载为osd盘。
app161节点:ceph-deploy osd create –data /dev/sdb app161
app162节点:ceph-deploy osd create –data /dev/sdb app162
app163节点:ceph-deploy osd create –data /dev/sdb app163
(3)查看集群状态
命令:ceph -s
解析:集群安装完成后,可以使用ceph -s,查看集群状态。包括cluster、services、data三个模块。
9.创建ceph的mgr模块
在主节点app161操作,操作目录:cd /etc/ceph。操作工具:ceph-deploy。
9.1创建mgr模块
(1)创建mgr
命令:ceph-deploy mgr create app161 app162 app163
解析:创建mgr,收集ceph集群状态,提供可视化界面用于监控集群。
(2)查看集群状态
命令:ceph -s
解析:集群安装完成后,可以使用ceph -s,查看集群状态。包括cluster、services、data三个模块。
9.2配置dashboard
(1)开启dashboard功能
命令:ceph mgr module enable dashboard
解析:开启dashboard功能。
(2)创建证书
命令:ceph dashboard create-self-signed-cert
解析:创建证书。
(3)配置web登录的用户名和密码
命令:ceph dashboard set-login-credentials hangzhou demo123456
解析:在web页面登录的用户名和口令。
(4)修改dashboard默认端口
配置端口,默认端口是8443,修改为18443,修改后需重启mgr,修改端口才生效。
修改端口命令:ceph config set mgr mgr/dashboard/server_port 18443
重启mgr命令:systemctl restart ceph-mgr.target
(5)查看发布服务地址
命令:ceph mgr services
解析:
(6)登录ceph的dashboard
默认登录地址:https://192.168.19.161:8443/
修改后登录地址:
https://192.168.19.161:18443/
https://192.168.19.162:18443/
https://192.168.19.163:18443/
执行ceph -s查看,哪个可用。
用户名/口令:hangzhou/demo123456
10.创建ceph的mds模块
在主节点app161操作,操作目录:cd /etc/ceph。操作工具:ceph-deploy。
(1)创建mds
命令:ceph-deploy mds create app161 app162 app163
解析:创建mds,使用cephfs文件系统服务时,需安装mds。作用:数据元服务。
(2)查看集群状态
命令:ceph -s
解析:集群安装完成后,可以使用ceph -s,查看集群状态。包括cluster、services、data三个模块。
11.创建ceph的rgw模块
在主节点app161操作,操作目录:cd /etc/ceph。操作工具:ceph-deploy。
(1)创建rgw
命令:ceph-deploy rgw create app161 app162 app163
解析:创建rgw,使用对象 关。
(2)查看集群状态
命令:ceph -s
解析:集群安装完成后,可以使用ceph -s,查看集群状态。包括cluster、services、data三个模块。
12.启动和停止ceph组件
在主节点app161操作,操作目录:cd /etc/ceph。
12.1启动服务
systemctl start ceph.target
systemctl start ceph-mds.target
systemctl start ceph-mgr.target
systemctl start ceph-mon.target
systemctl start ceph-osd.target
systemctl start ceph-radosgw.target
12.2停止服务
systemctl stop ceph.target
systemctl stop ceph-mds.target
systemctl stop ceph-mgr.target
systemctl stop ceph-mon.target
systemctl stop ceph-osd.target
systemctl stop ceph-radosgw.target
12.3重启服务
systemctl restart ceph.target
systemctl restart ceph-mds.target
systemctl restart ceph-mgr.target
systemctl restart ceph-mon.target
systemctl restart ceph-osd.target
systemctl restart ceph-radosgw.target
13.操作存储池pool
在主节点app161操作,操作目录:cd /etc/ceph。
存储池作用是存放数据和元数据。默认三个副本。
13.1创建存储池pool
(1)创建pool
命令:ceph osd pool create hz_data 16
解析:创建一个存储池,名称hz_data,分配16个pg。
(2)查看pool的pg数量
命令:ceph osd pool get hz_data pg_num
解析:查看pool的pg_num数量。
(3)指定pool的pg数量
命令:ceph osd pool set hz_data pg_num 18
解析:设置pool的pg_num数量。
(4)查看集群状态
命令:ceph -s
解析:查看集群状态。包括cluster、services、data三个模块。
13.2删除存储池pool
(1)设置允许删除pool
修改文件:vi /etc/ceph/ceph.conf
修改内容:mon_allow_pool_delete=true
分发配置到每个主机:ceph-deploy –overwrite-conf admin app161 app162 app163
重启ceph-mon命令(3个主机):systemctl restart ceph-mon.target
(2)删除pool
命令:ceph osd pool delete hz_data hz_data –yes-i-really-really-mean-it
解析:删除pool时,pool的名称需要传两次。
(4)查看集群状态
命令:ceph -s
解析:查看集群状态。包括cluster、services、data三个模块。
14.操作ceph文件系统
使用ceph文件系统存储,需部署mds。
14.1创建ceph文件系统
在主节点app161操作,操作目录:cd /etc/ceph。
(1)查看mds确定已安装mds
查看命令:ceph mds stat
解析:查看mds状态,如果没安装mds,那么需安装mds。
安装命令:ceph-deploy mds create app161 app162 app163
(2)创建两个存储池
一个ceph文件系统至少要两个RADOS存储池,一个用于存放数据,一个用于存放元数据。
创建存放数据pool:ceph osd pool create xihu_data 16
创建存放元数据pool:ceph osd pool create xihu_metadata 8
解析:创建存储池xihu_data和xihu_metadata。
(3)创建ceph文件系统
命令:ceph fs new hangzhoufs xihu_metadata xihu_data
解析:使用ceph fs new创建ceph文件系统;文件系统名称:hangzhoufs;存储池xihu_data和xihu_metadata。
(4)查ceph文件系统
命令:ceph fs ls
解析:查看ceph文件系统,打印文件系统名称和存储池。
打印信息:name: hangzhoufs, metadata pool: xihu_metadata, data pools: [xihu_data ]
(5)查看集群状态
命令:ceph -s
解析:查看集群状态。包括cluster、services、data三个模块。mds下已经看到hangzhoufs文件系统。
14.2开启客户端认证
在主节点app161操作,操作目录:cd /etc/ceph。
(1)确认ceph.conf文件
文件:/etc/ceph/ceph.conf
内容:auth_client_required = cephx
(2)确认客户端秘钥
秘钥文件名称:/etc/ceph/ceph.client.admin.keyring
秘钥内容:
14.3客户端挂载ceph文件系统
在客户端节app166操作,操作目录:cd /etc/ceph。
挂载ceph文件系统目的就是把ceph文件系统挂载到客户端app166中。
14.3.1安装客户端
安装客户端:yum install -y ceph-common
14.3.2配置户端
(1)创建配置目录
命令:mkdir -p /etc/ceph
解析:如果没有则创建目录。
(2)生成配置文件
配置内容取自主节点app161的/etc/ceph/ceph.client.admin.keyring中的key值。
方式一:
创建文件:vi client-admin.key
添加内容:AQDtioBjVwefMBAAu0/oJPK2khWK+juNOQkyZw==
方式二:
命令:echo ‘AQDtioBjVwefMBAAu0/oJPK2khWK+juNOQkyZw==’ >>clie
声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!