Ceph 安裝記錄#
一、準備工作#
機器列表:
ceph0 192.168.100.40
ceph1 192.168.100.41
ceph2 192.168.100.42
# 三台機器都需要配置
# 關閉防火牆
systemctl stop firewalld
systemctl disable firewalld
# 關閉SELinux
setenforce 0
# 關閉圖形網路管理器
systemctl stop NetworkManager
systemctl disable NetworkManager
# 配置主機名
hostnamectl set-hostname ceph0
# 修改hosts(用scp同步到其他節點)
vim /etc/hosts
192.168.100.40 ceph0
192.168.100.41 ceph1
192.168.100.42 ceph2
# 配置ssh免密登錄
ssh-keygen
ssh-copy-id ceph0
ssh-copy-id ceph1
ssh-copy-id ceph2
配置 yum 源,並同步到其他節點
vim /etc/yum.repos.d/ceph.repo
[Ceph]
name=Ceph packages for $basearch
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-nautilus/el7/x86_64/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
priority=1
[Ceph-noarch]
name=Ceph noarch packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-nautilus/el7/noarch/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
priority=1
[ceph-source]
name=Ceph source packages
baseurl=https://mirrors.tuna.tsinghua.edu.cn/ceph/rpm-nautilus/el7/SRPMS/
enabled=1
gpgcheck=1
type=rpm-md
gpgkey=https://download.ceph.com/keys/release.asc
priority=1
二、創建集群#
1. 創建集群配置目錄#
mkdir /etc/ceph
2. 安裝 ceph-deploy 部署工具#
yum -y install ceph-deploy
3. 創建 ceph 集群#
ceph-deploy new ceph0 ceph1 ceph2
# ls
# 說明:
# ceph.conf 集群配置文件
# ceph-deploy-ceph.log 使用ceph-deploy部署的日誌記錄
# ceph.mon.keyring 驗證key文件
4. 修改配置文件#
[global]
fsid = 913835ff-cc9b-45d7-a243-f3978d3e0c53
mon_initial_members = ceph0, ceph1, ceph2
mon_host = 192.168.100.40,192.168.100.41,192.168.100.42
auth_cluster_required = cephx
auth_service_required = cephx
auth_client_required = cephx
#對外開放網段
public network = 192.168.100.0/24
[mgr]
# 開啟WEB儀表盤
mgr modules = dashboard
5. 安裝 ceph#
ceph-deploy install ceph0 ceph1 ceph2
# 補充說明:如果網路不好的話,可以手動安裝ceph和ceph-radosgw ,好的話可以可以用 ceph-deploy install ceph0 ceph1 ceph2 命令來安裝。 ceph-deploy 命令會自動通過公網官方的源安裝。
yum install ceph ceph-radosgw -y
6. 初始化 monitor#
ceph-deploy mon create-initial
7. 同步管理信息#
將配置文件信息同步到所有 ceph 集群節點
ceph-deploy admin ceph0 ceph1 ceph2
8. 安裝 mgr#
管理守護進程,該組件的主要作用是分擔和擴展 monitor 的部分功能,減輕 monitor 的負擔,讓更好地管理 ceph 存儲系統,ceph dashboard 圖形管理也需要用到 mgr
ceph-deploy mgr create ceph0 ceph1 ceph2
9. 安裝 rgw#
ceph-deploy rgw create ceph0 ceph1 ceph2
10. 創建 mds 服務#
ceph-deploy mds create ceph0 ceph1 ceph2
11. 使用 zap 命令清除磁碟信息準備創建 osd#
ceph-deploy disk zap ceph0 /dev/vdb
ceph-deploy disk zap ceph1 /dev/vdb
ceph-deploy disk zap ceph2 /dev/vdb
12. 創建 OSD 磁碟#
ceph-deploy osd create --data /dev/sdb ceph0
ceph-deploy osd create --data /dev/sdb ceph1
ceph-deploy osd create --data /dev/sdb ceph2
13. 驗證#
ceph -s
[root@ceph0 ceph]# ceph -s
cluster:
id: 913835ff-cc9b-45d7-a243-f3978d3e0c53
health: HEALTH_OK
services:
mon: 3 daemons, quorum ceph0,ceph1,ceph2 (age 18h)
mgr: ceph0(active, since 17h), standbys: ceph2, ceph1
mds: cephfs:1 {0=ceph1=up:active} 2 up:standby
osd: 3 osds: 3 up (since 18h), 3 in (since 18h)
data:
pools: 2 pools, 192 pgs
objects: 106 objects, 335 MiB
usage: 4.0 GiB used, 26 GiB / 30 GiB avail
pgs: 192 active+clean
三、開啟 dashboard#
1、開啟 dashboard 模組#
ceph mgr module enable dashboard
報錯:
Error ENOENT: all mgr daemons do not support module 'dashboard', pass --force to force enablement
解決:yum -y install ceph-mgr-dashboard
那是因為沒有安裝 ceph-mgr-dashboard,在 mgr 節點上安裝即可
2、生成簽名#
ceph dashboard create-self-signed-cert
3. 生成證書#
openssl req -new -nodes -x509 -subj "/O=IT/CN=ceph-mgr-dashboard" -days 3650 -keyout dashboard.key -out dashboard.crt -extensions v3_ca
4. 啟動服務#
ceph mgr module disable dashboard
ceph mgr module enable dashboard
5. 設置訪問地址與端口#
ceph config set mgr mgr/dashboard/server_addr 192.168.100.40
ceph config set mgr mgr/dashboard/server_port 9001
6. 關閉 https#
ceph config set mgr mgr/dashboard/ssl false
7. 查看守護進程#
ceph mgr services
8. 設置管理面板登錄憑證#
echo "1234567890" >> ceph-password.txt
ceph dashboard set-login-credentials admin -i ceph-password.txt
# 通過http://192.168.100.40:9001/訪問
四、使用 Ceph#
1、創建存儲池#
ceph osd pool create cephfs_data 128
ceph osd pool create cephfs_metadata 64
rbd pool init cephfs_data # 初始化 RBD 池
rbd pool init cephfs_metadata
2、查看存儲池#
ceph osd lspools
3、創建文件系統#
ceph fs new fs_test cephfs_metadata cephfs_data
4、查看文件系統#
ceph fs ls
5、查看 mds 狀態#
ceph mds stat
五、測試掛載#
yum install ceph-fuse
cat ceph.client.admin.keyring
echo “ABCrM7lkDYZ8GxAA7SkHF7gcZIsFMR47LA8bsB==” >> admin.key
mount -t ceph ceph2:6789:/ /mnt -o name=admin,secretfile=/root/admin.key