
Ceph的安装部署
Ceph 是一个开源的分布式存储系统,提供对象存储、块存储和文件存储功能。它通过自动分布数据和高可用性设计,旨在提供高度可扩展的存储解决方案。ceph架构如下图所示。
Ceph简介
Ceph 是一个开源的分布式存储系统,提供对象存储、块存储和文件存储功能。它通过自动分布数据和高可用性设计,旨在提供高度可扩展的存储解决方案。
ceph架构如下图所示
Ceph的安装
本次实验环境基于Linux发行版 CentOS Linux release 7.9.2009 (Core)
本次实验准备了四台虚拟机,一台虚拟机安装ceph-deploy(本实验的node5),用来配置管理其他三个节点(本实验的node1,node2,node3)这四台主机需要相互免密!!!,关闭防火墙和selinux
注意:前期配置工作都在node5管理节点(也就是安装了ceph-deploy那个主机)进行。
本次ceph安装采用ceph-deploy,ceph-deploy
是一个用于简化 Ceph 存储集群部署的命令行工具。它旨在减少配置和管理 Ceph 集群的复杂性,使得用户可以更轻松地部署和维护 Ceph 集群。简言之就是管理,配置其他ceph节点。
主要功能和特点
-
简化部署过程:
ceph-deploy
提供了一系列命令来自动化 Ceph 集群的安装、配置和启动过程,包括监视器(MON)、对象存储守护进程(OSD)、管理守护进程(MGR)和其他组件的安装和配置。
-
集中管理:
- 通过一个管理节点运行
ceph-deploy
命令,你可以在集群中的多个节点上进行操作,而无需在每个节点上单独配置。
- 通过一个管理节点运行
-
自动配置:
ceph-deploy
能够自动生成和分发配置文件,如ceph.conf
,并为各个守护进程创建和分发必要的密钥。
-
安装和配置:
- 通过简单的命令,可以完成 Ceph 的软件安装、监视器和管理守护进程的创建、OSD 的准备和激活等操作。
在管理节点安装ceph-deploy(本次实验的node5)
安装前首先确保网络源没有问题,需要安装好epel源
为了后续安装操作的正常进行,在四台主机上配置一个ceph源
注意:四台主机都要配置这个ceph源,命令如下:
#进入yum文件目录
cd /etc/yum.repos.d/
#新建ceph.repo
touch ceph.repo
#在ceph.repo加入如下内容
[Ceph]
name=Ceph packages for $basearch
baseurl=http://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/$basearch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc
[Ceph-noarch]
name=Ceph noarch packages
baseurl=http://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/noarch
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc
[ceph-source]
name=Ceph source packages
baseurl=http://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/SRPMS
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc
然后在管理节点(node5节点)安装ceph-deploy和相关软件包
注意下面这条命令在管理节点进行
yum install ceph-deploy python-setuptools python2-subprocess3
安装成功后可以查看ceph-deploy命令是否能够使用(在主管理节点进行)
ceph-deploy --version
出现下图就代表安装成功
创建集群,包含3台机器节点(在主管理节点进行)
注意下面节点的名字,和自己的保持一致
ceph-deploy new node1 node2 node3
由于我在自己的根目录下运行的命令,所以文件直接在我的根目录下(实际应该建一个目录,在目录中安装),会出现下面这三个文件
修改配置文件:ceph.conf
vim ceph.conf
#在文件末尾添加以下内容,注意不删除原有的内容
# 容忍更多的时钟误差
mon clock drift allowed = 2
mon clock drift warn backoff = 30
# 允许删除pool
mon_allow_pool_delete = true
mgr modules = dashboard
在ceph-deploy节点通过执行install命令,为ceph集群中的osd节点安装ceph相关包
下面三个节点名字换成自己的
ceph-deploy install --no-adjust-repos --nogpgcheck node1 node2 node3
此过程较慢,请耐心等待
终于完成了,继续!
初始化节点信息(在主管理节点进行)
ceph-deploy new
命令配置集群之后,会得到一个初步的配置文件,定义了 Monitor 节点。ceph-deploy mon create-initial
命令会根据这个配置文件在指定的节点上创建并启动 Monitor 服务。
ceph-deploy mon create-initial
下发信息到各个节点(在主管理节点进行)
#注意下面节点的名字换成自己的
ceph-deploy admin node1 node2 node3
安装mgr管理守护进程 (在主管理节点进行)
ceph-deploy mgr create node1 node2 node3
添加硬盘进行验证
如果三台主机已经添加过硬盘了则可以不添加
这三台主机都要添加,一路下一步即可
注意,对正在运行的虚拟机添加硬盘需要重启生效
出现下图自己新添加的硬盘即可,注意不一定非得是sdb
执行创建osd命令:注意不一定非得是sdb,根据新加的名字来决定
注意在管理节点进行
ceph-deploy osd create --data /dev/sdb node1
ceph-deploy osd create --data /dev/sdb node2
ceph-deploy osd create --data /dev/sdb node3
同步信息
注意也是在管理节点进行
ceph-deploy gatherkeys node1
ceph-deploy gatherkeys node2
ceph-deploy gatherkeys node3
验证ceph节点
接下来在各个节点运行(注意不是管理节点了)
ceph -s
如果显示下图ok就行了
安装web管理后台界面
开启dashboard模块
注意:以下命令都是在节点开启(可以是 node1,node2,node3中的任意一个节点)
ceph mgr module enable dashboard
生成签名
ceph dashboard create-self-signed-cert
执行上面两个命令出现下图即代表生成成功
创建目录
注意:创建位置没有要求,但是要记得在哪里(我这里直接在root目录下创建了)
mkdir mgr-dashboard
进入刚刚创建的目录,然后生成密钥对
#进入刚刚创建的目录,因为我是在root目录下创建的,所以路径如下
cd /root/mgr-dashboard
#生成密钥对
openssl req -new -nodes -x509 -subj "/O=IT/CN=ceph-mgr-dashboard" -days 3650 -keyout dashboard.key -out dashboard.crt -extensions v3_ca
出现下图代表生成成功
dashboard设置开机自启
ceph mgr module enable dashboard
设置访问的ip地址和端口号
注意:下面的ip填写当前节点的ip
ceph config set mgr mgr/dashboard/server_addr 192.168.202.130
ceph config set mgr mgr/dashboard/server_port 18843
关闭https
ceph config set mgr mgr/dashboard/ssl false
查看服务信息
ceph mgr services
出现下图信息即可
图中的node1是本节点,在浏览器实际访问时要替换成对应的IP地址
注意:现在还不能访问,因为还没有创建用户和密码
创建用户和密码
注意:下图中的ghl 可以替换成任意名称,123可以换成任意密码
ceph dashboard set-login-credentials ghl 123
出现下图代表创建成功
终于!要访问了!!
在浏览器地址栏输入刚刚生成的地址,点击继续访问
填写创建的用户和密码
进入后显示如下
至此,ceph简单基础环境搭建完成。
更多推荐
所有评论(0)