基於Ubuntu 18.04.5 LTS 部署Ceph叢集測試及Ceph RDB的使用。
1.ceph簡介
Ceph在一個統一的系統中獨特地提供物件、塊和檔案儲存1.1 ceph官網架構圖
1.2 架構解釋
CEPH 物件儲存 |
CEPH 塊裝置 |
CEPH 檔案系統 |
|
|
|
2.ceph的元件和功能
Ceph 提供了一個基於RADOS 的可無限擴充套件的Ceph 儲存叢集,Ceph 儲存叢集由多種型別的守護程序組成:- Monitors:Ceph Monitor
- 管理器:Ceph 管理器守護程序 (ceph-mgr) 負責跟蹤執行時指標和 Ceph 叢集的當前狀態,包括儲存利用率、當前效能指標和系統負載。Ceph 管理器守護程序還託管基於 Python 的模組來管理和公開 Ceph 叢集資訊,包括基於 Web 的Ceph 儀表板和REST API。高可用性通常至少需要兩個管理器。
- Ceph OSD:
- MDS:Ceph 元資料伺服器(MDS,ceph-mds)代表Ceph 檔案系統儲存元資料(即 Ceph 塊裝置和 Ceph 物件儲存不使用 MDS)。Ceph的元資料伺服器允許POSIX檔案系統的使用者來執行基本的命令(如ls,find沒有放置在一個Ceph儲存叢集的巨大負擔,等等)。
3.ceph的資料讀寫流程
轉發自 關於cephCRUSH演算法的文章 https://zhuanlan.zhihu.com/p/63725901 主要分四層,File->Objects->PGs->OSDs。- File: 就是我們想要儲存和訪問的檔案,這個是面向我們使用者的,是我們直觀操作的物件。
- Object:object就是Ceph底層RADOS所看到的物件,也就是在Ceph中儲存的基本單位。object的大小由RADOS限定(通常為2m或者4m)。就跟HDFS抽象一個數據塊一樣,這裡也是為了方便底層儲存的組織管理。當File過大時,需要將File切分成大小統一的objects進行儲存。
- PG (Placement Group): PG是一個邏輯的概念,它的用途是對object的儲存進行組織和位置的對映,通過它可以更好的分配資料和定位資料。
- OSD (Object Storage Device): 它就是真正負責資料存取的服務。
4.Ceph叢集部署
4.1 伺服器硬體配置及IP規劃
OS:Ubuntu 18.04.5 LTS (GNU/Linux 4.15.0-153-generic x86_64) 硬體配置: 4核CPU/8GB記憶體/200G磁碟/2千兆網絡卡 4個osd節點各額外增加5塊100G的磁碟 伺服器列表hostname | public-net | cluster-net |
ceph-deploy | 192.168.2.2 | 172.1.0.2 |
mon1 | 192.168.2.21 | 172.1.0.21 |
mon2 | 192.168.2.22 | 172.1.0.22 |
mon3 | 192.168.2.23 | 172.1.0.23 |
mgr1 | 192.168.2.31 | 172.1.0.31 |
mgr2 | 192.168.2.32 | 172.1.0.32 |
osd1 | 192.168.2.41 | 172.1.0.41 |
osd2 | 192.168.2.42 | 172.1.0.42 |
osd3 | 192.168.2.43 | 172.1.0.43 |
osd4 | 192.168.2.44 | 172.1.0.44 |
client1 | 192.168.2.50 | 172.1.0.50 |
4.2 伺服器初始化配置及優化
4.2.1 關閉ssh登入dns域名查詢,加速遠端登入
pssh -i -h /data/host_list/ceph 'sed -i "s/^#UseDNS no/UseDNS no/g" /etc/ssh/sshd_config' pssh -i -h /data/host_list/ceph 'service sshd restart'4.2.2 關閉防火牆
pssh -i -h /data/host_list/ceph 'ufw disable'4.2.3 配置定時時間同步
#pssh -i -h /data/host_list/ceph 'echo "*/30 * * * * root /usr/sbin/ntpdate 192.168.1.20 && hwclock -w > /dev/null 2>& 1" >> /var/spool/cron/crontabs/root ' pssh -i -h /data/host_list/ceph ' crontab -l|tail -n 1'4.2.4 ceph安裝的版本
Pacific | 2021-03-31 | 16.2.5 | 2023-06-01 |
4.25 .將Ubuntu的apt-get 源改為清華源
Ubuntu 的軟體源配置檔案是/etc/apt/sources.list。將系統自帶的該檔案做個備份,將該檔案替換為下面內容,即可使用 TUNA 的軟體源映象 # mv /etc/apt/sources.list /etc/apt/sources.list.bak vim /etc/apt/sources.list # 預設註釋了原始碼映象以提高 apt update 速度,如有需要可自行取消註釋 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse4.2. 6 各節點配置ceph yum 倉庫
匯入key 檔案: wget -q -O- 'https://mirrors.tuna.tsinghua.edu.cn/ceph/keys/release.asc' | sudo apt-key add - 新增清華源ceph源: echo "deb https://mirrors.tuna.tsinghua.edu.cn/ceph/debian-pacific bionic main" >> /etc/apt/sources.list 執行系統更新 apt-get update4.2.7 配置hosts,新增各節點hostname
vim /etc/hosts 127.0.0.1 localhost ::1 localhost ip6-localhost ip6-loopback ff02::1 ip6-allnodes ff02::2 ip6-allrouters 172.1.0.2 ceph-deploy 172.1.0.21 mon1 172.1.0.22 mon2 172.1.0.23 mon3 172.1.0.31 mgr1 172.1.0.32 mgr2 172.1.0.41 osd1 172.1.0.42 osd2 172.1.0.43 osd3 172.1.0.44 osd4 172.1.0.50 client14.2.8 Ubuntu 各伺服器需要單獨安裝Python2
# apt install python2.7 -y # ln -sv /usr/bin/python2.7 /usr/bin/python24.3 安裝系統常用工具
aptinstalliproute2ntpdatetcpdumptelnettraceroutenfs-kernel-servernfs-commonlrzsztreeopenssllibssl-devlibpcre3libpcre3-devzlib1g-devntpdatetcpdumptelnettraceroutegccopenssh-serverlrzsztreeopenssllibssl-devlibpcre3libpcre3-devzlib1g-devntpdatetcpdumptelnettracerouteiotopunzipzip -y4.4 建立普通使用者cephuser
4.4.1 建立cephuser普通使用者
groupadd -r -g 2023 cephuser && useradd -r -m -s /bin/bash -u 2023 -g 2023 cephuser && echo cephuser:sa@123.. | chpasswd4.4.2 各伺服器允許ceph 使用者以sudo 執行特權命
echo "cephuser ALL=(ALL) NOPASSWD: ALL" >> /etc/sudoers4.4.3 配置免祕鑰登入
在ceph-deploy 節點配置允許以非互動的方式登入到各ceph osd/mon/mgr 節點,即在ceph-deploy 節點生成祕鑰對,然後分發公鑰到各被管理節點: ssh-keygen ssh-keygen ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected] ssh-copy-id [email protected]4.5.deploy節點部署
4.5.1 在ceph 部署伺服器(192.168.2.2)安裝部署工具ceph-deploy
root@ceph-deploy:~# apt install ceph-deploy4.5.2 ceph-deploy 管理ceph 叢集
在ceph-deploy 節點配置一下系統環境,以方便後期可以執行ceph 管理命令。 # apt install ceph-common4.5.3 推送正證書給自己
cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy admin ceph-deploy4.5.4 證書檔案授權
root@ceph-deploy:/data/ceph-cluste# setfacl -m u:cephuser:rw /etc/ceph/ceph.client.admin.keyring4.6 配置mon節點
4.6.1 在管理節點ceph-depoly上初始化mon節點
root@ceph-deploy:~# mkdir ceph-cluste -p #儲存當前叢集的初始化配置資訊 root@ceph-deploy:~# cd ceph-cluste/ cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy new --cluster-network 172.1.0.0/24 --public-network 192.168.2.0/24 mon1 mon2 mon3 生成如下檔案: -rw-rw-r-- 1 cephuser cephuser 295 Aug 19 11:23 ceph.conf -rw-rw-r-- 1 cephuser cephuser 11492 Aug 19 11:23 ceph-deploy-ceph.log -rw------- 1 cephuser cephuser 73 Aug 19 11:23 ceph.mon.keyring ceph.conf #自動生成的配置檔案 ceph-deploy-ceph.log #初始化日誌 #用於ceph mon 節點內部通訊認證的祕鑰環檔案4.6.2 配置mon 節點並生成及同步祕鑰
4.6.2.1 在各mon節點安裝元件ceph-mon,並通過初始化mon 節點,mon 節點ha 還可以後期橫向擴容
apt install ceph-mon4.6.2.2 在ceph-deploy 初始化mon節點
cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy mon create-initial4.6.2.3 驗證mon 節點
ps -ef |grep mon ceph 20082 1 1 12:00 ? 00:00:00 /usr/bin/ceph-mon -f --cluster ceph --id mon1 --setuser ceph --setgroup ceph4.7 配置manager 節點
4.7.1 mgr節點安裝ceph-mgr安裝包
apt install ceph-mgr4.7.2 ceph-deploy節點cephuser賬號執行初始化mgr節點
ceph-deploy mgr create mgr1 mgr24.7.3 驗證ceph-mgr 節點
root@mgr1:~# ps -ef |grep mgr ceph 20913 1 40 12:54 ? 00:00:12 /usr/bin/ceph-mgr -f --cluster ceph --id mgr1 --setuser ceph --setgroup ceph4.8 mon、mgr初始化安裝後集群狀態查詢
測試ceph 命令: root@ceph-deploy:/data/ceph-cluste# su - cephuser cephuser@ceph-deploy:~$ ceph -scluster: id: d623cb9e-74c4-44ec-ba47-a49272ddd76e health: HEALTH_WARN mons are allowing insecure global_id reclaim OSD count 0 < osd_pool_default_size 3 services: mon: 3 daemons, quorum mon1,mon2,mon3 (age 59m) mgr: mgr1(active, since 5m), standbys: mgr2 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:mon is allowing insecure global_id reclaim #需要禁用非安全模式通訊 OSD count 0 < osd_pool_default_size 3 #叢集的OSD 數量小於3 配置優化 cephuser@ceph-deploy:~$ ceph config set mon auth_allow_insecure_global_id_reclaim false mon is allowing insecure global_id reclaim 警告消失了
4.9 準備OSD 節點
4.9.1 初始化ceph 儲存節點
初始化儲存節點等於在儲存節點安裝了ceph 及ceph-rodsgw 安裝包,但是使用預設的官方倉庫會因為網路原因導致初始化超時,因此各儲存節點推薦修改ceph 倉庫為阿里或者清華等國內的映象源。 修改ceph 映象源,之前步驟已經配置過,此步忽略。 初始化node 節點過程,此過程會在指定的ceph node 節點按照序列的方式逐個伺服器安裝epel 源和ceph 源,並按安裝ceph ceph-radosgw ceph-deploy install --no-adjust-repos --nogpgcheck osd1 osd2 osd3 osd44.9.1 分發admin 祕鑰
root@ceph-deploy:/data/ceph-cluste# apt install ceph-common -y root@ceph-deploy:/data/ceph-cluste# su - cephuser cephuser@ceph-deploy:~$ cd ceph-cluster/ cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy admin osd1 osd2 osd3 osd44.9.3 ceph 節點(osd)驗證祕鑰
root@osd1:~# ll /etc/ceph/ total 24 drwxr-xr-x 2 root root 87 Aug 19 12:06 ./ drwxr-xr-x 95 root root 8192 Aug 19 11:41 ../ -rw------- 1 root root 151 Aug 19 12:06 ceph.client.admin.keyring -rw-r--r-- 1 root root 295 Aug 19 12:06 ceph.conf -rw-r--r-- 1 root root 92 Jul 8 22:17 rbdmap -rw------- 1 root root 0 Aug 19 12:06 tmpSJF5Yk4.9.4 認證檔案的屬主和屬組的修改
為了安全考慮,預設設定為了root 使用者和root 組,如果需要ceph使用者也能執行ceph 命令,那麼就需要對ceph 使用者進行授權 root@osd1:~# setfacl -m u:cephuser:rw /etc/ceph/ceph.client.admin.keyring root@osd2:~# setfacl -m u:cephuser:rw /etc/ceph/ceph.client.admin.keyring root@osd3:~# setfacl -m u:cephuser:rw /etc/ceph/ceph.client.admin.keyring root@osd4:~# setfacl -m u:cephuser:rw /etc/ceph/ceph.client.admin.keyring4.9.5 擦除磁碟之前通過deploy 節點對node(osd) 節點執行安裝ceph 基本執行環境
cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy install --release pacific osd1 cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy install --release pacific osd2 cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy install --release pacific osd3 cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy install --release pacific osd44.9.6 列出ceph node 節點磁碟
cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy disk list osd1 cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy disk list osd2 cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy disk list osd3 cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy disk list osd44.9.7 使用ceph-deploy disk zap 擦除各ceph node 的ceph 資料磁碟
cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy disk zap osd1 /dev/vd$i;done cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy disk zap osd2 /dev/vd$i;done cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy disk zap osd3 /dev/vd$i;done cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy disk zap osd4 /dev/vd$i;done4.9.8 新增OSD
資料分類儲存方式: Data:即ceph 儲存的物件資料 Block: rocks DB 資料即元資料 block-wal:資料庫的wal 日誌 cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy osd create osd1 --data /dev/vd$i;done cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy osd create osd2 --data /dev/vd$i;done cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy osd create osd3 --data /dev/vd$i;done cephuser@ceph-deploy:~/ceph-cluster$ for i in b c d e f; do ceph-deploy osd create osd4 --data /dev/vd$i;done4.9.10 驗證osd新增後集群狀態
cephuser@ceph-deploy:~/ceph-cluster$ ceph -s cluster: id: d623cb9e-74c4-44ec-ba47-a49272ddd76e health: HEALTH_OK services: mon: 3 daemons, quorum mon1,mon2,mon3 (age 86m) mgr: mgr1(active, since 32m), standbys: mgr2 osd: 20 osds: 20 up (since 42s), 20 in (since 53s) data: pools: 1 pools, 1 pgs objects: 0 objects, 0 B usage: 152 MiB used, 2.0 TiB / 2.0 TiB avail pgs: 1 active+clean
5. Ceph塊裝置RBD
5.1 RBD簡介
RBD(RADOS Block Devices)即為塊儲存的一種,RBD 通過librbd 庫與OSD 進行互動,RBD為KVM 等虛擬化技術和雲服務(如OpenStack 和CloudStack)提供高效能和無限可擴充套件性的儲存後端,這些系統依賴於libvirt 和QEMU 實用程式與RBD 進行整合,客戶端基於librbd 庫即可將RADOS 儲存叢集用作塊裝置,不過,用於rbd 的儲存池需要事先啟用rbd功能並進行初始化。例如,下面的命令建立一個名為myrbd1 的儲存池,並在啟用rbd 功能後對其進行初始化
5.2 RBD建立
5.2.1 建立RBD
建立儲存池命令格式: $ceph osd pool create <poolname> pg_num pgp_num {replicated|erasure} #建立儲存池,指定pg 和pgp 的數量,pgp 是對存在於pg 的資料進行組合儲存,pgp 通常等於pg 的值 cephuser@ceph-deploy:~/ceph-cluster$ ceph osd pool create rbd-test1 64 64 $ ceph osd pool --help cephuser@ceph-deploy:~/ceph-cluster$ ceph osd pool application enable rbd-test1 rbd5.2.2 通過RBD 命令對儲存池初始化
$ rbd -h
rbd pool init -p rbd-test15.2.3 建立並驗證img
不過,rbd 儲存池並不能直接用於塊裝置,而是需要事先在其中按需建立映像(image),並把映像檔案作為塊裝置使用,rbd 命令可用於建立、檢視及刪除塊裝置相在的映像(image),以及克隆映像、建立快照、將映像回滾到快照和檢視快照等管理操作,例如,下面的命令能夠建立一個名為img-test1 的映像: cephuser@ceph-deploy:~/ceph-cluster$ rbd create img-test1 --size 5G --pool rbd-test1 cephuser@ceph-deploy:~/ceph-cluster$ rbd create img-test2 --size 3G --pool rbd-test1 --image-format 2 --image-feature layering #後續步驟會使用 img-test2,由於系統核心較低無法掛載使用,因此只開啟部分特性。 除了layering 其他特性需要高版本核心支援 列出img: cephuser@ceph-deploy:~/ceph-cluster$ rbd ls --pool rbd-test1 img-test1 img-test25.2.4 檢視指定rdb 的資訊
cephuser@ceph-deploy:~/ceph-cluster$ rbd --image img-test1 --pool rbd-test1 info rbd image 'img-test1': size 5 GiB in 1280 objects order 22 (4 MiB objects) snapshot_count: 0id: 1295c66bf942
block_name_prefix: rbd_data.1295c66bf942 format: 2 features: layering, exclusive-lock, object-map, fast-diff, deep-flattenop_features:
flags: create_timestamp: Thu Aug 19 13:42:45 2021access_timestamp: Thu Aug 19 13:42:45 2021
modify_timestamp: Thu Aug 19 13:42:45 2021 cephuser@ceph-deploy:~/ceph-cluster$ rbd --image img-test2 --pool rbd-test1 inforbd image 'img-test2':
size 3 GiB in 768 objectsorder 22 (4 MiB objects)
snapshot_count: 0 id: 129e31139198 block_name_prefix: rbd_data.129e31139198format: 2
features: layering op_features: flags:create_timestamp: Thu Aug 19 13:44:39 2021
access_timestamp: Thu Aug 19 13:44:39 2021
modify_timestamp: Thu Aug 19 13:44:39 20215.3 客戶端使用塊儲存
5.3.1 檢視當前ceph 狀態
cephuser@ceph-deploy:~/ceph-cluster$ ceph df --- RAW STORAGE --- CLASS SIZE AVAIL USED RAW USED %RAW USED hdd 2.0 TiB 2.0 TiB 162 MiB 162 MiB 0 TOTAL 2.0 TiB 2.0 TiB 162 MiB 162 MiB 0 --- POOLS --- POOL ID PGS STORED OBJECTS USED %USED MAX AVAIL device_health_metrics 1 1 0 B 0 0 B 0 633 GiB rbd-test1 2 64 405 B 7 48 KiB 0 633 GiB5.3.2 在客戶端安裝ceph-common
root@client1:~# apt install ceph-common5.3.3 從ceph-deploy伺服器同步認證檔案
cephuser@ceph-deploy:~/ceph-cluster$ scp ceph.conf ceph.client.admin.keyring [email protected]:/etc/ceph/5.3.4 客戶端對映img
root@client1:/etc/ceph# rbd -p rbd-test1 map img-test1 rbd: sysfs write failed RBD image feature set mismatch. You can disable features unsupported by the kernel with "rbd feature disable rbd-test1/img-test1 object-map fast-diff deep-flatten". In some cases useful info is found in syslog - try "dmesg | tail". rbd: map failed: (6) No such device or address root@client1:/etc/ceph# rbd -p rbd-test1 map img-test2 /dev/rbd05.3.5 客戶端驗證RBD
root@client1:/etc/ceph# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT sr0 11:0 1 1024M 0 rom rbd0 251:0 0 3G 0 disk vda 252:0 0 200G 0 disk ├─vda1 252:1 0 4.7G 0 part /boot └─vda2 252:2 0 195.4G 0 part /5.3.6 客戶端格式化磁碟並掛載使用
root@client1:/etc/ceph# fdisk /dev/rbd0 root@client1:/etc/ceph# mkfs.xfs /dev/rbd0p1 root@client1:/etc/ceph# mkdir /mnt/rbd0 root@client1:/etc/ceph# mount /dev/rbd0p1 /mnt/rbd0/ root@client1:/etc/ceph# df -h Filesystem Size Used Avail Use% Mounted on ... /dev/rbd0p1 3.0G 36M 3.0G 2% /mnt/rbd05.3.7 客戶端驗證
root@client1:/etc/ceph# dd if=/dev/zero of=/mnt/rbd0/ceph-test-file bs=1MB count=300 300+0 records in 300+0 records out 300000000 bytes (300 MB, 286 MiB) copied, 0.537179 s, 558 MB/s ceph 驗證資料 root@client1:/etc/ceph# df -h Filesystem Size Used Avail Use% Mounted on udev 3.9G 0 3.9G 0% /dev tmpfs 798M 5.9M 792M 1% /run /dev/vda2 196G 4.7G 191G 3% / tmpfs 3.9G 0 3.9G 0% /dev/shm tmpfs 5.0M 0 5.0M 0% /run/lock tmpfs 3.9G 0 3.9G 0% /sys/fs/cgroup /dev/vda1 4.7G 183M 4.5G 4% /boot tmpfs 798M 0 798M 0% /run/user/0 /dev/rbd0p1 3.0G 323M 2.7G 11% /mnt/rbd0
6.ceph radosgw(RGW)物件儲存
6.1 RGW簡介
RGW 提供的是REST 介面,客戶端通過http 與其進行互動,完成資料的增刪改查等管理操。
radosgw 用在需要使用RESTful API 介面訪問ceph 資料的場合,因此在使用RBD 即塊儲存得場合或者使用cephFS 的場合可以不用啟用radosgw 功能。6.2 部署radosgw 服務
如果是在使用radosgw 的場合,則以下命令以mgr1 節點為例部署為RGW 主機: 首先在需要安裝radosgwf服務的伺服器上,比如mgr1上安裝radosgw安裝包 root@mgr1:~# apt install radosgw=16.2.5-1bionic6.3 radosgw節點的初始化
在ceph-deploy節點用cephuser賬號執行radosgw節點的初始化命令cephuser@ceph-deploy:~/ceph-cluster$ ceph-deploy --overwrite-conf rgw create mgr1
6.4 驗證mgr1 上radosgw 服務
root@mgr1:~# ps -ef |grep radosgw
root 22253 1 2 15:41 ? 00:00:00 /usr/bin/radosgw -f --cluster ceph --name client.rgw.mgr1 --setuser ceph --setgroup ceph
6.5 檢視radosgw服務的監聽埠
root@mgr1:~# netstat -ntlp |grep radosgw
tcp 0 0 0.0.0.0:7480 0.0.0.0:* LISTEN 22253/radosgw
tcp6 0 0 :::7480 :::* LISTEN 22253/radosgw
6.6 訪問測試
cephuser@ceph-deploy:~/ceph-cluster$ curl "http://mgr1:7480" <?xml version="1.0" encoding="UTF-8"?><ListAllMyBucketsResult xmlns="http://s3.amazonaws.com/doc/2006-03-01/"><Owner><ID>anonymous</ID><DisplayName></DisplayName></Owner><Buckets></Buckets></ListAllMyBucketsResult> 驗證ceph 狀態 cephuser@ceph-deploy:~/ceph-cluster$ ceph -s cluster: id: d623cb9e-74c4-44ec-ba47-a49272ddd76ehealth: HEALTH_OK
services:
mon: 3 daemons, quorum mon1,mon2,mon3 (age 3h)
mgr: mgr1(active, since 2h), standbys: mgr2
osd: 20 osds: 20 up (since 2h), 20 in (since 2h)
rgw: 1 daemon active (1 hosts, 1 zones)
data: pools: 6 pools, 169 pgs objects: 282 objects, 300 MiB usage: 2.0 GiB used, 2.0 TiB / 2.0 TiB avail pgs: 169 active+clean6.7 驗證radosgw 儲存池
初始化完成radosgw 之後,會初始化預設的儲存池如下:
cephuser@ceph-deploy:~/ceph-cluster$ ceph osd pool ls
device_health_metrics
rbd-test1
.rgw.root
default.rgw.log
default.rgw.control
default.rgw.meta