您好,登錄后才能下訂單哦!
CEPH分布式文件系統(tǒng)
CEPH是一種為優(yōu)秀的性能,可靠性和可擴(kuò)展性而設(shè)計(jì)的統(tǒng)一的,分布式文件系統(tǒng)。
CEPH可以輕松的擴(kuò)展到數(shù)PB容量,支持多種工作負(fù)載的高性能,高可靠性。
CEPH四個(gè)部分:
Clients客戶端:用來(lái)訪問(wèn)文件系統(tǒng)
CMDS元數(shù)據(jù)服務(wù)器:用來(lái)緩存和同步數(shù)據(jù)
COSD對(duì)象存儲(chǔ)群集:用來(lái)構(gòu)成存儲(chǔ)池
CMON集群監(jiān)視器:用來(lái)監(jiān)視文件系統(tǒng)
CEPH是統(tǒng)一存儲(chǔ)系統(tǒng),支持三種接口:
Object:有原生的API,同時(shí)也兼容swift和S3的API。
Block:支持精簡(jiǎn)配置,快照,克隆。
File:Posixi接口,支持快照。
CEPH的特點(diǎn):
高擴(kuò)展性:使用普通的X86服務(wù)器,支持10~1000臺(tái)服務(wù)器,支持1TB到PB級(jí)別的擴(kuò)展。
高可靠性:沒(méi)有單點(diǎn)故障,多數(shù)據(jù)副本,自動(dòng)管理,自動(dòng)修復(fù)。
高性能:數(shù)據(jù)分布均衡,并行化度高。
CEPH分布式文件系統(tǒng)架構(gòu):
歸置組(PG):可以理解為一個(gè)組,這個(gè)組里可以有多少個(gè)對(duì)象(文件數(shù)),歸置組建立在存儲(chǔ)池中。
存儲(chǔ)池(POOL):由多個(gè)OSD組成。
術(shù)語(yǔ):
OSD:存儲(chǔ)對(duì)象 | MON 監(jiān)視器 | NODE:節(jié)點(diǎn) | MDS:元數(shù)據(jù)服務(wù)器 |
CEPH安裝與部署(網(wǎng)YUM版):需要聯(lián)網(wǎng)部署
v 環(huán)境需求:關(guān)閉防火墻,關(guān)閉SElinux,時(shí)間同步,修改主機(jī)名,修改HOSTS文件,SSH的支持,創(chuàng)建運(yùn)行用戶。
# systemctl stop firewalld #關(guān)閉防火墻
# setenforce 0 #關(guān)閉SELinux
# vi /etc/hosts #修改HOSTS文件
添加內(nèi)容:
1.1.1.19 admin-node
1.1.1.20 node1
1.1.1.21 node2
# vi /etc/sysconfig/network #修改主機(jī)名
添加內(nèi)容:
NETWORKING=yes
HOSTNAME=admin-node
# hostname admin-node #臨時(shí)修改主機(jī)名
# yum -y install ntp ntpdate #部署NTP時(shí)間同步
# /etc/ntp.conf #使用自身時(shí)間搭建NTP服務(wù)器
添加內(nèi)容:
server 127.127.1.0
fudge 127.127.1.0 stratum 8
# systemctl restart ntpd #重啟NTP服務(wù)器
# ntpdate 1.1.1.19 #去NTP服務(wù)器同步時(shí)間
# timedatectl #查看時(shí)間
# useradd ceph
# echo 123 | passwd ceph --stdin #創(chuàng)建運(yùn)行用戶
# ssh-keygen -t rsa -P "" -f ~/.ssh/id_rsa #創(chuàng)建密鑰對(duì)
# ssh-copy-id -i /root/ceph/.ssh/id_rsa.pub root@node1 #將公鑰上傳到node1
# ssh-copy-id -i /root/ceph/.ssh/id_rsa.pub root@node1 #將公鑰上傳到node2
# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys #導(dǎo)入公鑰庫(kù)
v 安裝CEPH群集需求:每臺(tái)服務(wù)器上都要部署YUM庫(kù),Deploy工具,EPEL源(需網(wǎng)絡(luò))
# mv CentOS-Base.repo /etc/yum.repos.d/ #將CenOS7默認(rèn)備份YUM庫(kù)還原
# mv ceph.repo /etc/yum.repos.d/ #將CEPH的REPO文件放置YUM庫(kù)
# yum makecache #生成緩存
# yum -y install epel-release #安裝EPEL源
# yum -y install ceph-deploy #安裝CEPH-Deploy工具
# ceph-deploy new node1 #配置一個(gè)Mon(監(jiān)視器)節(jié)點(diǎn)
注:會(huì)在所在位置生成三個(gè)配置文件。
#vi ceph.conf
osd_pool_default_size = 2 #修改OSD存儲(chǔ)池默認(rèn)副本數(shù)
注:如果有多張網(wǎng)卡還可以增加:public network = {ip-address}/{netmask}參數(shù)
# ceph-deploy install admin-node node1 node2 #安裝CEPH到三個(gè)節(jié)點(diǎn)上
ceph-deploy purgedata admin-node node1 node2 | 安裝出現(xiàn)問(wèn)題可以使用這兩條命令清空配置重新部署和安裝 |
ceph-deploy forgetkeys |
v 初始化Mon監(jiān)視器,并收集所有密鑰
# ceph-deploy mon create-initial
v 創(chuàng)建硬盤(OSD)掛載目錄
# ssh node1
# mkdir /var/local/osd0
# ssh node2
# mkdir /var/local/osd1
v 添加OSD和管理激活OSD
# ceph-deploy osd prepare node1:/var/local/osd0 node2:/var/local/osd1
# ceph-deploy osd activate node1:/var/local/osd0 node2:/var/local/osd1
v 創(chuàng)建管理用戶
# ceph-deploy admin admin-node node1 node2
# chmod +r /etc/ceph/ceph.client.admin.keyring #確保keyring文件有讀取權(quán)限
v 檢查群集健康狀況(部署完成)
# ceph health
v 通過(guò)SYSVINIT機(jī)制啟動(dòng)CEPH所有守護(hù)進(jìn)程
# /etc/init.d/ceph -a start
注:SYSVINIT:字面意思是利用系統(tǒng)進(jìn)程的方式運(yùn)行。
v 創(chuàng)建CephFS文件系統(tǒng):
# ceph osd pool create pool1 100 100 #默認(rèn)需要新建兩個(gè)存儲(chǔ)池
# ceph osd pool create pool2 100 100
# ceph fs new ren pool1 pool2 #兩個(gè)存儲(chǔ)池組成一個(gè)文件系統(tǒng)
# ceph mds stat
v 掛載CephFS文件系統(tǒng)
# ceph auth list #查看認(rèn)證密碼列表
# mount -t ceph -o name=admin,secret="AQBs2U9Y54/vKRAAgPZxOf6lmbl522mkiJvXRA==" 1.1.1.20:6789:/ /opt #密碼認(rèn)證方式掛載CephFS文件系統(tǒng)
安裝報(bào)錯(cuò):
故障一:找不到EPEL源 解決方法:安裝EPEL源# yum -y install epel-release(每臺(tái))
故障二:找不到CEPH安裝包 解決方法:YUM庫(kù)中寫入CEPH安裝包網(wǎng)YUM源路徑
故障三:查看版本命令未找到 解決方法:手動(dòng)安裝CEPH:yum -y install ceph ceph-radosgw(每臺(tái))或者檢查SSH的問(wèn)題
CEPH分布式文件系統(tǒng)操作整合
命令 | 描述 |
ceph health | 查看群集健康狀態(tài) |
ceph status | 查看狀態(tài) |
ceph osd stat | 查看OSD狀態(tài) |
ceph osd dump | 查看OSD屬性 |
ceph osd tree | 查看OSD樹 |
ceph mon dump | 查看MON屬性 |
ceph quorum_status | 查看配額狀態(tài) |
ceph mds stat | 查看MDS狀態(tài) |
ceph mds dump | 查看MDS轉(zhuǎn)存 |
ceph osd lspools | 查看已存在的存儲(chǔ)池 |
ceph osd pool get pool1 pg_num | 查看池歸置組屬性 |
ceph osd pool get pool1 pgp_num | 查看池歸置組總數(shù) |
ceph osd pool create pool1 100 100 | 創(chuàng)建一個(gè)存儲(chǔ)池 |
ceph osd pool delete pool1 pool1 --yes-i-really-really-mean-it | 刪除一個(gè)存儲(chǔ)池 |
ceph osd pool rename pool1 pool2 | 重命名一個(gè)存儲(chǔ)池 |
rados df | 查看存儲(chǔ)池統(tǒng)計(jì)信息 |
ceph osd pool mksnap pool1 poolkz1 | 存儲(chǔ)池快照 |
ceph osd pool rmsnap pool1 poolkz1 | 刪除存儲(chǔ)池快照 |
ceph osd pool set pool1 size 2 | 設(shè)置對(duì)象副本數(shù) |
ceph fs new ren pool1 pool2 | 創(chuàng)建CephFS文件系統(tǒng) |
注:pg:歸置組 pgp:歸置組總數(shù)
添加和刪除OSD節(jié)點(diǎn)(OSD為存儲(chǔ)對(duì)象) | |
ceph-deploy osd prepare node1:/var/local/osd2 | 添加OSD |
ceph-deploy osd activate node1:/var/local/osd2 | 激活OSD |
ceph -w | 查看OSD狀態(tài) |
Ceph osd tree | 查看OSD樹 |
Ceph osd out osd.0 | 凍結(jié)將要移除的節(jié)點(diǎn) |
Ceph stop osd.0 | 停止將要移除的節(jié)點(diǎn)進(jìn)程 |
Ceph osd crush remove osd.0 | 從群集里移除節(jié)點(diǎn)信息 |
Ceph osd rm 0 | 移除節(jié)點(diǎn) |
添加元數(shù)據(jù)服務(wù)器(MDS) | |
ceph-deploy mds create node1 | 添加MDS |
注:至少需要一個(gè)元數(shù)據(jù)服務(wù)器才能使用CephFS。
添加和刪除監(jiān)視器(MON) | |
ceph-deploy mon add node2 | 添加MON |
ceph quorum_status --format json-pretty | 檢查法定人數(shù)狀態(tài) |
ceph -a stop mon.0 | 停止監(jiān)視器進(jìn)程 |
ceph mon remove mon.0 | 移除監(jiān)視器 |
ssh node1 ceph stop mon || stop ceph-mon-all | 遠(yuǎn)程連接監(jiān)視器,停止有關(guān)監(jiān)視器的所有進(jìn)程 |
添加對(duì)象網(wǎng)關(guān)(RGW) | |
ceph-deploy rgw create node1 | 添加RGW |
注:RGW默認(rèn)監(jiān)聽7480端口。有關(guān)對(duì)象網(wǎng)關(guān)的使用請(qǐng)繼續(xù)了解CEPH分布式文件系統(tǒng)。
CEPH對(duì)象網(wǎng)關(guān)的使用:http://docs.ceph.org.cn/install/install-ceph-gateway/
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。