CEPH 13.2
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CEPH 13.2相关的知识,希望对你有一定的参考价值。
CEPH简介
ceph提供:对象存储,块设备,文件系统。
Ceph存储集群至少需要一个Ceph Monitor,Ceph Manager和Ceph OSD(对象存储守护进程)。运行Ceph Filesystem客户端时也需要Ceph元数据服务器。
Monitors :ceph-mon 维护集群状态的映射,管理守护进程和客户端之间的身份验证,高可用至少需要3个Monitors 节点
Managers:ceph-mgr Ceph集群的当前状态,高可用性通常至少2个Managers节点
Ceph OSDs:ceph-osd 存储数据,处理数据复制,恢复,重新平衡,并通过检查其他Ceph OSD守护进程来获取心跳,为Ceph监视器和管理器提供一些监视信息。冗余和高可用性通常至少需要3个Ceph OSD。
MDSs :ceph-mds 文件系统存储原数据服,Ceph块设备和Ceph对象存储不使用MDS
手动部署
ceph版本 minic 13.2
主机名 | ip地址 | 系统版本 | ceph版本 | 节点 |
node01 | 172.16.50.104 | CentOS Linux release 7.4.1708 (Core) | minic 13.2 | mon,osd |
node02 | 172.16.50.111 | CentOS Linux release 7.4.1708 (Core) | minic 13.2 | osd |
node03 | 172.16.50.131 | CentOS Linux release 7.4.1708 (Core) | minic 13.2 | osd |
系统初始化
关闭selinux
启用epel源:yum install epel-releas
添加ceph源:/etc/yum.repos.d/ceph.repo 内容如下:
[Ceph] name=Ceph packages for $basearch baseurl=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/$basearch enabled=1 gpgcheck=1 type=rpm-md gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc priority=1 [Ceph-noarch] name=Ceph noarch packages baseurl=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/noarch enabled=1 gpgcheck=1 type=rpm-md gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc priority=1 [ceph-source] name=Ceph source packages baseurl=https://mirrors.aliyun.com/ceph/rpm-mimic/el7/SRPMS enabled=1 gpgcheck=1 type=rpm-md gpgkey=https://mirrors.aliyun.com/ceph/keys/release.asc priority=1
安装ceph
yum install ceph ceph-radosgw -y
Mon节点部署
创建配置文件:/etc/ceph/ceph.conf
[global] fsid = a7f64266-0894-4f1e-a635-d0aeaca0e993 mon initial members = node01 mon host = 172.16.50.104 auth cluster required = cephx auth service required = cephx auth client required = cephx osd journal size = 1024 osd pool default size = 2 osd pool default min size = 1 osd crush chooseleaf type = 1 [mon] mon data = /data/ceph/mon/$cluster-$id
为群集创建密钥环,并生成监视器密钥。
ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'
生成管理员密钥;生成client.admin 用户,并将用户添加到密钥环。
ceph-authtool --create-keyring /etc/ceph/ceph.client.admin.keyring --gen-key -n client.admin --set-uid=0 --cap mon 'allow *' --cap osd 'allow *' --cap mds 'allow *' --cap mgr 'allow *'
生成一个bootstrap-osd密钥环,生成client.bootstrap-osd用户,并将用户添加到密钥环。
ceph-authtool --create-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring --gen-key -n client.bootstrap-osd --cap mon 'profile bootstrap-osd'
将生成的密钥添加到ceph.mon.keyring环中
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /var/lib/ceph/bootstrap-osd/ceph.keyring
使用主机名、主机IP地址和FSID生成监视器映射,保存到/tmp/monmap
uuid=a7f64266-0894-4f1e-a635-d0aeaca0e993
name=node01
ip=172.16.50.104
monmaptool --create --add $name $ip --fsid $uuid /tmp/monmap
在mon主机上创建默认数据目录
mkdir /data/ceph/mon -p
初始化mon
ceph-mon --mkfs -i $name --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
touch /data/ceph/mon/ceph-$name/done
chown ceph:ceph /data/ceph/ -R
systemctl enable [email protected]$name
systemctl start [email protected]$name
验证monitor运作
ceph -s
cluster:
id: ef88b5bc-3eba-495b-a00c-9851c465bc2b
health: HEALTH_OK
services:
mon: 1 daemons, quorum node01
mgr: no daemons active
osd: 0 osds: 0 up, 0 in
data:
pools: 0 pools, 0 pgs
objects: 0 objects, 0 B
usage: 0 B used, 0 B / 0 B avail
pgs:
在运行ceph-mon守护程序的每个节点上,还应该设置ceph-mgr守护程序。
ceph-mgr部署
创建身份认证密钥
ceph auth get-or-create mgr.node01 mon 'allow profile mgr' osd 'allow *' mds 'allow *'
将输出保存到 /var/lib/ceph/mgr/ceph-node01/keyring
文件中
启动
systemctl enable [email protected]
systemctl start [email protected]
验证mgr:
ceph -s ..... services: mgr: node01(active) ......
添加osd以node02为列
将配置文件/var/lib/ceph/bootstrap-osd/ceph.keyring
,/etc/ceph/ceph.conf
拷贝到需要安装osd服务器
scp /var/lib/ceph/bootstrap-osd/ceph.keyring [email protected]:/var/lib/ceph/bootstrap-osd/ceph.keyring
scp /etc/ceph/ceph.conf [email protected]:/etc/ceph
ssh node02
UUID=$(uuidgen)
OSD_SECRET=$(ceph-authtool --gen-print-key)
ID=$(echo "{"cephx_secret": "$OSD_SECRET"}" | ceph osd new $UUID -i - -n client.bootstrap-osd -k /var/lib/ceph/bootstrap-osd/ceph.keyring)
mkdir /data/ceph/osd -p && ln -s /data/ceph/osd/ /var/lib/ceph/osd/ceph-$ID
ceph-authtool --create-keyring /var/lib/ceph/osd/ceph-$ID/keyring --name osd.$ID --add-key $OSD_SECRET
ceph-osd -i $ID --mkfs --osd-uuid $UUID
chown ceph:ceph /var/lib/ceph/osd/ceph-$ID -R
systemctl enable [email protected]$ID
systemctl start [email protected]$ID
在查看集群状态
cluster: id: a7f64266-0894-4f1e-a635-d0aeaca0e993 health: HEALTH_OK services: mon: 1 daemons, quorum node01 mgr: node01(active) osd: 3 osds: 3 up, 3 in data: pools: 1 pools, 8 pgs objects: 5 objects, 389 B usage: 3.3 GiB used, 297 GiB / 300 GiB avail pgs: 8 active+clean
至此可以使用对象存储,及块设备(生产不建议这样使用至少需要3个mon节点,2个mgr节点)
dashboard 部署
它是基于mgr python的插件
启用dashboard插件
ceph mgr module enable dashboard
生成自签名证书
ceph dashboard create-self-signed-cert
配置dashboard监听
ceph config set mgr mgr/dashboard/node01/server_addr 172.16.50.104
ceph config set mgr mgr/dashboard/node01/server_port 1888
配置dashboard认证
ceph dashboard set-login-credentials root 123456
以上是关于CEPH 13.2的主要内容,如果未能解决你的问题,请参考以下文章