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节点。

主要功能和特点

  1. 简化部署过程

    • ceph-deploy 提供了一系列命令来自动化 Ceph 集群的安装、配置和启动过程,包括监视器(MON)、对象存储守护进程(OSD)、管理守护进程(MGR)和其他组件的安装和配置。
  2. 集中管理

    • 通过一个管理节点运行 ceph-deploy 命令,你可以在集群中的多个节点上进行操作,而无需在每个节点上单独配置。
  3. 自动配置

    • ceph-deploy 能够自动生成和分发配置文件,如 ceph.conf,并为各个守护进程创建和分发必要的密钥。
  4. 安装和配置

    • 通过简单的命令,可以完成 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 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简单基础环境搭建完成。

  • 28
    点赞
  • 24
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
为了使用Docker部署Ceph集群,有几种方法可以选择。首先,你可以参考中提供的CentOS 7系统Docker Ceph集群的安装配置文章,其中详细介绍了如何使用Docker在单机上部署Ceph。其次,你也可以使用脚本和Docker来部署Ceph集群,具体的步骤如下:首先,在每个机器上执行脚本,确保已经安装了Docker,并且有对应的Docker Ceph镜像。然后,可以使用ansible批量执行部署操作。接下来,你还可以生成一些文件来配置Ceph集群。例如,通过在mon节点上执行以下命令可以生成osd的密钥信息: ``` docker exec ceph-mon ceph auth get client.bootstrap-osd -o /var/lib/ceph/bootstrap-osd/ceph.keyring ``` 同样,通过以下命令可以生成rgw的密钥信息: ``` docker exec ceph-mon ceph auth get client.bootstrap-rgw -o /var/lib/ceph/bootstrap-rgw/ceph.keyring ``` 以上是使用Docker安装部署Ceph的一些方法和步骤。具体情况还需要根据你的需求和环境来调整。希望对你有所帮助。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *3* [Docker安装部署Ceph](https://blog.csdn.net/bzjoko/article/details/128775373)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* [使用脚本和docker部署ceph集群](https://download.csdn.net/download/atongmu321645/10664386)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值