版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
ceph存儲(chǔ)使用手冊(cè)
前言:
1.藍(lán)色字體表示命令行命令,正式執(zhí)行時(shí)不要復(fù)制前面的#號(hào),#號(hào)只是提示應(yīng)該使用root權(quán)限操作
2.綠色字體表示注稱,有時(shí)注顆太多就不用綠色表示了
3.注意:本文檔的所有操作請(qǐng)先在測(cè)環(huán)境進(jìn)行實(shí)踐,請(qǐng)不要直接在真實(shí)的服務(wù)器中操作!
版權(quán)聲明:
本文檔以開(kāi)源的形式發(fā)布,所有條款如下:
1.無(wú)擔(dān)保:作者不保證文檔內(nèi)容的準(zhǔn)確無(wú)誤,亦不承擔(dān)由于使用此文檔所導(dǎo)致的任何后果
2.白由使用:任何人可以出廠任何目的而白由地閱讀/鏈接/打印/轉(zhuǎn)載/引用/再創(chuàng)作此文檔,無(wú)需任何附加條件
若您閱讀/鏈接/打印/轉(zhuǎn)載/引用/再創(chuàng)作本文檔,則說(shuō)明接受以上2個(gè)條款,
作者:李茂福
更新日期:2023年10月31U
★第。章、ceph各版本發(fā)布時(shí)間
ceph官網(wǎng);
版本查看:
代號(hào)版本發(fā)布日期EOL日期對(duì)應(yīng)紅帽ceph
Dumpling40.67.112013-08-012015-05-01
Emperor50.72.22013-11-012014-05-01
Firefly60.80.112014-05-012016-04-01
Giant70.87.22014-10-012015-04-01
Haimner80.94.102015-04-012017-08-01
Infcrnalis92015-11-012016-04-01
Jewel102016-04-012018-07-01rhcs2
Kraken112017-01-012017-08-01
Luminous122017-08-012020-03-01rhcs3命令與前面版本開(kāi)始有差異了
Mimic132018-06-012020-07-22
Nautilus1-12019-03-192021-06-30rhcs4開(kāi)始支持自動(dòng)調(diào)整PG數(shù)量
Octopus152020-03-232022-08-09開(kāi)始支持使用cephadm部署
Pacific162021-03-312023-10-01rhcs5
Quincy172022-04-192024-06-01
Reef182023-08-072025-08-01
19
從Hammer之后版本命名使用新的命名策略,之前一直是0.2,0.3,0.x
主版本號(hào)為8,9,10……,次版本號(hào)0表示開(kāi)發(fā)版,1表示候選版,2表示穩(wěn)定版
在Octopus版本后使用cephadm來(lái)部署ceph集群,如果使用cephadm部署,在后期新的版本升級(jí)時(shí),可以做到完全
自動(dòng)化,并可以通過(guò)ceph-Wcephadm查看升級(jí)進(jìn)度,升級(jí)完成后,無(wú)法降圾,升級(jí)時(shí)請(qǐng)不要跨版本升級(jí)
★第1章、ceph各組件及原理
網(wǎng)絡(luò)存儲(chǔ)類(lèi)型:
存儲(chǔ)服務(wù)類(lèi)型存儲(chǔ)類(lèi)型
NFS,Samba,CephFSNAS(NetworkAttackedStorage)目錄共享(文件系統(tǒng))
iSCSI,RBDSAN(StorageAreaNetwork)塊設(shè)備,磁盤(pán)分區(qū)、Ivm邏輯卷、文件i。共享
aws-S3tceph-RGWOBS(ObjectStorageService)對(duì)象存儲(chǔ),以桶(bucket)來(lái)組織文件對(duì)象
Ceph是一個(gè)開(kāi)源的分布式存儲(chǔ)系統(tǒng).可提供對(duì)象存儲(chǔ)、塊設(shè)備、文件系統(tǒng)的存儲(chǔ)服務(wù)
ceph是一個(gè)對(duì)象(object)式存儲(chǔ)系統(tǒng),它把每一個(gè)待管理的數(shù)據(jù)流(文件等數(shù)據(jù))切割為若干個(gè)固定大小(默認(rèn)4MB)
的對(duì)象數(shù)據(jù),并以其為原子單元完成數(shù)據(jù)的讀寫(xiě)。
對(duì)象數(shù)據(jù)的底層存儲(chǔ)服務(wù)是由多個(gè)存儲(chǔ)主機(jī)(host)組成的存儲(chǔ)集群,該集群也被稱為RADOS存儲(chǔ)集群
RADOS(reliableautomaticdistributedobjectstore)?即可靠的、自動(dòng)化的、分布式的存儲(chǔ)集群
★ceph的構(gòu)成
pool存儲(chǔ)池,存儲(chǔ)池的大小取決于底層的存儲(chǔ)空間大小(所有osd對(duì)應(yīng)的磁盤(pán)的空間之和)
PG(PlacementGroup)放置組,PG是組成存儲(chǔ)池的基本單位。—個(gè)pool內(nèi)部可以有多個(gè)PG存在,
一個(gè)pool中有多少個(gè)PG可以通過(guò)公式計(jì)算。同一個(gè)PG內(nèi)的所有對(duì)象都會(huì)放到相同的磁盤(pán)上。
一個(gè)對(duì)象只能屬于一個(gè)PG,多副本情況下一個(gè)PG對(duì)應(yīng)多人osd
OSD(ObjectStorageDaemon)存儲(chǔ)守護(hù)進(jìn)程,ceph集群通過(guò)管理OSD來(lái)管理物理硬盤(pán),服務(wù)器上的每
一塊數(shù)據(jù)盤(pán)都會(huì)相應(yīng)地去運(yùn)行?個(gè)OSD進(jìn)程。-個(gè)osd對(duì)應(yīng)?個(gè)數(shù)據(jù)磁盤(pán)。
ceph-Mon(Monitor)ceph監(jiān)視器,維護(hù)OSD和PG的集群狀態(tài),,個(gè)ceph集群至少要有?個(gè)mon,可以是
奇數(shù)個(gè)數(shù)量的mon進(jìn)程實(shí)例,如一三五七等。每臺(tái)服務(wù)器只起一個(gè)mon進(jìn)程
ceph-MgrCephManager守護(hù)程序負(fù)責(zé)跟蹤運(yùn)行時(shí)指標(biāo)和Ceph集群的當(dāng)前狀態(tài),包括存儲(chǔ)利用率,當(dāng)前性能
指標(biāo)和系統(tǒng)負(fù)載。CephManager守護(hù)程序還托管基于python的模塊來(lái)管理和公開(kāi)Ceph集群信息,
包括基于Web的Ceph儀表板和RESTAPI。高可用性通常至少需要兩個(gè)mgr管理器。mgr組件不是
必須的,只有需要查看信息狀態(tài)時(shí)才部署mgr實(shí)例。
MDSceph元數(shù)據(jù)服務(wù)器,代表ceph文件系統(tǒng)(NFS/CephFS)存儲(chǔ)元數(shù)據(jù),(即Ceph塊設(shè)備和Ceph對(duì)
象存儲(chǔ)不使用MDS)
Ceph管理節(jié)點(diǎn)ceph的常用管理接口是?組命令行工具程序,例如rados、ceph、rbd等命令;安裝了ceph-common
工具命令的節(jié)點(diǎn)為管理節(jié)點(diǎn),同時(shí)在ceph里將此節(jié)點(diǎn)標(biāo)記為_(kāi)admin
libradosRADOS存儲(chǔ)集群的API,支持大多數(shù)編程語(yǔ)言客戶端調(diào)用
OSD
osd負(fù)責(zé)處理集群數(shù)據(jù)的更制、恢更、回填、再均衡,并向其他。sd守護(hù)進(jìn)程發(fā)送心跳,然后向Mon提供一些監(jiān)控信
息。當(dāng)Ceph存儲(chǔ)集群設(shè)定數(shù)據(jù)有兩個(gè)副本時(shí)《一共存兩份),則至少需要三個(gè)O5D守護(hù)進(jìn)程即三個(gè)OSD節(jié)點(diǎn),集群
才能達(dá)到active+clean狀態(tài),實(shí)現(xiàn)冗余和高可用。
在Ceph中,如果要寫(xiě)數(shù)據(jù),只能向主OSD寫(xiě),然后再由主OSD向從OSD同步地寫(xiě),只有當(dāng)從OSD返回結(jié)果給主OSD
后,主OSD才會(huì)向客戶端報(bào)告寫(xiě)入完成的消息。如果要讀數(shù)據(jù),不會(huì)使用讀寫(xiě)分離,而是也需要先向主OSD發(fā)請(qǐng)求,
以保證數(shù)據(jù)的強(qiáng)一致性。
OSD權(quán)重是主/從OSD節(jié)點(diǎn)的選擇的唯一標(biāo)準(zhǔn),而權(quán)重又以對(duì)應(yīng)硬盤(pán)剩余存儲(chǔ)容量作為唯一決定因素,所以滋盤(pán)剩余
存儲(chǔ)容量是數(shù)據(jù)分布和讀寫(xiě)操作中選擇主次OSD的唯一決定因素
Monitor
用于維護(hù)集群狀態(tài)映射(maintainsmapsofthedusterstate),比如ceph集群中有多少存儲(chǔ)池、每個(gè)存儲(chǔ)池有多少PG
以及存儲(chǔ)池和PG的映射關(guān)系等;此外監(jiān)視器還負(fù)責(zé)管理守護(hù)程序和客戶端之間的身份驗(yàn)證(認(rèn)證使用cephx協(xié)議),
通常至少需要三個(gè)監(jiān)視器才能實(shí)現(xiàn)冗余和高可用性
CRUSH算法
(Controllersreplicationunderscalablehashing)可控的、可復(fù)制的、可伸縮的一致性hash算法
Ceph使用CRUSH算法來(lái)存放和管理數(shù)據(jù),Ceph使用CRUSH算法來(lái)準(zhǔn)確計(jì)算數(shù)據(jù)應(yīng)該被保存到哪里,以及應(yīng)該從哪里
讀取。和俁存元數(shù)據(jù)不同,是CRUSH按需計(jì)算出元數(shù)據(jù),因此它就消除了對(duì)中心式的服務(wù)器/網(wǎng)關(guān)的需求,它使得Ceph
客戶端能夠計(jì)算出元數(shù)據(jù),該過(guò)程也稱為CRUSH查找,然后和OSD直接通信。
如果是把對(duì)象直接映射到OSD之上會(huì)導(dǎo)致對(duì)象與OSD的對(duì)應(yīng)關(guān)系過(guò)于緊密和耦合,當(dāng)OSD由于故障發(fā)生變更時(shí)將會(huì)對(duì)
整個(gè)ceph集群產(chǎn)生影響。于是ceph將?個(gè)對(duì)象映射到RADOS集群的時(shí)候分為兩步走:
首先使用一致性hash嵬法將對(duì)象名稱映射到PG,
然后將PGID基于CRUSH算法映射到OSD即可查到對(duì)象
★Ceph相較于其他存儲(chǔ)方案的優(yōu)勢(shì)
CRUSH算法:
CURSH是ceph的兩大創(chuàng)新之一(另一大就是去中心化),ceph摒棄了傳統(tǒng)的集中式存儲(chǔ)元數(shù)據(jù)尋址的方案,轉(zhuǎn)而
使用CRUSH算法計(jì)算的方式完成數(shù)據(jù)的尋玨操作
crush算法有強(qiáng)大的擴(kuò)展性(即高擴(kuò)展性),理論上支持上千個(gè)存儲(chǔ)節(jié)點(diǎn)規(guī)模
高可用:
數(shù)據(jù)副本數(shù)可以靈活調(diào)整
可以通過(guò)crush算:法指定副本的物理存放位置以分割故障域,支持?jǐn)?shù)據(jù)強(qiáng)一致性
支持多種故障場(chǎng)景自動(dòng)嘗試進(jìn)行修復(fù)
支持多份強(qiáng)一致性副本,副本能夠垮主機(jī)、機(jī)架、機(jī)房、數(shù)據(jù)中心存放,安全可靠
存儲(chǔ)節(jié)點(diǎn)可以自管理、自動(dòng)修復(fù)。無(wú)單點(diǎn)故障,容錯(cuò)性強(qiáng)
高性能:
因?yàn)槭嵌鄠€(gè)副本,因此在讀寫(xiě)操作時(shí)能夠做到高度并行化,理論上,節(jié)點(diǎn)越多,整個(gè)cpeh集群的IOPS和吞吐量
就越高
ceph客戶端讀寫(xiě)數(shù)據(jù)可直接與存儲(chǔ)設(shè)備OSD交互,在塊存儲(chǔ)和對(duì)象存儲(chǔ)中無(wú)需元數(shù)據(jù)MDS服務(wù)
特性豐富:
支持三種存儲(chǔ)接口:對(duì)象存儲(chǔ),塊存儲(chǔ),文件存儲(chǔ)
支持自定義接口,支持多種語(yǔ)言驅(qū)動(dòng)
Sceph上層接口
基于UBRADOS層開(kāi)發(fā)的三個(gè)接I」,其作用是在librados庫(kù)的基礎(chǔ)上提供抽象層次更高、更便于應(yīng)用或客戶端使用的上
層接口。
①RADOSGW(簡(jiǎn)稱RGW)提供對(duì)象存儲(chǔ)服務(wù),是一套基于RESTFUL協(xié)議的網(wǎng)關(guān),支持對(duì)象存儲(chǔ),兼容S3和Swift
②RBD提供分布式的塊存儲(chǔ)設(shè)備接口,主要面向虛擬機(jī)提供虛擬磁盤(pán),可以被映射、格式化,像磁盤(pán)?樣掛載到服務(wù)
器使用。
③CephFS是一個(gè)POSIX兼容的分布式文件系統(tǒng),依賴MDS來(lái)跟蹤文件層次結(jié)構(gòu),基于librados封裝原生接口,它跟傳
統(tǒng)的文件系統(tǒng)如Ext4是?個(gè)類(lèi)型的,區(qū)別在于分布式存儲(chǔ)提供了并行化的能力,像NFS等也是屬于文件系統(tǒng)存儲(chǔ)
★ceph底層存儲(chǔ)過(guò)程
無(wú)論使用哪種存儲(chǔ)方式(對(duì)象,塊,文件),存儲(chǔ)的數(shù)據(jù)在底層保存時(shí),都會(huì)被切分成一個(gè)個(gè)大小固定的對(duì)象(Objects),
對(duì)象大小可以由管理員自定義調(diào)整,RADOS中基本的存儲(chǔ)單位就是Objects,一般為2MB或4MB(最后一個(gè)對(duì)象大小
有可能不同)
文件X|1001111|1101111|1100111|1010001|1111100
將文件xx切割為大
|object-1object-2object-3object-4
小相同的Object
回配到@
PG-2
將Object放object-11111100111110":.,101111
.........-]object-3o切ect-2
置到PG里
object-4object-xx
每個(gè)PG存儲(chǔ)
在相應(yīng)的
OSD里
文件(File)被切割成大小固定的Objects(每個(gè)默認(rèn)4MB),再根據(jù)對(duì)象的id進(jìn)行hash計(jì)算,得到的結(jié)果對(duì)pg個(gè)數(shù)
取余,將這些對(duì)象分配到對(duì)應(yīng)的PG中,然后各個(gè)PG會(huì)通過(guò)CRUSH黨法分配到對(duì)應(yīng)的osd上(每個(gè)PG:一副本就復(fù)
制相同的數(shù)據(jù)(object)到對(duì)應(yīng)的1個(gè)osd上,兩副本就復(fù)制到對(duì)應(yīng)的2個(gè)osd上,依此類(lèi)推)
Hpg數(shù)量計(jì)算公式
TotalPGs=(Total_OSD_number*TargetPGsperOSD)/max_replication_count/pool_count
(TargetPGsperOSD如果osd將來(lái)不擴(kuò)展則置100,將來(lái)擴(kuò)展則置200)
即:總PG數(shù)=總。sd數(shù)量*每osd目標(biāo)pg數(shù)量/最大文件副本數(shù)/pod數(shù)量
例:
24個(gè)磁盤(pán),將來(lái)不擴(kuò)展(100),最大副本3,pool數(shù)量8,則總pg數(shù)為
TotalPGs=24x100/3/8=100
常用值(3副本數(shù)):
pg數(shù)量osd數(shù)量(將來(lái)不增加)osd數(shù)量(將來(lái)增加)
1283.841.92
2567.683.84
51215.367.68
1024307215.36
204861.4430.72
4096122.8861.44
大于50個(gè)。sd,建議手動(dòng)計(jì)算
★從Nautilus版本開(kāi)始,支持自動(dòng)擴(kuò)展pg數(shù)量,不需要再手動(dòng)指定了。
pg_autoscaler模塊最早在Nautilus(14.x)版木中引入,pg_autoscaler可以根據(jù)池使用情況和用戶設(shè)置的調(diào)整來(lái)自動(dòng)調(diào)
整集群中PG放置組的數(shù)量。
★第2章、centos-stream8安裝ceph集群
★規(guī)劃及部署
官方指導(dǎo)文檔:
①規(guī)劃主機(jī)名及ip
ceph服務(wù)器使用固定ip地址,配置主機(jī)名,要求能解析相應(yīng)的主機(jī)名到對(duì)應(yīng)的ip地址,可以使用內(nèi)網(wǎng)集群的dns服務(wù)
器或?qū)懭?etc/hosts文件里。操作系統(tǒng)用centos-stream-8RockyLinux8,它們用的軟件源是一樣的
主機(jī)名ip角色操作系統(tǒng)
1mon,mgr,osd,bootstrapcentos-stream-8或rocky8
2mon,mgr,osd,rgw,mdscentos-stream-8或rocky8
3mon,mgr,osd,rgw,mdscentos-stream-8或rocky8
#cat?/etc/hosts?EOF
1cephl
2ceph2
3ceph3
EOF
#hostnamectlset-hostnamecephl.cof-leG.com
②配置時(shí)間同步
一定要配置ntp時(shí)間同步,可用chronyd服務(wù)或ntpd
#yuminstallchrony-y
#systemctIenablechronyd
#systemctlstartchronyd
#vi/etc/:hrony.conf
server1C.99.1.246iburstprefer學(xué)配置可訪問(wèn)的ntp服務(wù)器
#systemctlrestartchronyd
#chronycsources-v
③安裝依賴包
#yuminstallpython3Ivm2-y
ttyuminstallpodman-y什如果不想用podman,也可用docker-ce
以上操作在3臺(tái)節(jié)點(diǎn)上都要操作,以下只用在cephl節(jié)點(diǎn)上操作(安裝cephadm進(jìn)行bootstrap初始化)
④配置cephadm軟件倉(cāng)庫(kù)并安裝cephadm工具
#yuminstallepel-release-y
#yumsearchrelease-ceph#在自帶的Extras倉(cāng)庫(kù)里
#yuminstallcentos-release-ceph-quincy.noarch-y#自動(dòng)安裝了ceph-repo倉(cāng)庫(kù):
#catCentOS-Ceph-Quincy.repo
[centos-ceph-quincy]
name=Cen:OS-$stream-CephQuincy
mirrorlist=$stream&arch=$basearch&repo=storage-ceph-quincy
#baseurl=$contentdir/$stream/storage/$basearch/ceph-quincy/
gpgcheck=l
enabled=l
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-Storage
#或者手動(dòng)指定aliyun的源(本例中使用ceph-quincy版本)
#cat>/etc/yum.repos.d/cephadm-quincy-aliyun.repo?EOF
[cephadm]
name=cephadm
baseurl=
enabled=l
gpgcheck=O
EOF
#yumsearchcephadm--showduplicates
#yuminstallcephadm-y
#yuminstallcephadm-2:17.2.6-3.el8s.noarch-y#安裝時(shí)指定版本號(hào),如果有多個(gè)版本的話
⑤初始化第一臺(tái)ceph節(jié)點(diǎn)
#cat/usr/sbin/cephadm|grep[IMAGE="#杳看默認(rèn)鏡像名稱
cephadmiquincy版本)初始化過(guò)程中默認(rèn)會(huì)去卜.載以卜.容器鏡像:
quay.io/ceph/ceph:vl7
quay.io/ceph/ceph-grafana:8.3,5
quay.io/prometheus/prometheus:v2.33.4
quay.io/prometheus/node-exporter:vl.3.1
quay.io/prometheus/alertmanager:v0.23.0
如果需要使用內(nèi)網(wǎng)的私有鏡像倉(cāng)庫(kù),需要將內(nèi)部鏡像倉(cāng)庫(kù)域名設(shè)置為quay」。,或者將quay」。解析到內(nèi)部的鏡像倉(cāng)庫(kù)地
址(暫時(shí)沒(méi)找到修改默認(rèn)鏡像前綴的方法)。且在podman或docker里設(shè)置信任私有鏡像倉(cāng)庫(kù)的ssl證書(shū):
★podman設(shè)置信任私有鏡像倉(cāng)庫(kù)(不需要重啟podman服務(wù))
#cat>/etc/containers/registries.conf?EOF
unqualified-search-registries=["quay.io"]
short-name-mode="permissive"
[[registry]]
insecure=true
prefix="quay.io"
location="quay.io"
EOF
★如果使用docker則設(shè)置信任私有鏡像倉(cāng)庫(kù)(需要重啟docker服務(wù))
#cat>/etc/docker/daemon.json?EOF
(
"experimental":true,
"exec-opts":["native.cgroupdriver=systemd
"insecure-registries":["quay.io"]
)
EOF
#systemctldaemon-reload
#systemctlrestartdocker
#cat?/etc/hosts?EOF
#添加內(nèi)部鏡像倉(cāng)庫(kù)地址解析
46quay.io
EOF
★初始化命令
#cephadmbootstrap-mon-ip1-allow-fqdn-hostname#部署第一臺(tái)ceph節(jié)點(diǎn)(bootstrap)如果
僅需要在單機(jī)主部署ceph,則需要帶上參數(shù)-single-host-defaults如果本地鏡像倉(cāng)庫(kù)需要驗(yàn)證身份,則使用以卜.參數(shù)
-registry-url-registry-usernameuserxx-registry-passwordpasswdxx
#cephadmshell-ceph-s#創(chuàng)建容器并在容器里執(zhí)行命令,默認(rèn)只有容器里有ceph命令
#yuminstallceph-common-y#安裝ceph命令,在cephadn的軟件倉(cāng)庫(kù)里有
#cephorchhostIs#查看集群主機(jī)___________________________________________________
HOSTADDRLABELSSTATUS
1_admin
#cephversions#杳看集群版本
★安裝完成或添加新節(jié)點(diǎn)后,會(huì)自動(dòng)配置防火墻
首結(jié)點(diǎn):
servicescephceph-mon
ports:9283/tcp8443/tcp9093/tcp9094/tcp3000/tcp9100/tcp9095/tcp
新加結(jié)點(diǎn):
services:cephceph-mon
ports:443/tcp9283/tcp9100/tcp
★添加其他ceph節(jié)點(diǎn)
#其他節(jié)點(diǎn)也要添加hosts解析指向quay.io,以及配置podman/docker信任私有鏡像倉(cāng)庫(kù)
#cephcephadmget-pub-key>~/cephpub
#ssh-copy-id-f-i~/ceph.pub#復(fù)制ceph使用的公鑰到口標(biāo)主機(jī)
#ssh-copy-id-f-i~/ceph.pub
#cephorchhostadd2#主機(jī)名稱和ip要對(duì)應(yīng)得上
#cephorchhostadd3
#cephorchhostlabeladd_admin#將_2(^171小標(biāo)卷添加到指定主機(jī),任何具有_admin
標(biāo)簽的主機(jī)都將獲得/etc/ceph/ceph.conf^n/etc/ceph/ceph.client.admin.keyring文件
★修改時(shí)間差異閾值告警
#cephhealth#查看健康狀態(tài)
#cephconfiggetmonmon_clock_drift_allowed#查看時(shí)間差閾值(默認(rèn)大于0.05秒就告警)
#cephconfigsetmonmon_clock_drift_allowed0.5#設(shè)置時(shí)差閾值告警時(shí)間為0.5秒
★配置dashboard
#cephdashboardac-user-showadmin
#echo"passwdxxyy">pass.txt
#cephdashboardac-user-set-passwordacmin-ipass.txt#設(shè)置dashboard的admin賬號(hào)密碼
#cephmgrmoduleenabledashboard
#cephmgrmoduleIs#查看dashboard是否啟動(dòng)
#cephmgrservices#查看dashboard監(jiān)聽(tīng)端口,儀表板功能由mgr組件提供
"dashboard":":8443/",
"prorretheus":":9283/"
★配置full_ratio參數(shù)
#cephosdset-full-ratio0.97#設(shè)置full閾值
#cephosdset-nearfull-ratio0.80
#cephosddump|grepratio
★★配置集群網(wǎng)絡(luò)
使用cephadmbootstr叩命令的--cluster-retworkx.x.x.x/24參數(shù)在集群bootstrap階段指定cluster網(wǎng)絡(luò)
當(dāng)然,如果在bootstrap的時(shí)候沒(méi)有指定,后期也可以修改
#cephconfiggetmonpublic_network#還可查看mgr,mds等服務(wù)的相應(yīng)網(wǎng)絡(luò)
#cephconfiggetmoncluster_network
#cephconfiggetosdpublic_network
#cephconfiggetosdcluster_network
#cephconfigdump|grepnetwork#杳看所有關(guān)于網(wǎng)絡(luò)的配置
#cluster網(wǎng)名各的作用:subnettouseforclusterreplication,recoveryandheartbeats(inCIDRnotationnetwork/mask)
★ceph集群組網(wǎng)方案設(shè)計(jì):
存儲(chǔ)節(jié)點(diǎn)有4個(gè)網(wǎng)口,客戶端節(jié)點(diǎn)有2個(gè)網(wǎng)口,交換機(jī)使用分布式網(wǎng)關(guān)組網(wǎng),服務(wù)器網(wǎng)口規(guī)劃:
ethl管理前端monpublic_network/24bond42*lGbit/s
eth2數(shù)據(jù)前端osdpublic_network/24bond42*40G/100G
eth3管理后端moncluster_network/24bond42*lGbit/s
eth4數(shù)據(jù)后端osdcluster_network/24bond42*40G/100G
存儲(chǔ)public和duster網(wǎng)絡(luò)前后端分離方案,
數(shù)據(jù)前端public網(wǎng)絡(luò),40G/W0G
管理用1G以太網(wǎng),數(shù)據(jù)用40G/100G光纖
ceph存儲(chǔ)2…client
(eth2(eth2:
:eth1)緘前端publiceth1數(shù)據(jù)前端public
管理前端public管理前端public
(eth3)(eth4:
管理后端cluster數(shù)窟后端cluster,
數(shù)據(jù)后端cluste網(wǎng)絡(luò),40G/100G
管理^端duster網(wǎng)絡(luò),1G
管理前端public網(wǎng)絡(luò),1G
#設(shè)置網(wǎng)絡(luò)命令:
#cephconfigsetmonpublic_network/24#供客戶端身份驗(yàn)證及獲取集群信息用的
#cephconfigsetmoncluster_network/24
#cephconfigsetosdpublic_network/24#供客戶端訪問(wèn)數(shù)據(jù)用的
#cephconfigsetosdcluster_network/24
★第3章、高可用配置
★部署mon/mgr服務(wù)到節(jié)點(diǎn)
mon組件為必要組件,部署數(shù)量為奇數(shù)個(gè),比如1,3,5,7
mgr組件為非必要組件,如果要監(jiān)測(cè)狀態(tài)信息及使用dashboard面板,則部署,高可用建議部署2個(gè)及以上數(shù)量
#cephorchIs#查看服務(wù)組件基礎(chǔ)情況,mgr?提供dashboard功能
#cephorchapplymon,,#將mon部署到這3臺(tái)上
#cephorchapplymgr,,#將mgr部署至ij這3臺(tái)上
#cephorchIs#查看服務(wù)組件基礎(chǔ)情況
[root0cephl~]#cephorchNN1NG
NAMEPORTS1/1REFRESHEDAGEPLACEMENT
alertmanager?:9093,90943/344sago61802scount:1
ceph-exporter3/32mago61805s
crash1/12mago51866s
grafana?:30003/344sago61803scount:1
mgr3/32mago2mcephl.cof-lee.com;ceph2.cof-lee.com;ceph3.cof-lee.com
mon3/32mago5mceph1.cof-lee.com;ceph2.cof-lee.com;ceph3.cof-lee.com
node-exporter?:910062mago61803s
osd.all-avaliable-devices2mago38m
#cephorchps|grepmgr#查看mgr進(jìn)程(一個(gè)服務(wù)進(jìn)程對(duì)應(yīng)一個(gè)docker容器)
[root@cephl~]#cephorchps||grepmgr1
mgr.cephl.xmxiigcephl.co*:9283running(5h)23sago23h67IM
ir.ceph2.ixfzxmceph2.co*:8443,9283running(94s)57sago94s413M
#cephorchdaemonrestartmgr.cephl.xmxiig#重啟cephl上的mgr進(jìn)程
★添加osd
#cephosdstatus#查看0$<1狀態(tài)
#cephorchdaemonaddosd:/dev/vdb,/dev/vdc,dev/vdd#手動(dòng)添加0sd
#cephorchapplyosd-all-available-devices#將集群中所有未使用的磁盤(pán)添加進(jìn)來(lái),開(kāi)啟此功能后,集群
中的主機(jī)二插入新磁盤(pán)時(shí),會(huì)自動(dòng)將新的磁盤(pán)(干凈可用的,無(wú)分區(qū)的磁盤(pán))添加到集群中,自動(dòng)創(chuàng)建相應(yīng)osd進(jìn)程
★查看osd對(duì)應(yīng)的磁盤(pán)
#方法1,登錄dashboard查看:Cluster-*PhysicalDisks
OcephEnglish-4:⑦.??
DashboardCluster>PhysicalDisks
Clusterv
PhysicalDisks
Hosts
S|?IdentifyI
e0?10
PhysicalDtsKsTHosname■An
rtostname1g0?viceparwTyp?zAV3H3DI?WvenoorZMOMIzSIMWOSDSZ
Mondors
cephlcof-leecom/dev/sdbVMware.VMwareVirtualS20GIB
Services
cephlcof-leecom/dev/sdcVMware.VMwareVirtualS20GiB
OSDs
cephlcof-leecom**dev/sddVMware,VMwareVirtualS20GiB
Iceph2cof-leecom
Configurabon-dev/sdbVMware.VMwareVirtualS20GiB■【】
CRUSHmapceph2cof-leecom/dev/sdcVMware,VMwareVirtualS20GiB
#方法2,命令行查看:先查看目標(biāo)osd的id.以及目標(biāo)。sd在哪個(gè)節(jié)點(diǎn)上
cephosdtree
cephosddump|grep"osd\.0"|awk'{print$NF}'
147ef2bb-a717-4d0d-9be5-bf9ed23e895citosd的id
#再到目標(biāo)打點(diǎn)查看
Osd_id=147ef2bb-a717-4d0d-9be5-bf9ed23e895c
osd_vg=$(l1/s|grep${osd_id}|awk,{print$2}')
pvs|greo${osd_vg)|awk'{print$l}'
/dev/sdb#查詢結(jié)果
#方法3,命令行查看:先查看目標(biāo)osd在哪個(gè)H,點(diǎn)匕以及ceph集群id
cephosdtree
ceph-s|grepid|awk'{print$2}'
0eeaa2be-6aa5-llee-8c6d-000c2943fd34
#再到目標(biāo)節(jié)點(diǎn)操作
fsid=0eeaa2be-6aa5-llee-8c6d-000c2943fd34
lvm_map=$(ls-I/var/lib/ceph/${fsid}/osd.O/block|awk-F'{print$NF}')
Isblk|grep-Bl${lvm_map}|grepdsk|awk'{print$l}'
sdb#查詢結(jié)果
★移除osd
(1)移除正常的。sd
#cephosdtree#查看目標(biāo)osd的WEIGHT權(quán)重
#cephosdcrushreweightosd.O0才降低osd的權(quán)重為0,讓數(shù)據(jù)自動(dòng)遷移到其他osd
#cephosdsafe-to-destroyosd.O#查看。sd是否可安全移除(拔出硬盤(pán))____________________
OSD(s)0aresafetodestroywithoutreducingdatadurability.#可安全移除此osd1
#cephorchapplyosd-all-available-devices-unmanaged=true#先禁止自動(dòng)添加osd
#cephorchdaemonstoposd.O#停止目標(biāo)。sd進(jìn)程
#cephorchps|greposd\.0#確認(rèn)狀態(tài)為stopped再刪除此daemon
#cephorchdaemonrmosd.O-force#刪除daemon,會(huì)自動(dòng)清除cephauth
#cephosdrmosd.O#刪除osdmap
#cephosdcrushremoveosd.O#刪除crushmap
#cephauthIs|greposd\.0#有則刪除,沒(méi)有即可(刪除daemon后,已自動(dòng)清除cephauth)
#cephorchdevicezap/dev/sdb-force#最后清除磁盤(pán)上的Ivm信息
#拔除磁盤(pán)后,再打開(kāi)-all-available-devices
#cephorchapplyosd-all-available-devices-unmanaged=false
(2)移除故障的。sd
#cephorchps|greposd\.0。狀態(tài)為error(由于磁盤(pán)損壞或意外拔除導(dǎo)致的)
#cephorchdaemonrmosd.O-force#刪除daemon后,已自動(dòng)清除cephauth
#cephosdrmosd.O
#cephosdcrushremoveosd.O
#cephauthIs|greposd\.0#有則刪除,沒(méi)有即可(刪除daemon后,已自動(dòng)清除cephauth)
#或者將osddaemon刪除后,一次性清除osd的crushmap?cephauth,osdmap
#cephosdpurgeosd.O-yes-i-really-mean-it#——次性清除osd的crushmap,cephauth記錄,osdmap
#刪除。sd后,清理目標(biāo)磁盤(pán)數(shù)據(jù)(前提是無(wú)法通過(guò)ceph命令自動(dòng)清除,需要手動(dòng)清除)
#yuminstallpsmisc-y#提供fuser命令
#Isblk#查看Fl標(biāo)磁盤(pán)對(duì)應(yīng)的vg和M先刪除M后刪除vg
#fuser-ck/dev/ceph-41098a76-986d-4025-ba6a-8c03d676fe8d/osd-block-74fa558e-7905-4d99-b432-dee4b656245b
#Ivremove/dev/ceph-41098a76-986d-4025-ba6a-8c03d676fe8d/osd-block-74fa558e-7905-4d99-b432-dee4b656245b
#vgremoveceph-41098a76-986d-4025-ba6a-8c03d676fe8d
#ddif=/dev/zeroof=/dev/sdecount=lbs=lM#最后清除MBR分區(qū)信息,如果磁盤(pán)有保密信息,需要
做進(jìn)一步的全盤(pán)低格處理
★移除ceph節(jié)點(diǎn)
移除節(jié)點(diǎn)之前,要將mon/mgr等服務(wù)從己移除節(jié)點(diǎn)取消部署
即:cephorchapplymon/mgr后面的節(jié)點(diǎn)不含要移除的節(jié)點(diǎn)即可
①移除在線節(jié)點(diǎn):
#cephorchhostok-to-stop#先查看如果停止主機(jī),是否會(huì)影響到集群
[root@cephl~]#cephorchhostok-to-stopceph2.co
Itispresumedsafetostophostceph2.co.Notethefollowing:
Itappearssafetostopmon.ceph2
Itappearssafetostopcrash.ceph2
Itispresumedsafetostop['node-exporter.ceph2']
Itispresumedsafetostop[mgr.ceph2.jtdspj']
Itappeal'ssafetostopceph-exporter.ceph2
#cephorchhostdrain#排空主機(jī)中的所有守護(hù)進(jìn)程,打上_no_schedule標(biāo)簽
#cephorchosdrmstatus#檢查移除OSD的狀態(tài)
itcephorchps#檢查所有守護(hù)進(jìn)程是否已從主機(jī)中移除__________________
Nodaemonsreported#提示無(wú)守護(hù)進(jìn)程時(shí),才可刪除此主機(jī)
#cephorchhostrmceph2.cof-lee.corr.#刪除主機(jī)
#cephosdcrushrm#從crushmap里清除主機(jī)信息
#cephosdcrushrmceph2#從crushmap里活除主機(jī)信息
②移除離線節(jié)點(diǎn):
#cephorchhostrm-offline--force
#cephosdcrushrm
#cephosdcrushrmceph2
★ceph節(jié)點(diǎn)進(jìn)入維護(hù)模式
#cephorchhostok-to-stop#先查石如果停止主機(jī),是否會(huì)影響到集群
#cephorchhostmaintenanceenter#進(jìn)入維護(hù)模式,停止節(jié)點(diǎn)上的所有服務(wù)
#cephorchhostmaintenanceexit#退出維護(hù)模式
★查看集群存儲(chǔ)信息
#ceph-s#查喬集群存儲(chǔ)狀態(tài)信息(含集群id,即fsid)
cluster:
id:0eeaa2be-6aa5-llee-8c6d-000c2943fd34#fsid
#cephhealth#查看集群健康狀態(tài)
#cephdfdetail#查看存儲(chǔ)情況
|[root@cepnl~]#cephdfdetail
---RAWSTORAGE---
CLASSSIZEAVAILUSEDRAWUSED%RAWUSED
hdd214GIB214GiB204MiB204MiB0.09
ssd12GIB12GiB7.9MiB7.9MiB0.06
TOTAL225GIB226GiB211MiB211MiB0.09
---POOLS---
POOLIDPGSSTORED(DATA)(OMAP)OBJECTSUSED(DATA)(OMAP)%USEDMAXAVAILQUOTAOBJECTS
l.mqr11449KiB449KiB0B2449KiB449KiBeBe71GiBN/A
#cephorchdeviceIs#查看某群磁盤(pán)信息:AVAILABLE列顯示NO表示磁盤(pán)已被使用
[root^cephl**]#cephorchdeviceIs
HOSTPATHTYPEDEVICEIDSIZEAVAILABLEREFRESHEDREJECTREASONS
cephl.cof-lee.com/dev/sdbhdd21.4GNo11magoInsufficientspace(<10extents)onvgsyLVMdetected,locked
cephl.cof-lee.com/dev/sdchdd21.4GNo11magoInsufficientspace(<10extents)onvgsyLVMdetected,locked
ephl,cof?leR,Com/dev/sddhdd21.4GNo11mdqoInsufficientspace(<1。extents)onvqs,LVMdetected,locked
#cephorchPS#查看所有節(jié)點(diǎn)的進(jìn)程
#cephorchps#查看指定直點(diǎn)的進(jìn)程
#cephorchdaemonosd.3restart#重片指定進(jìn)程容器
國(guó)開(kāi)啟集群自動(dòng)擴(kuò)展功能
默認(rèn)是開(kāi)啟的,如果登錄dashboard時(shí)不小心關(guān)閉了,需要手動(dòng)打開(kāi),命令如下:
cephorchapplyalertmanager-unmcnaged=false
cephorchapplyceph-exporter-unmanaged=false
cephorchapplycrash--unmanaged=false
cephorchapplygrafana-unmanaged=false
cephorchapplymgr-unmanaged=false
cephorchapplymon-unmanaged=false
cephorchapplynode-exporter-unmanaged=false
cephorchapplyprometheus-unrranaged=false
★第4章、pool存儲(chǔ)池操作
★磁盤(pán)class操作
磁盤(pán)class就是磁盤(pán)的分類(lèi),具有相同屬性的磁盤(pán)分到同一類(lèi),默認(rèn)自動(dòng)根據(jù)ssd,hdd等介質(zhì)來(lái)分類(lèi),也可自主分類(lèi)
#cephosdcrushclassIs#查在磁盤(pán)class
"hdd",
"ssd"
#cephosdcrushget-device-classosd.l#查看目標(biāo)磁盤(pán)的class
hdd
#cephosdcrushrm-device-classosd.ltclass
#cephosdcrushset-device-classssd_type2osd.l#更改磁盤(pán)的class,class名稱可自定義
#cephosdcrushclassIs
"hdd".
"ssd",
"ssd_type2"#可見(jiàn)多了這個(gè)門(mén)定義的磁盤(pán)class
#cephosdtree#查看所有磁盤(pán)class
[root@cephl~]#cephosdtree
IDCLASSWEIGHTTYPENAMESTATUSREWEIGHTPRI-AFF
-10.16267rootdefault
-50.05846hostcephl
2hdd0.01949osd.2up1.006001.00000
4hdd0.01949osd.4up1.000001.00000
6hdd0.01949osd.6up1.00600i.oeoeo
-70.05356hostceph2
3hdd0.01949osd.3叩1.000001.00000
5hdd0.01459osd.5叩1.000001.00000
1ssd_type20.01949
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026屆河北省灤縣實(shí)驗(yàn)中學(xué)生物高三第一學(xué)期期末經(jīng)典試題含解析
- 內(nèi)科科普講座
- 彩鋼瓦頂棚施工方案(3篇)
- 田徑館管理制度范文(3篇)
- 移動(dòng)生物安全室管理制度(3篇)
- 紡織助劑樣品閉環(huán)管理制度(3篇)
- 蔬菜制品分裝管理制度(3篇)
- 退役軍人之家管理制度(3篇)
- 鉆井隊(duì)考勤管理制度(3篇)
- 納米技術(shù)與微機(jī)械
- 鉗工個(gè)人實(shí)習(xí)總結(jié)
- 大健康養(yǎng)肝護(hù)肝針專題課件
- 物流公司托板管理制度
- 道路高程測(cè)量成果記錄表-自動(dòng)計(jì)算
- 關(guān)于醫(yī)院“十五五”發(fā)展規(guī)劃(2026-2030)
- DB31-T 1587-2025 城市軌道交通智能化運(yùn)營(yíng)技術(shù)規(guī)范
- 醫(yī)療護(hù)理操作評(píng)分細(xì)則
- 自考-經(jīng)濟(jì)思想史知識(shí)點(diǎn)大全
- 冬季駕駛車(chē)輛安全培訓(xùn)
- 醫(yī)學(xué)師承出師考核申請(qǐng)表
- 晚期癌癥疼痛控制課件
評(píng)論
0/150
提交評(píng)論