一、环境准备
干净的centos7主机(单机部署,多机部署参考官网)
ip为192.168.10.21;
hostname重命名为hceph;
hceph上部署mon、osd节点。
二、手动部署
1.给主机进行重命名
hostnamectl set-hostname hceph --static
hostnamectl set-hostname hceph --transient
hostnamectl set-hostname hceph --pretty
2.配置网卡
vi /etc/sysconfig/network-scripts/ifcfg-ens3
修改ONBOOT(ONBOOT=yes)
3.关闭selinux
vi /etc/sysconfig/selinux
修改SELINUX(SELINUX=disabled)
setenforce 0
4.重启机器,使得hostname重命名生效
reboot
5.更新yum
yum -y update
6.关闭防火墙
systemctl stop firewalld.service
7.确保保存 Ceph 配置文件的目录存在
ls /etc/ceph
8.给集群分配惟一 ID (即 fsid )
uuidgen
ifconfig
fisd(83b2cf07-0bd9-403c-ab99-5c5d5a5a2c07)
ip(192.168.10.21)
9.开启ntp服务
yum -y install ntp ntpdate ntp-doc
systemctl start ntpd.service
systemctl status ntpd.service
10.创建ceph用户,并赋予权限
useradd -d /home/ceph -m ceph
passwd ceph
echo "ceph ALL = (root) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/ceph
chmod 0440 /etc/sudoers.d/ceph
11.把初始监视器写入 Ceph 配置文件
vim /etc/ceph/ceph.conf
[global]
fsid = 83b2cf07-0bd9-403c-ab99-5c5d5a5a2c07
mon_initial_members = hceph
mon_host = 192.168.10.21
public network = 192.168.10.0/24
osd pool default size = 2
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
filestore_xattr_use_omap = true
osd pool default size = 2
osd pool default min size = 1
osd pool default pg num = 128
osd pool default pgp num = 128
osd crush chooseleaf type = 1
12.为此集群创建密钥环、并生成监视器密钥
ceph-authtool --create-keyring /tmp/ceph.mon.keyring --gen-key -n mon. --cap mon 'allow *'
13.生成管理员密钥环,生成 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'
14.把 client.admin 密钥加入 ceph.mon.keyring
ceph-authtool /tmp/ceph.mon.keyring --import-keyring /etc/ceph/ceph.client.admin.keyring
15.用规划好的主机名、对应 IP 地址、和 FSID 生成一个监视器图,并保存为 /tmp/monmap
monmaptool --create --add hceph 192.168.10.30 --fsid 446cb99b-05f4-458c-ac70-3de35129e9fc /tmp/monmap
16.用监视器图和密钥环组装守护进程所需的初始数据
ceph-mon --mkfs -i hceph --monmap /tmp/monmap --keyring /tmp/ceph.mon.keyring
17.建一个空文件 done ,表示监视器已创建、可以启动了
touch /var/lib/ceph/mon/ceph-hceph/done
18.修复权限
chown -R ceph:ceph /var/lib/ceph/mon
chmod +r /etc/ceph/ceph.client.admin.keyring
19.添加守护进程,并启动程序
touch /var/lib/ceph/mon/ceph-hceph/sysvinit
/etc/init.d/ceph start mon.hceph
20.创建osd
ceph osd create
21.创建默认目录
mkdir /var/lib/ceph/osd/ceph-0
22.初始化 OSD 数据目录
ceph-osd -i 0 --mkfs --mkkey
23.注册此 OSD 的密钥
ceph auth add osd.0 osd 'allow *' mon 'allow rwx' -i /var/lib/ceph/osd/ceph-0/keyring
24.修复权限
chown -R ceph:ceph /var/lib/ceph/osd
25.创建守护进程,并启动
touch /var/lib/ceph/osd/ceph-0/sysvinit
/etc/init.d/ceph start osd.0
26.添加非系统盘的osd
查看磁盘
lsblk -f
格式化磁盘
mkfs -t xfs /dev/vdb
挂载磁盘
mkdir /var/lib/ceph/osd/ceph-1
mount -t xfs /dev/vdc /var/lib/ceph/osd/ceph-1
添加此osd,并启动
ceph osd create
ceph-osd -i 1 --mkfs --mkkey
ceph auth add osd.1 osd 'allow *' mon 'allow rwx' -i /var/lib/ceph/osd/ceph-1/keyring
touch /var/lib/ceph/osd/ceph-1/sysvinit
chown -R ceph:ceph /var/lib/ceph/osd
/etc/init.d/ceph start osd.1
27.查看osd节点状态
ceph osd tree
28.查看整个ceph集群状态
ceph -s