Ceph-deploy 部署ceph集群

1       Ceph部署

1.1   安装前准备

1.1.1  环境

系统

Ip

角色

工具说明

备注

CentOS 7.6

数据盘

vdb  50G

vdc  20G

vdd  20G

Ceph 版本 12.2.12

10.0.23.133

10.0.23.136

主机名 ceph-1

Ceph-deploy MON  

RGW 

MDS 

OSD Node

Ceph-deploy 是安装ceph的工具,中小型集群适合使用ceph-deploy部署ceph

133网段是用于给客户端提供数据网段。

136网段是ceph集群内部网段,实现数据复制同步不容许客户端访问

CentOS 7.6

数据盘

vdb  50G

vdc  20G

vdd  20G

Ceph 版本 12.2.12

10.0.23.134

10.0.23.137

主机名 ceph-2

MON  

RGW 

MDS 

OSD Node

134网段是用于给客户端提供数据网段。

137网段是ceph集群内部网段,实现数据复制同步不容许客户端访问

CentOS 7.6

数据盘

vdb  50G

vdc  20G

vdd  20G

Ceph 版本 12.2.12

10.0.23.135

10.0.23.138

主机名 ceph-3

MON  

RGW 

MDS 

OSD Node

135网段是用于给客户端提供数据网段。

138网段是ceph集群内部网段,实现数据复制同步,不容许客户端访问

1.1.2  所有节点运行

1.1.2.1        配置ecph rpm源

使用阿里云ceph源:https://mirrors.aliyun.com/ceph/rpm-luminous/el7/

vi /etc/yum.repos.d/ceph.repo

[ceph]

name=ceph

baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/x86_64/

gpgcheck=0

priority=0

[ceph-noarch]

name=cephnoarch

baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/noarch/

gpgcheck=0

priority=0

[ceph-source]

name=Ceph source packages

baseurl=https://mirrors.aliyun.com/ceph/rpm-luminous/el7/SRPMS

enabled=0

gpgcheck=1

type=rpm-md

gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc

priority=1

1.1.2.2        配置NTP

# yum -y install ntpdate ntp

# ntpdate cn.ntp.org.cn

#systemctl restart ntpd  &&systemctl enable ntpd

创建部署用户

# useradd         cephadmin

# echo "cephadmin"| passwd --stdin cephadmin

# echo "cephadmin ALL = (root) NOPASSWD:ALL" |sudo tee /etc/sudoers.d/cephadmin #设置cephadmin用户使用sudo是不需要输入密码

# chmod 0440 /etc/sudoers.d/cephadmin

不要使用ceph用户,该用户是进程用户,也不要使用   root 用户,该用户无法使用sudo

1.1.2.3        配置防火墙,或者关闭

# firewall-cmd --zone=public   --add-port=6789/tcp        --permanent

# firewall-cmd --zone=public   --add-port=6800-7100/tcp       --permanent

# firewall-cmd --reload

# firewall-cmd --zone=public   --list-all

或关闭

# systemctl stop firewalld

# systemctl disable firewalld

1.1.2.4        关闭selinux

#sed -i "/^SELINUX/s/enforcing/disabled/" /etc/selinux/config

# setenforce    0

1.1.2.5        配置主机名解析

使用/etc/hosts 或是dns

hostnamectl set-hostname ceph-1 && bash

hostnamectl set-hostname ceph-2 && bash

hostnamectl set-hostname ceph-3 && bash

# cat >> /etc/hosts <<EOF

> 10.0.23.133 ceph-1

> 10.0.23.134 ceph-2

> 10.0.23.135 ceph-3

> EOF

1.1.2.6      配置sudo不需要tty

# sed -i "s/Defaultrequiretty/#Defaultrequiretty/" /etc/sudoers

1.1.3  部署节点执行

1.1.4  配置    ssh 免密码登陆

# sudo su - cephadmin

$ ssh-keygen

$ ssh-copy-id cephadmin@ceph-1

$ ssh-copy-id cephadmin@ceph-2

$ ssh-copy-id cephadmin@ceph-3

1.2   使用ceph-deploy    部署集群

1.2.1  安装软件(在10.0.23.133节点即可)

1.2.1.1        安装ceph-deploy软件

$ sudo yum install -y ceph-deploy python-pip

1.2.1.2        安装ceph包(三个节点执行)

#sudo yum install -y ceph ceph-radosgw                                                       

//安装      ceph包,替代         ceph-depl oy    install       node1       node2       ,不过下面的命令需要在每台node上安装

1.2.2  创建集群

1.2.2.1        安装ceph软件 (在10.0.23.133节点即可)

$ mkdir my-cluster

$ cd  my-cluster

$ ceph-deploy  new ceph-1 ceph-2  ceph-3                                                              //部署节点

$ ls

$vim ceph.conf

[global]

.....

public network  = 10.0.23.0/24   //提供客户端的网段

cluster network = 10.0.23.0/24   // 这个网段为集群内部网段,因没有第二个网段,两个网卡都是一个网段

ceph-deploy -cluster{cluster-name} new node1 node2 //创建一个自定集群名称的ceph集群,默 认为       ceph

1.2.3  创建集群(在10.0.23.133节点即可)

1.2.3.1        集群初始化  

$ ceph-deploy mon create-initial                                 //配置初始      monitor(s)、并收集所有密钥

$ ls   -l *.keyring

$ ceph-deploy admin ceph-1 ceph-2 ceph-3    //把配置信息拷贝到各节点

$ sudo  chown -R cephadmin:cephadmin /etc/ceph

$ ceph -s 

 

1.2.3.2        配置   OSD

[cephadmin@ceph-1 my-cluster]$ for dev in /dev/vdb /dev/vdc /dev/vdd

> do

> ceph-deploy disk zap ceph-1 $dev

> ceph-deploy osd create ceph-1 --data $dev

> ceph-deploy disk zap ceph-2 $dev

> ceph-deploy osd create ceph-2 --data $dev

> ceph-deploy disk zap ceph-3 $dev

> ceph-deploy osd create ceph-3 --data $dev

> done

如果要在LVM卷上创建OSD,则参数--data  必须是     volume_group/lv_name  ,而不是卷的 块设备的路径

再次查看集群状态

 

1.2.3.3        部署mgr,L版本以后才需要部署

$ceph-deploy  mgr create ceph-1 ceph-2 ceph-3

1.2.3.4        查看开启的模块

$ ceph mgr module ls

1.2.3.5        开启   dashboard    模块,用于UI查看

$ ceph mgr  module enable dashboard

1.2.3.6        检查集群状态

$ceph -s

 

1.2.3.7        浏览器打开

http://10.0.23.133:7000 #端口默认是7000

到此ceph集群安装完成

原文地址:https://www.cnblogs.com/houchaoying/p/14440734.html