阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Ceph快速部署(CentOS7+Jewel)

176次阅读
没有评论

共计 17064 个字符,预计需要花费 43 分钟才能阅读完成。

Ceph 介绍

Ceph 是统一存储系统,支持三种接口。

Object:有原生的 API,而且也兼容 Swift 和 S3 的 API

Block:支持精简配置、快照、克隆

File:Posix 接口,支持快照

Ceph 也是分布式存储系统,它的特点是:

高扩展性:使用普通 x86 服务器,支持 10~1000 台服务器,支持 TB 到 PB 级的扩展。

高可靠性:没有单点故障,多数据副本,自动管理,自动修复。

高性能:数据分布均衡,并行化度高。对于 objects storage 和 block storage, 不需要元数据服务器。

Ceph 架构

组件

Ceph 快速部署(CentOS7+Jewel)

Ceph 的底层是 RADOS,它的意思是“A reliable, autonomous, distributed object storage”。RADOS 由两个组件组成:

OSD:Object Storage Device,提供存储资源。

Monitor:维护整个 Ceph 集群的全局状态。

环境:三台装有 CentOS 7 的 主机,每个主机有三个磁盘(虚拟机磁盘要大于 100G)

[root@mon-1 cluster]# cat /etc/RedHat-release
CentOS Linux release 7.2.1511 (Core)
[root@mon-1 cluster]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0              2:0    1    4K  0 disk
sda              8:0    0  20G  0 disk
├─sda1            8:1    0  500M  0 part /boot
└─sda2            8:2    0 19.5G  0 part
  ├─centos-root 253:0    0 18.5G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb              8:16  0  200G  0 disk
sdc              8:32  0  200G  0 disk
sdd              8:48  0  200G  0 disk
sr0              11:0    1  603M  0 rom

修改主机名并添加 hosts

vim /etc/hostname    #由于 7 和 6.5 修改主机名的方法不一样,这里举个例子
mon-1
[root@osd-1 ceph-osd-1]# cat /etc/hosts
192.168.50.123  mon-1
192.168.50.124  osd-1
192.168.50.125  osd-2

配置 ssh 无密码登陆

[root@localhost ~]# ssh-keygen  -t rsa -P ”
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
62:b0:4c:aa:e5:37:92:89:4d:db:c3:38:e2:f1:2a:d6 root@admin-node
The key’s randomart image is:
+–[RSA 2048]—-+
|                |
|                |
|    o            |
|  + o          |
|  + o o S        |
| B B . .        |
|+.@ *            |
|oooE o          |
|oo..            |
+—————–+
ssh-copy-id mon-1
ssh-copy-id osd-1
ssh-copy-id osd-2

2. 集群配置

主机 IP 功能

Ceph 快速部署(CentOS7+Jewel)

3. 环境清理

如果之前部署失败了,不必删除 ceph 客户端,或者重新搭建虚拟机,只需要在每个节点上执行如下指令即可将环境清理至刚安装完 ceph 客户端时的状态!强烈建议在旧集群上搭建之前清理干净环境,否则会发生各种异常情况。

