Ceph安装步骤1——基础Ceph集群安装

一、基础环境

本文所搭建环境为Centos 7 内核4.17版本,安装Ceph版本为luminous。

一共配置三台机器,每台机器的IP地址和主机名称分别为:

192.168.1.131 ceph-admin

192.168.1.132 ceph-1

192.168.1.133 ceph-2

本文中所要进行的操作,如无特别说明,均在ceph-admin节点上进行。

二、时间同步配置

Ceph分布式存储要求各存储节点间的时间差不超过0.05s,因此需要配置时间同步服务,具体配置过程参考https://blog.csdn.net/baidu_26495369/article/details/80813396。

三、SSH免密码登录

Ceph安装过程中需要多次访问各存储节点,因此配置SSH免密码登录会让配置过程更为方便。

本文中,Ceph安装主要在ceph-admin主机上完成。

在Ceph-admin上输入:

ssh-keygen

输入命令后,会提示输入存放密码的地址,输入地址或直接回车后会创建密钥。

创建密钥完成后,需要将密钥拷贝到各个节点上,命令如下:

ssh-copy-id ceph-admin

ssh-copy-id ceph-1

ssh-copy-id ceph-2

密钥拷贝完成后,即可实现免密码登录各节点,例如,可以直接通过ssh ceph-1从ceph-admin主机上直接登录Ceph-1节点。

四、添加源。

1.添加Epel源,命令如下所示:

yum install epel-release -y

2.添加Ceph源,命令如下所示:

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

创建配置文件并打开后,输入如下内容:

[ceph]

name=Ceph packages for $basearch

baseurl=https://download.ceph.com/rpm-luminous/el7/$basearch

enabled=1

priority=2

gpgcheck=1

gpgkey=https://download.ceph.com/keys/release.asc

[ceph-noarch]

name=Ceph noarch packages

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

enabled=1

priority=2

gpgcheck=1

gpgkey=https://download.ceph.com/keys/release.asc

[ceph-source]

name=Ceph source packages

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

enabled=0

priority=2

gpgcheck=1

gpgkey=https://download.ceph.com/keys/release.asc

至此,保存退出,源添加完成。

五、Ceph安装。

1.安装ceph-deploy工具(Ceph-deploy更适合测试使用,实际生产环境应该使用ceph-ansible,安装过程详见Ceph官网)。

yum install ceph-deploy -y

2.安装Ceph集群

首先创建Ceph集群安装目录(此处创建目录名称为my_cluster,ceph-deploy命令均在该目录下执行),命令如下:

mkdir -p /root/my_cluster

创建完成后,创建Ceph集群文件,命令如下:

ceph-deploy new ceph-admin ceph-1 ceph-2

创建Ceph集群文件完成后,修改ceph.conf文件,添加以下内容:

network =192.168.1.131/24

mon clock drift allowed =2

mon clock drift warn backoff =30

osd crush update on start = false

[mon]

mon_allow_pool_delete = true

修改完成后,开始安装Ceph集群,命令如下:

ceph-deploy install --release luminous ceph-admin

ceph-deploy install --release luminous ceph-1

ceph-deploy install --release luminous ceph-2

安装完成后,创建Ceph集群相关配置文件,命令如下:

ceph-deploy mon create-initial

执行完成后,须将该目录下的所有Ceph文件拷贝至所有节点(包括本节点)的/etc/ceph/目录下(覆盖ceph.conf文件)。

Ceph文件拷贝完成后,开始OSD的安装(即使得机器上的硬盘能够被Ceph集群使用),命令如下。

ceph-deploy osd create  --bluestore  ceph-admin --data /dev/sdb

此命令中,ceph-admin表示该osd操作会在ceph-admin节点上进行,安装的硬盘也是ceph-admin节点上的硬盘,--bluestore表示该磁盘被格式化为bluestore格式(bluestore是当前主流格式之一)。

至此,Ceph集群基础环境安装完成。

 

 

附:

当磁盘数量过多时,可通过脚本安装:

首先,在每一个节点先创建一个获取当前设备文件名的脚本/root/sh-files/fdisk.sh:

#!/bin/bash
disk=`fdisk -l | grep ^Disk  | grep [^o]sd | grep -v sda  |  sed 's/://g' | awk '{print $2}' | sort`
for part in $disk
do
echo "$part"
done

其中disk信息是对fdisk -l的信息进行筛选,得到将要进行安装的硬盘的盘符,grep -v命令是剔除紧随其后的盘符(这里/dev/sda是系统盘)。

然后,在安装ceph的/root/my_cluster目录下创建osd-create.sh:

#!/bin/bash

disksd=`fdisk -l | grep ^Disk | grep [^o]sd | grep -v sda  |  sed 's/://g' | awk '{print $2}' | sort`
for part in $disksd
   do
     ceph-deploy osd create  --bluestore  ceph-admin --data $part
   done

hostname=`cat -n /etc/hosts | sed -n '3,5p' | awk '{print $3}'`
for hostpart in $hostname
   do
     ssh $hostpart "sh /root/sh-files/fdisk.sh > sd.$hostpart.json "
     scp root@$hostpart:/root/sd.$hostpart.json /root/my_cluster/ > none.json
     disk=`cat sd.$hostpart.json`
     for part in $disk
        do
          ceph-deploy osd create  --bluestore  $hostpart --data $part
        done
   done

其中hostname是为了从/etc/hosts文件中读取host名称,本文中/etc/hosts第3-5行的第三列为host名称。

这两个脚本能够安装/dev/sd*类型的硬盘,如果要安装其他设备,需要对disk的筛选条件进行修改。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值