Ceph分布式文件系统集群搭建详解

1、Ceph分布式文件系统简介

Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统。
Ceph 独一无二地在一个统一的系统中同时提供了对象、块、和文件存储功能。

基开发目标是:

  1. 可轻松扩展到数 PB 容量
  2. 支持多种工作负载的高性能(每秒输入/输出操作[IOPS]和带宽)
  3. 高可靠性
    Ceph 不仅仅是一个文件系统,还是一个有企业级功能的对象存储生态环境。

中文学习网址:CEPH中文学习网

2.Ceph分布式文件系统搭建

2.1 环境准备

准备三台centos机器(使用虚拟机)

IP hostname
192.168.1.12 node01
192.168.1.13 node02
192.168.1.14 node03

2.1.1 关闭防火墙(node01、node02、node03)

# 查看状态
firewall-cmd --state

# 停止firewall
systemctl stop firewalld.service

# 禁止firewall开机启动
systemctl disable firewalld.service

在这里插入图片描述

2.1.2 关闭selinux(node01、node02、node03)

执行命令:vi /etc/selinux/config,修改内容“SELINUX=disabled”

在这里插入图片描述
在这里插入图片描述

2.1.3 修改hostname(node01、node02、node03)

执行vi /etc/hostname,添加添加名称node01
在这里插入图片描述
执行vi /etc/hosts,添加以下内容:

192.168.1.12  node01
192.168.1.13  node02
192.168.1.14  node03

在这里插入图片描述
上面的命令执行完后,记得执行reboot命令重启服务,然后执行hostname命令,查看机器名
在这里插入图片描述

2.1.4 修改yum源(node01、node02、node03)

使用清华镜像,加速下载
执行命令:vi /etc/yum.repos.d/ceph.repo ,添加以下内容:

[Ceph]
name=Ceph packages for $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/x86_64/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
[Ceph-noarch]
name=Ceph noarch packages
# 清华源
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/noarch/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
[ceph-source]
name=Ceph source packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-mimic/el7/SRPMS/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc

在这里插入图片描述

2.1.5安装ceph与ceph-deploy(node01)

先执行以下两条命令(node01、node02、node03):

yum install epel-release -y
yum install lttng-ust -y

执行安装命令(node01):

yum update && yum -y install ceph ceph-deploy

执行成功,如下图,整个过程会有点慢 ,不要着急,耐心点!!!
在这里插入图片描述

2.1.6安装NTP时间同步工具(node01、node02、node03)

1)执行命令:

yum install ntp ntpdate ntp-doc -y

2)设置开机启动

systemctl enable ntpd

3)设置每隔1小时自动校准同步。
执行命令: vi /etc/rc.d/rc.local ,添加以下内容

/usr/sbin/ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w

4)设置定时任务, 执行crontab -e 加入

0 */1 * * * ntpdate ntp1.aliyun.com > /dev/null 2>&1; /sbin/hwclock -w

2.1.7免密配置(node01、node02、node03)

创建cuser用户,密码也为cuser(node01、node02、node03)

useradd -d /home/cuser -m cuser
passwd cuser

设置权限(node01、node02、node03)

echo "cuser ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/cuser
sudo chmod 0440 /etc/sudoers.d/cuser

在这里插入图片描述

切换cuser用户,执行ssh-keygen,生成密匙(node01)

su cuser

在这里插入图片描述
分发密钥到所有节点:(node01)

ssh-copy-id cuser@node01
ssh-copy-id cuser@node02
ssh-copy-id cuser@node03

在这里插入图片描述
切换到root用户

su root

执行命令:mkdir ~/.ssh,然后进入到.ssh目录中,创建文件config,添加以下内容到文件

Host node01
    Hostname node01
    User cuser
Host node02
    Hostname node02
    User cuser
Host node03
    Hostname node03
    User cuser

修改文件权限:

chmod 600 ~/.ssh/config

在这里插入图片描述

2.2 Ceph集群搭建

2.2.1 创建集群管理目录,作为ceph配置信息存储目录

mkdir -p /usr/local/che/cephcluster
cd /usr/local/che/cephcluster

2.2.2 创建集群

ceph-deploy new node01 node02 node03

在这里插入图片描述

2.2.3 修改配置文件

执行命令:vi /usr/local/che/cephcluster/ceph.conf,添加以下内容

#对外开放网段
public network = 192.168.1.0/24
# 设置pool池默认分配数量
osd pool default size = 2
# 容忍更多的时钟误差
mon clock drift allowed = 2
mon clock drift warn backoff = 30
# 允许删除pool
mon_allow_pool_delete = true
[mgr]
# 开启WEB仪表盘
mgr modules = dashboard

在这里插入图片描述
执行安装命令:ceph-deploy install node01 node02 node03
在这里插入图片描述

2.2.4 初始化Monitor

ceph-deploy mon create-initial

在这里插入图片描述

2.2.5 同步管理信息

ceph-deploy admin node01 node02 node03

2.2.6 安装mgr

ceph-deploy mgr create node01 node02 node03

在这里插入图片描述

2.2.7 安装rgw

ceph-deploy rgw create node01 node02 node03

在这里插入图片描述

2.2.7 安装mds服务

ceph-deploy mds create node01 node02 node03

在这里插入图片描述

2.2.8 安装OSD

执行fdisk -l,查看磁盘信息,
在这里插入图片描述
执行创建OSD命令:(node01)

ceph-deploy osd create --data /dev/sdb node01
ceph-deploy osd create --data /dev/sdb node02
ceph-deploy osd create --data /dev/sdb node03

在这里插入图片描述
执行ceph -s,查看ceph集群状态信息
在这里插入图片描述

2.2.8 dashboard安装

1)开启dashboard模块

ceph mgr module enable dashboard

2)生成签名

ceph dashboard create-self-signed-cert

3)创建目录

mkdir -p /usr/local/che/cephcluster/mgr-dashboard

4)生成密钥对

openssl req -new -nodes -x509 -subj "/O=IT/CN=ceph-mgr-dashboard" -days 3650 -keyout dashboard.key -out dashboard.crt -extensions v3_ca

在这里插入图片描述
5)启动dashboard

ceph mgr module disable dashboard
ceph mgr module enable dashboard

6)设置IP与PORT

ceph config set mgr mgr/dashboard/server_addr 192.168.1.12
ceph config set mgr mgr/dashboard/server_port 8443

7)关闭HTTPS

ceph config set mgr mgr/dashboard/ssl false

8)查看服务信息

ceph mgr services

在这里插入图片描述

9)设置管理员账号密码

ceph dashboard set-login-credentials admin admin

10)浏览器中访问https://192.168.1.13:8443/,
在这里插入图片描述
在这里插入图片描述

11)RGW访问 http://192.168.1.12:7480/

在这里插入图片描述

2.3 Cephfs管理

2.3.1 创建两个存储池

ceph osd pool create cephfs_data 128
ceph osd pool create cephfs_metadata 64

查看存储池

ceph osd lspools

在这里插入图片描述

2.3.2 创建fs, 名称为fs_demo01

ceph fs new fs_demo01 cephfs_metadata cephfs_data

查看状态:

ceph fs ls 

ceph mds stat

在这里插入图片描述

2.3.3 fuse挂载

# 安装
yum -y install ceph-fuse

# 创建挂载目录
mkdir -p /usr/local/che/cephfs_directory

# 挂载cephfs
ceph-fuse -k /etc/ceph/ceph.client.admin.keyring -m 192.168.1.12:6789 /usr/local/che/cephfs_directory

在这里插入图片描述
查看挂载信息

df -h

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ytangdigl/article/details/115256447