ps aux|grep ceph |awk ‘{print $2}’|xargs kill -9
ps -ef|grep ceph
# 确保此时所有 ceph 进程都已经关闭!!!如果没有关闭,多执行几次。
umount /var/lib/ceph/osd/*
rm -rf /var/lib/ceph/osd/*
rm -rf /var/lib/ceph/mon/*
rm -rf /var/lib/ceph/mds/*
rm -rf /var/lib/ceph/bootstrap-mds/*
rm -rf /var/lib/ceph/bootstrap-osd/*
rm -rf /var/lib/ceph/bootstrap-mon/*
rm -rf /var/lib/ceph/tmp/*
rm -rf /etc/ceph/*
rm -rf /var/run/ceph/*

安装部署流程

yum 源及 ceph 的安装

需要在每个主机上执行以下命令

yum clean all
rm -rf /etc/yum.repos.d/*.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
sed -i ‘/aliyuncs/d’ /etc/yum.repos.d/CentOS-Base.repo
sed -i ‘/aliyuncs/d’ /etc/yum.repos.d/epel.repo
sed -i ‘s/$releasever/7.2.1511/g’ /etc/yum.repos.d/CentOS-Base.repo

增加 ceph 源

vim /etc/yum.repos.d/ceph.repo
[ceph]
name=ceph
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/
gpgcheck=0
[ceph-noarch]
name=cephnoarch
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/noarch/
gpgcheck=0

安装 ceph 客户端

yum -y install ceph ceph-radosgw ntp ntpdate
关闭 selinux 和 firewalld
sed -i ‘s/SELINUX=.*/SELINUX=disabled/’ /etc/selinux/config  #重启机器
systemctl stop firewalld
systemctl disable firewalld

同步各个节点时间:

ntpdate  -s time-a.nist.gov
echo ntpdate  -s time-a.nist.gov >> /etc/rc.d/rc.local
echo “01 01 * * * /usr/sbin/ntpdate -s time-a.nist.gov    >> /dev/null 2>&1” >> /etc/crontab

开始部署

在部署节点 (mon-1) 安装 ceph-deploy,下文的部署节点统一指 mon-1:

[root@mon-1 ~]# yum -y install ceph-deploy
[root@mon-1 ~]# ceph-deploy –version
1.5.36
[root@mon-1 ~]# ceph -v
ceph version 10.2.3 (ecc23778eb545d8dd55e2e4735b53cc93f92e65b)

在部署节点创建部署目录

[root@mon-1 ~]# mkdir cluster
[root@mon-1 ~]# cd cluster
[root@mon-1 cluster]# ceph-deploy new mon-1 osd-1 osd-2
[ceph_deploy.conf][DEBUG] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO] Invoked (1.5.36): /usr/bin/ceph-deploy new mon-1 osd-1 osd-2
[ceph_deploy.cli][INFO] ceph-deploy options:
[ceph_deploy.cli][INFO]  username                      : None
[ceph_deploy.cli][INFO]  func                          : <function new at 0x1803230>
[ceph_deploy.cli][INFO]  verbose                      : False
[ceph_deploy.cli][INFO]  overwrite_conf                : False
[ceph_deploy.cli][INFO]  quiet                        : False
[ceph_deploy.cli][INFO]  cd_conf                      : <ceph_deploy.conf.cephdeploy.Conf instance at 0x186d440>
[ceph_deploy.cli][INFO]  cluster                      : ceph
[ceph_deploy.cli][INFO]  ssh_copykey                  : True
[ceph_deploy.cli][INFO]  mon                          : [‘mon-1’, ‘osd-1’, ‘osd-2’]
[ceph_deploy.cli][INFO]  public_network                : None
[ceph_deploy.cli][INFO]  ceph_conf                    : None
[ceph_deploy.cli][INFO]  cluster_network              : None
[ceph_deploy.cli][INFO]  default_release              : False
[ceph_deploy.cli][INFO]  fsid                          : None
[ceph_deploy.new][DEBUG] Creating new cluster named ceph
[ceph_deploy.new][INFO] making sure passwordless SSH succeeds
[ceph_deploy.new][DEBUG] Writing initial config to ceph.conf…  #如果能准确无误的走到这一步就算成功了

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-03/141308p2.htm

目录内容如下

[root@mon-1 cluster]# ll
total 12
-rw-r–r– 1 root root  197 Dec  6 02:24 ceph.conf
-rw-r–r– 1 root root 2921 Dec  6 02:24 ceph-deploy-ceph.log
-rw——- 1 root root  73 Dec  6 02:24 ceph.mon.keyring

根据自己的 IP 配置向 ceph.conf 中添加 public_network,并稍微增大 mon 之间时差允许范围(默认为 0.05s,现改为 2s):

