ceph12.2.5部署记录

版本1.0

撰写时间:2018-5-31

Author:李松杉

环境:

192.168.8.196 node1

192.168.8.197  node2(admin server)

192.168.8.199  node3

1、更改主机名,增加主机对应关系

192.168.8.196 node1

192.168.8.197 node2

192.168.8.199 node3

hostnamectl set-hostnamenode1

hostnamectl set-hostnamenode2

hostnamectl set-hostnamenode3

2、无秘钥

node2:

    ssh-keygen

ssh-copy-id node1

ssh-copy-id node3

3、更新yum源

yum install -yhttps://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

4、添加ceph源

[Ceph]

name=Ceph packages for$basearch

baseurl=http://mirrors.163.com/ceph/rpm-luminous/el7/$basearch

enabled=1

priority=1

gpgcheck=1

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

[Ceph-noarch]

name=Ceph noarch packages

baseurl=http://mirrors.163.com/ceph/rpm-luminous/el7/noarch

enabled=1

priority=1

gpgcheck=1

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

[ceph-source]

name=Ceph source packages

baseurl=http://mirrors.163.com/ceph/rpm-luminous/el7/SRPMS

enabled=0

priority=1

gpgcheck=1

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

5、安装ceph-deploy

yum -yinstallpython-setuptools ceph-deploy

6、安装ceph

先在所有server上部署yuminstall-y deltarpm

在node2

ceph-deployinstall--release=luminous node1 node2 node3



二、建立ceph集群

1、创建ceph-deploy执行过程中生成控制文件的目录

node2:

mkdir/etc/test-ceph-deploy

cdmkdir/etc/test-ceph-deploy

2、创建集群:1mon+1mgr

2.1 创建一个monitor

node2:

ceph-deploynewnode2

配置ceph网络

注:如果一开始没有配置网络(ceph集群使用两个网络:public network和cluster network。前者用于服务client;后者用于集群内部通信,例如osd之间迁移数据。另外,两个网络上都有heartbeat。)后面在扩展mon节点时会报错

解决方案增加ceph.conf中网络配置,并且推送到所有节点

node2:

ceph-deploy --overwrite-conf config push node1 node2 node3

2.2 获取密钥

node2:

ceph-deploy mon create-initial

2.3 分发密钥

node2:

ceph-deployadminnode1 node2 node3

2.4 部署initial monitor

node2:

ceph-deploy moncreatenode2

2.5创建mgr

node2:

ceph-deploy mgr createnode2

检查

2.6 添加osd

1)、添加node1上的osd.1

node2:

ceph-deploy osd create node1 --data /dev/sdb

    2)、添加node2上的osd.2

node2:

ceph-deploy osd create node2 --data /dev/sdb

3)、添加node3上的osd.3

node2:

ceph-deploy osd create node3 --data /dev/sdb

检查状态

2.7添加两个mon+添加两个mgr

node2:

ceph-deploy monaddnode1

ceph-deploy monaddnode3

ceph-deploy mgr create node1

ceph-deploy mgr create node3

检查

注:检查提示 node2和node3 时间不一致,集群异常,处理方法同步时间

node1、node2、node3:

配置时间管理工具chrony

              2.7 增加一个mds

node2:

ceph-deploy mds createnode2

如下,我们通过ceph -s看不到mds服务。直到创建ceph filesystem的时候,mds才进入active状态(见4.1节)。

    至此,ceph集群就完全部署起来了。下面,我们为ceph集群增加一些client。

3 增加rgw(在node2,管理端操作)

我们可以使用ceph集群之外的server来部署rgw。部署之前,需要保证默认端口(7480)没有被防火墙禁止。并且需要安装ceph-radosgw包机器依赖:

ceph-deploy install --rgw []

为了方便起见,我们复用集群内的node1和node3来部署rgw。(可以在node1和node3上ps查看,并且可以通过http访问)

ceph-deploy rgw createnode1node3

node2上http访问


    4、增加cephfs

ceph filesystem需要mds,并且有两种方式来挂载:ceph fuse和ceph kernel driver。

在这一节,我们:

创建一个ceph filesystem

通过ceph fuse挂载

通过ceph kernel driver挂载

4.1 创建ceph filesystem (在集群内任意主机皆可)

1)、创建所需的pool

ceph osd pool create cephfs_data 80

ceph osd pool create cephfs_metadata 40

2)、创建ceph filesystem

ceph fsnewmycephfscephfs_metadata cephfs_data

创建filesystem 后mds就会active

  4.2 通过ceph fuse挂载(在任意客户端机器,这里复用了node2)

和rgw一样,原则上我们在ceph集群之外的某台server上挂载ceph filesystem。但为了方便起见,我们还是在node2上挂载。

1)、部署ceph fuse包;

yum -yinstallceph-fuse

    2)、创建一个挂载点,就可以挂载了。注意ceph-fuse使用admin权限,所以通过-k选项传入admin的key。

[root@node2~]# mkdir /mnt/cephfs

[root@node2~]# ceph-fuse -k /etc/ceph/ceph.client.admin.keyring  -m node1:6789 /mnt/cephfs

这时候,一个全新的ceph filesystem就可以使用了。注意:这时cephfs_data是空的,但cephfs_metadata不空:

ceph df

创建文件后cephfs_data也有数据

5.增加rbd

5.1 准备rbd pool

在集群内的任意server上创建一个pool:

ceph osd pool create rbd_pool 10 10

5.2 创建块设备

首先我们尝试在集群内的 一个server(node1)上创建块设备

需要先安装ceph-common

yum-y install ceph-common

创建块设备

1、将admin的key独立保存admin.secret文件

rbd create foo --size4906--image-feature layering -m192.168.8.196-K admin.secret -p rbd_pool

rbd map foo --name client.admin -m192.168.8.196-K admin.secret -p rbd_pool

错误:

此错误是因为内核版本低造成,需要升级内核版本


石墨链接:

https://shimo.im/docs/aQqL932X2R4rrMpo/ 点击链接查看「ceph12.2.5部署记录」

关注链接:

http://cephnotes.ksperis.com

http://docs.ceph.org.cn/

https://ceph.com/

你可能感兴趣的:(ceph12.2.5部署记录)