[root@mon-1 cluster]# echo public_network=192.168.50.0/24 >>ceph.conf
[root@mon-1 cluster]# echo mon_clock_drift_allowed = 2 >> ceph.conf
[root@mon-1 cluster]# cat ceph.conf
[global]
fsid = 0865fe85-1655-4208-bed6-274cae945746
mon_initial_members = mon-1, osd-1, osd-2
mon_host = 192.168.50.123,192.168.50.124,192.168.50.125
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
public_network=192.168.50.0/24
mon_clock_drift_allowed = 2

部署监控节点

[root@mon-1 cluster]# ceph-deploy  mon create-initial
[ceph_deploy.conf][DEBUG] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO] Invoked (1.5.36): /usr/bin/ceph-deploy mon create-initial
[ceph_deploy.cli][INFO] ceph-deploy options:
[ceph_deploy.cli][INFO]  username                      : None
[ceph_deploy.cli][INFO]  verbose                      : False
[ceph_deploy.cli][INFO]  overwrite_conf                : False
[ceph_deploy.cli][INFO]  subcommand                    : create-initial
[ceph_deploy.cli][INFO]  quiet                        : False
[ceph_deploy.cli][INFO]  cd_conf                      : <ceph_deploy.conf.cephdeploy.Conf instance at 0x2023fc8>
[ceph_deploy.cli][INFO]  cluster                      : ceph
[ceph_deploy.cli][INFO]  func                          : <function mon at 0x201d140>
[ceph_deploy.cli][INFO]  ceph_conf                    : None
[ceph_deploy.cli][INFO]  default_release              : False
[ceph_deploy.cli][INFO]  keyrings                      : None
[ceph_deploy.mon][DEBUG] Deploying mon, cluster ceph hosts mon-1 osd-1 osd-2
…… 省略
[ceph_deploy.gatherkeys][INFO] Storing ceph.client.admin.keyring
[ceph_deploy.gatherkeys][INFO] Storing ceph.bootstrap-mds.keyring
[ceph_deploy.gatherkeys][INFO] keyring ‘ceph.mon.keyring’ already exists
[ceph_deploy.gatherkeys][INFO] Storing ceph.bootstrap-osd.keyring
[ceph_deploy.gatherkeys][INFO] Storing ceph.bootstrap-rgw.keyring
[ceph_deploy.gatherkeys][INFO] Destroy temp directory /tmp/tmpVLiIFr

目录内容如下

[root@mon-1 cluster]# ll
total 76
-rw——- 1 root root  113 Dec  6 22:49 ceph.bootstrap-mds.keyring
-rw——- 1 root root  113 Dec  6 22:49 ceph.bootstrap-osd.keyring
-rw——- 1 root root  113 Dec  6 22:49 ceph.bootstrap-rgw.keyring
-rw——- 1 root root  129 Dec  6 22:49 ceph.client.admin.keyring
-rw-r–r– 1 root root  300 Dec  6 22:47 ceph.conf
-rw-r–r– 1 root root 50531 Dec  6 22:49 ceph-deploy-ceph.log
-rw——- 1 root root    73 Dec  6 22:46 ceph.mon.keyring

查看集群状态

[root@mon-1 ceph]# ceph -s
    cluster 1b27aaf2-8b29-49b1-b50e-7ccb1f72d1fa
    health HEALTH_ERR
            no osds
    monmap e1: 1 mons at {mon-1=192.168.50.123:6789/0}
            election epoch 3, quorum 0 mon-1
    osdmap e1: 0 osds: 0 up, 0 in
            flags sortbitwise
      pgmap v2: 64 pgs, 1 pools, 0 bytes data, 0 objects
            0 kB used, 0 kB / 0 kB avail
                  64 creating

开始部署 OSD:

[root@mon-1 cluster]# ceph-deploy  –overwrite-conf osd prepare  mon-1:/dev/sdb  mon-1:/dev/sdc  mon-1:/dev/sdd osd-1:/dev/sdb  osd-1:/dev/sdc  osd-1:/dev/sdd  osd-2:/dev/sdb  osd-2:/dev/sdc  osd-2:/dev/sdd  –zap-disk
这里如果部署 osd- 2 有问题,就删除程序和目录,重新分区以后成功创建 osd-2
ceph-deploy  –overwrite-conf osd prepare  osd-2:/dev/sdb  osd-2:/dev/sdc  osd-2:/dev/sdd

[root@mon-1 ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0              2:0    1    4K  0 disk
sda              8:0    0  20G  0 disk
├─sda1            8:1    0  500M  0 part /boot
└─sda2            8:2    0 19.5G  0 part
  ├─CentOS-root 253:0    0 18.5G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb              8:16  0    2T  0 disk
├─sdb1            8:17  0    2T  0 part /var/lib/ceph/osd/ceph-0
└─sdb2            8:18  0    5G  0 part
sdc              8:32  0    2T  0 disk
├─sdc1            8:33  0    2T  0 part /var/lib/ceph/osd/ceph-1
└─sdc2            8:34  0    5G  0 part
sdd              8:48  0    2T  0 disk
├─sdd1            8:49  0    2T  0 part /var/lib/ceph/osd/ceph-2
└─sdd2            8:50  0    5G  0 part
sr0              11:0    1  603M  0 rom 
[root@osd-1 ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0              2:0    1    4K  0 disk
sda              8:0    0  20G  0 disk
├─sda1            8:1    0  500M  0 part /boot
└─sda2            8:2    0 19.5G  0 part
  ├─centos-root 253:0    0 18.5G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb              8:16  0    2T  0 disk
├─sdb1            8:17  0    2T  0 part /var/lib/ceph/osd/ceph-3
└─sdb2            8:18  0    5G  0 part
sdc              8:32  0    2T  0 disk
├─sdc1            8:33  0    2T  0 part /var/lib/ceph/osd/ceph-4
└─sdc2            8:34  0    5G  0 part
sdd              8:48  0    2T  0 disk
├─sdd1            8:49  0    2T  0 part /var/lib/ceph/osd/ceph-5
└─sdd2            8:50  0    5G  0 part
sr0              11:0    1  603M  0 rom 
[root@osd-2 ~]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0              2:0    1    4K  0 disk
sda              8:0    0  20G  0 disk
├─sda1            8:1    0  500M  0 part /boot
└─sda2            8:2    0 19.5G  0 part
  ├─centos-root 253:0    0 18.5G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb              8:16  0    2T  0 disk
├─sdb1            8:17  0    2T  0 part /var/lib/ceph/osd/ceph-6
└─sdb2            8:18  0    5G  0 part
sdc              8:32  0    2T  0 disk
├─sdc1            8:33  0    2T  0 part /var/lib/ceph/osd/ceph-7
└─sdc2            8:34  0    5G  0 part
sdd              8:48  0    2T  0 disk
├─sdd1            8:49  0    2T  0 part /var/lib/ceph/osd/ceph-8
└─sdd2            8:50  0    5G  0 part
sr0              11:0    1  603M  0 rom

这里有个 WARN,去掉这个 WARN 只需要增加 rbd 池的 PG 就好

[root@mon-1 cluster]# ceph osd pool set rbd pg_num 128
set pool 0 pg_num to 128
[root@mon-1 cluster]# ceph osd pool set rbd pgp_num 128
set pool 0 pgp_num to 128 
[root@mon-1 cluster]# ceph -s
    cluster 0865fe85-1655-4208-bed6-274cae945746
    health HEALTH_OK
    monmap e3: 2 mons at {mon-1=192.168.50.123:6789/0,osd-1=192.168.50.124:6789/0}
            election epoch 30, quorum 0,1 mon-1,osd-1
    osdmap e58: 9 osds: 9 up, 9 in
            flags sortbitwise
      pgmap v161: 128 pgs, 1 pools, 0 bytes data, 0 objects
            310 MB used, 18377 GB / 18378 GB avail
                128 active+clean

给各个节点推送 config 配置

请不要直接修改某个节点的 /etc/ceph/ceph.conf 文件的,而是要去部署节点 (此处为 ceph-1:/root/cluster/ceph.conf) 目录下修改。因为节点到几十个的时候,不可能一个个去修改的,采用推送的方式快捷安全!

修改完毕后,执行如下指令,将 conf 文件推送至各个节点:

[root@mon-1 cluster]# ceph-deploy –overwrite-conf config push mon-1 osd-1 osd-2
[ceph_deploy.conf][DEBUG] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO] Invoked (1.5.36): /usr/bin/ceph-deploy admin mon-1 osd-1 osd-2
[ceph_deploy.cli][INFO] ceph-deploy options:
[ceph_deploy.cli][INFO]  username                      : None
[ceph_deploy.cli][INFO]  verbose                      : False
[ceph_deploy.cli][INFO]  overwrite_conf                : False
[ceph_deploy.cli][INFO]  quiet                        : False
[ceph_deploy.cli][INFO]  cd_conf                      : <ceph_deploy.conf.cephdeploy.Conf instance at 0x1a34e18>
[ceph_deploy.cli][INFO]  cluster                      : ceph
[ceph_deploy.cli][INFO]  client                        : [‘mon-1’, ‘osd-1’, ‘osd-2’]
[ceph_deploy.cli][INFO]  func                          : <function admin at 0x1964f50>
[ceph_deploy.cli][INFO]  ceph_conf                    : None
[ceph_deploy.cli][INFO]  default_release              : False
[ceph_deploy.admin][DEBUG] Pushing admin keys and conf to mon-1
[mon-1][DEBUG] connected to host: mon-1
[mon-1][DEBUG] detect platform information from remote host
[mon-1][DEBUG] detect machine type
[mon-1][DEBUG] write cluster configuration to /etc/ceph/{cluster}.conf
[root@mon-1 cluster]# ceph-deploy –overwrite-conf config push ceph-1 ceph-2 ceph-3
[ceph_deploy.admin][DEBUG] Pushing admin keys and conf to osd-1
[osd-1][DEBUG] connected to host: osd-1
[osd-1][DEBUG] detect platform information from remote host
[osd-1][DEBUG] detect machine type
[osd-1][DEBUG] write cluster configuration to /etc/ceph/{cluster}.conf
[ceph_deploy.admin][DEBUG] Pushing admin keys and conf to osd-2
[osd-2][DEBUG] connected to host: osd-2
[osd-2][DEBUG] detect platform information from remote host
[osd-2][DEBUG] detect machine type
[osd-2][DEBUG] write cluster configuration to /etc/ceph/{cluster}.conf

此时,需要重启各个节点的 monitor 服务

mon 和 osd 的启动方式

#mon- 1 为各个 monitor 所在节点的主机名。
systemctl start ceph-mon@mon-1.service
systemctl restart ceph-mon@mon-1.service
systemctl stop ceph-mon@mon-1.service
#0 为该节点的 OSD 的 id,可以通过 `ceph osd tree` 查看
systemctl start/stop/restart ceph-osd@0.service

遇到的报错

1. Monitor clock skew detected

http://www.linuxidc.com/Linux/2017-03/141309.htm

1. Monitor clock skew detected

[root@mon-1 cluster]# ceph -s
    cluster f25ad2c5-fd2a-4fcc-a522-344eb498fee5
    health HEALTH_ERR
            clock skew detected on mon.osd-2
            64 pgs are stuck inactive for more than 300 seconds
            64 pgs stuck inactive
            no osds
            Monitor clock skew detected

添加配置参数:

vim /etc/ceph/ceph.conf
mon clock drift allowed = 2
mon clock drift warn backoff = 30

同步配置文件

ceph-deploy –overwrite-conf admin osd-1 osd-2

重启 mon 服务

systemctl restart ceph-mon@osd-2.service

问题总结:

本问题主要是 mon 节点服务器,时间偏差比较大导致,本次遇到问题为测试环境,通过修改 ceph 对时间偏差阀值,规避的告警信息,线上业务环境,注意排查服务器时间同步问题。

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-03/141308.htm

Ceph 介绍

Ceph 是统一存储系统,支持三种接口。

Object:有原生的 API,而且也兼容 Swift 和 S3 的 API

Block:支持精简配置、快照、克隆

File:Posix 接口,支持快照

Ceph 也是分布式存储系统,它的特点是:

高扩展性:使用普通 x86 服务器,支持 10~1000 台服务器,支持 TB 到 PB 级的扩展。

高可靠性:没有单点故障,多数据副本,自动管理,自动修复。

高性能:数据分布均衡,并行化度高。对于 objects storage 和 block storage, 不需要元数据服务器。

Ceph 架构

组件

Ceph 快速部署(CentOS7+Jewel)

Ceph 的底层是 RADOS,它的意思是“A reliable, autonomous, distributed object storage”。RADOS 由两个组件组成:

OSD:Object Storage Device,提供存储资源。

Monitor:维护整个 Ceph 集群的全局状态。

环境:三台装有 CentOS 7 的 主机,每个主机有三个磁盘(虚拟机磁盘要大于 100G)

[root@mon-1 cluster]# cat /etc/RedHat-release
CentOS Linux release 7.2.1511 (Core)
[root@mon-1 cluster]# lsblk
NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
fd0              2:0    1    4K  0 disk
sda              8:0    0  20G  0 disk
├─sda1            8:1    0  500M  0 part /boot
└─sda2            8:2    0 19.5G  0 part
  ├─centos-root 253:0    0 18.5G  0 lvm  /
  └─centos-swap 253:1    0    1G  0 lvm  [SWAP]
sdb              8:16  0  200G  0 disk
sdc              8:32  0  200G  0 disk
sdd              8:48  0  200G  0 disk
sr0              11:0    1  603M  0 rom

修改主机名并添加 hosts

vim /etc/hostname    #由于 7 和 6.5 修改主机名的方法不一样,这里举个例子
mon-1
[root@osd-1 ceph-osd-1]# cat /etc/hosts
192.168.50.123  mon-1
192.168.50.124  osd-1
192.168.50.125  osd-2

配置 ssh 无密码登陆

[root@localhost ~]# ssh-keygen  -t rsa -P ”
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
62:b0:4c:aa:e5:37:92:89:4d:db:c3:38:e2:f1:2a:d6 root@admin-node
The key’s randomart image is:
+–[RSA 2048]—-+
|                |
|                |
|    o            |
|  + o          |
|  + o o S        |
| B B . .        |
|+.@ *            |
|oooE o          |
|oo..            |
+—————–+
ssh-copy-id mon-1
ssh-copy-id osd-1
ssh-copy-id osd-2

2. 集群配置

主机 IP 功能

Ceph 快速部署(CentOS7+Jewel)

3. 环境清理

如果之前部署失败了,不必删除 ceph 客户端,或者重新搭建虚拟机,只需要在每个节点上执行如下指令即可将环境清理至刚安装完 ceph 客户端时的状态!强烈建议在旧集群上搭建之前清理干净环境,否则会发生各种异常情况。

ps aux|grep ceph |awk ‘{print $2}’|xargs kill -9
ps -ef|grep ceph
# 确保此时所有 ceph 进程都已经关闭!!!如果没有关闭,多执行几次。
umount /var/lib/ceph/osd/*
rm -rf /var/lib/ceph/osd/*
rm -rf /var/lib/ceph/mon/*
rm -rf /var/lib/ceph/mds/*
rm -rf /var/lib/ceph/bootstrap-mds/*
rm -rf /var/lib/ceph/bootstrap-osd/*
rm -rf /var/lib/ceph/bootstrap-mon/*
rm -rf /var/lib/ceph/tmp/*
rm -rf /etc/ceph/*
rm -rf /var/run/ceph/*

安装部署流程

yum 源及 ceph 的安装

需要在每个主机上执行以下命令

yum clean all
rm -rf /etc/yum.repos.d/*.repo
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
sed -i ‘/aliyuncs/d’ /etc/yum.repos.d/CentOS-Base.repo
sed -i ‘/aliyuncs/d’ /etc/yum.repos.d/epel.repo
sed -i ‘s/$releasever/7.2.1511/g’ /etc/yum.repos.d/CentOS-Base.repo

增加 ceph 源

vim /etc/yum.repos.d/ceph.repo
[ceph]
name=ceph
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/x86_64/
gpgcheck=0
[ceph-noarch]
name=cephnoarch
baseurl=http://mirrors.aliyun.com/ceph/rpm-jewel/el7/noarch/
gpgcheck=0

安装 ceph 客户端

yum -y install ceph ceph-radosgw ntp ntpdate
关闭 selinux 和 firewalld
sed -i ‘s/SELINUX=.*/SELINUX=disabled/’ /etc/selinux/config  #重启机器
systemctl stop firewalld
systemctl disable firewalld

同步各个节点时间:

ntpdate  -s time-a.nist.gov
echo ntpdate  -s time-a.nist.gov >> /etc/rc.d/rc.local
echo “01 01 * * * /usr/sbin/ntpdate -s time-a.nist.gov    >> /dev/null 2>&1” >> /etc/crontab

开始部署

在部署节点 (mon-1) 安装 ceph-deploy,下文的部署节点统一指 mon-1:

[root@mon-1 ~]# yum -y install ceph-deploy
[root@mon-1 ~]# ceph-deploy –version
1.5.36
[root@mon-1 ~]# ceph -v
ceph version 10.2.3 (ecc23778eb545d8dd55e2e4735b53cc93f92e65b)

在部署节点创建部署目录

[root@mon-1 ~]# mkdir cluster
[root@mon-1 ~]# cd cluster
[root@mon-1 cluster]# ceph-deploy new mon-1 osd-1 osd-2
[ceph_deploy.conf][DEBUG] found configuration file at: /root/.cephdeploy.conf
[ceph_deploy.cli][INFO] Invoked (1.5.36): /usr/bin/ceph-deploy new mon-1 osd-1 osd-2
[ceph_deploy.cli][INFO] ceph-deploy options:
[ceph_deploy.cli][INFO]  username                      : None
[ceph_deploy.cli][INFO]  func                          : <function new at 0x1803230>
[ceph_deploy.cli][INFO]  verbose                      : False
[ceph_deploy.cli][INFO]  overwrite_conf                : False
[ceph_deploy.cli][INFO]  quiet                        : False
[ceph_deploy.cli][INFO]  cd_conf                      : <ceph_deploy.conf.cephdeploy.Conf instance at 0x186d440>
[ceph_deploy.cli][INFO]  cluster                      : ceph
[ceph_deploy.cli][INFO]  ssh_copykey                  : True
[ceph_deploy.cli][INFO]  mon                          : [‘mon-1’, ‘osd-1’, ‘osd-2’]
[ceph_deploy.cli][INFO]  public_network                : None
[ceph_deploy.cli][INFO]  ceph_conf                    : None
[ceph_deploy.cli][INFO]  cluster_network              : None
[ceph_deploy.cli][INFO]  default_release              : False
[ceph_deploy.cli][INFO]  fsid                          : None
[ceph_deploy.new][DEBUG] Creating new cluster named ceph
[ceph_deploy.new][INFO] making sure passwordless SSH succeeds
[ceph_deploy.new][DEBUG] Writing initial config to ceph.conf…  #如果能准确无误的走到这一步就算成功了

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2017-03/141308p2.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计17064字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中