成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

分布式文件系統(tǒng)Ceph

DobbyKim / 2418人閱讀

摘要:特別是討論了算法的基本理后,就更容易理解分布式文件系統(tǒng)中各種角色的工作原理。接下來(lái)我們使用工具在將要參與分布式文件系統(tǒng)的各個(gè)節(jié)點(diǎn)上,安裝軟件。注意,為了保證節(jié)點(diǎn)故障的情況下,整個(gè)分布式文件系統(tǒng)依然可以穩(wěn)定工作,我們必須設(shè)置多個(gè)角色。

  1. 概述

  從本篇文章開(kāi)始介紹一款現(xiàn)在非?;鸬姆植际轿募到y(tǒng)Ceph,包括這款文件系統(tǒng)的安裝、基本使用場(chǎng)景、常用管理命令和重要工作原理。特別是討論了PaxOS算法的基本理后,就更容易理解Ceph分布式文件系統(tǒng)中各種角色的工作原理。

  2. Ceph的安裝部署

  本文將介紹Ceph分布式文件系統(tǒng)如何在CentOS 7.X版本上一步一步完成安裝,使讀者在閱讀過(guò)程中了解Ceph有哪些重要的子系統(tǒng)/工作模塊,以及它們是如何關(guān)聯(lián)工作的。請(qǐng)注意Ceph在Ubuntu等Linux操作系統(tǒng)上的安裝過(guò)程和注意點(diǎn)大致相同,但如果讀者和筆者同樣選擇在CentOS上安裝Ceph,那么就請(qǐng)使用CentOS 7.X的版本,因?yàn)檫@個(gè)版本是Ceph官方介紹中推薦的,更重要的是CentOS 6.X已經(jīng)不受支持了。

  2-1. 準(zhǔn)備工作

  本文的演示中我們將按照以下表格安裝一個(gè)三節(jié)點(diǎn)的Ceph分布式文件系統(tǒng),并綁定一個(gè)文件系統(tǒng)的客戶端進(jìn)行文件讀寫操作。

節(jié)點(diǎn) IP地址 角色說(shuō)明
vmnode1 172.16.71.182 MDN、MDS、OSD
vmnode2 172.16.71.183 MDN、MDS、OSD
vmnode3 172.16.71.184 MDN、MDS、OSD
client 172.16.71.1 Client

  以上表格中的角色縮寫如果目前看不懂也無(wú)所謂,在后續(xù)的安裝介紹中我們將說(shuō)明這些功能角色的作用。Ceph的安裝準(zhǔn)備工作相對(duì)而言有一些繁瑣,如果每一個(gè)節(jié)點(diǎn)都是全新的操作系統(tǒng),那么這些節(jié)點(diǎn)至少需要經(jīng)過(guò)創(chuàng)建用戶、設(shè)置用戶無(wú)密碼登錄權(quán)限、變更Ceph下載倉(cāng)庫(kù)、更新軟件倉(cāng)庫(kù)等工作才能完成準(zhǔn)備動(dòng)作。其過(guò)程中往往會(huì)出現(xiàn)一些錯(cuò)誤,需要在安裝過(guò)程中耐心解決,下面我們就開(kāi)始Ceph安裝前的準(zhǔn)備工作。

  2-1-1. 關(guān)于用戶

  無(wú)論是測(cè)試環(huán)境還是正式環(huán)境,安裝Ceph都不建議使用root賬號(hào)。所以第一步我們需要專門創(chuàng)建一個(gè)用戶和用戶組,并為這個(gè)用戶給定管理員權(quán)限。我們創(chuàng)建一個(gè)用戶組ceph和一個(gè)專門用來(lái)運(yùn)行Ceph各個(gè)模塊的用戶,用戶名也叫做ceph

  [......]# groupadd ceph

  [......]# useradd ceph -g ceph

  [......]# passwd ceph

  // 修改成你想要的密碼

  ......123456123456

  記得為用戶設(shè)置root權(quán)限,既是在sudoers文件中加入相關(guān)配置信息:

  [......]# vim /etc/sudoers

  // 加入ceph的sudo權(quán)限

  ......

  root ALL=(ALL) ALL

  ceph ALL=(ALL) NOPASSWD:ALL

  ......12345671234567

  參與Ceph構(gòu)建的每個(gè)節(jié)點(diǎn)都要設(shè)置相同的用戶信息,并且設(shè)置該用戶在各個(gè)節(jié)點(diǎn)間的無(wú)密碼登錄功能——這是因?yàn)楹竺鍯eph-deploy的工作過(guò)程中,將登錄到各個(gè)節(jié)點(diǎn)上執(zhí)行命令。

  [ceph@vmnode1 ~]$ ssh-keygen

  // 操作系統(tǒng)會(huì)出現(xiàn)一些提示,回車就行了

  [ceph@vmnode1 ~]$ cd ~/.ssh/

  [ceph@vmnode1 .ssh]$ cat ./id_rsa.pub >> ./authorized_keys

  // 一定要更改authorized_keys的訪問(wèn)權(quán)限,不然無(wú)密碼登錄要失敗

  [ceph@vmnode1 ~]$ chmod 600 ./authorized_keys

  // 將authorized_keys copy到你將要登錄的操作系統(tǒng)上,注意用戶的home目錄要做對(duì)應(yīng)12345671234567

  關(guān)于無(wú)密碼登錄的設(shè)置過(guò)程就不再深入講解了,因?yàn)槭呛芑镜膕sh設(shè)置。主要原則就是保證authorized_keys文件的公鑰記錄信息和這個(gè)文件在幾個(gè)節(jié)點(diǎn)間的一致性。如果后續(xù)有新的節(jié)點(diǎn)加入到Ceph集群中,并且也要承擔(dān)MDS Follower角色的工作,則同樣要設(shè)置這個(gè)新節(jié)點(diǎn)到各個(gè)節(jié)點(diǎn)的相互無(wú)密碼登錄功能。

  2-1-2. 關(guān)于Ceph源和擴(kuò)展組件

  Ceph官網(wǎng)的下載速度奇慢,這實(shí)際上不怪Ceph,原因大家也都懂,呵呵。一個(gè)辦法是設(shè)置國(guó)外的代理服務(wù),有免費(fèi)的,不過(guò)好用的還是付費(fèi)的。另一個(gè)好消息是,Ceph有國(guó)內(nèi)鏡像,例如163的和aliyun的。根據(jù)筆者觀察163的鏡像同步要比aliyun的鏡像同步及時(shí),比如163的鏡像中已經(jīng)有rpm-hammer/ceph-deploy-1.5.37的下載,但是aliyun的鏡像中最高版本只有ceph-deploy-1.5.36。通過(guò)以下環(huán)境變量的設(shè)置就可以使用國(guó)內(nèi)的鏡像(這個(gè)過(guò)程不會(huì)影響后續(xù)的任何安裝步驟):

  # 你也可以改成國(guó)內(nèi)其它Ceph鏡像

  export CEPH_DEPLOY_REPO_URL

  export CEPH_DEPLOY_GPG_URL

  另外Ceph的安裝過(guò)程還需要相當(dāng)?shù)牡谌浇M件依賴,其中一些第三方組件在CentOS yum.repo Base等官方源中是沒(méi)有的(例如LevelDB),所以讀者在安裝過(guò)程中會(huì)有一定的幾率遇到各種依賴關(guān)系異常,并要求先行安裝XXX第三方組件的提示(例如提示先安裝liblevel.so)。雖然我們后文將會(huì)介紹的Ceph輔助部署工具,Ceph-deploy的工作本質(zhì)還是通過(guò)yum命令去安裝管理組件,但是既然CentOS yum.repo Base官方源中并沒(méi)有某些需要依賴的第三方組件,所以一旦遇到類似的組件依賴問(wèn)題安裝過(guò)程就沒(méi)法自動(dòng)繼續(xù)了。解決這個(gè)問(wèn)題,本示例中建議引入CentOS的第三方擴(kuò)展源Epel。

  # 關(guān)于Epel 擴(kuò)展源的引入這里不過(guò)做介紹了,網(wǎng)絡(luò)上的資料一大把。這里給出一個(gè)“目前可用”(不保證多年后依然可用)的安裝地址,以及安裝后生成的repo配置片段(本示例中的第三方擴(kuò)展源匹配CentOS 7.X操作系統(tǒng))。

  http://dl.fedoraproject.org/p...

  # repo文件的名字叫做epel.repo

  [epel]

  name=Extra Packages for Enterprise Linux 7 - $basearch

  #baseurl$basearch

  mirrorlist=epel-7&arch=$basearch

  failovermethod=priority

  enabled=1

  gpgcheck=0

  gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-7

  ......123456789101112131415123456789101112131415

  為了保證擴(kuò)展源中的組件與CentOS官方源中的組件不沖突,可以調(diào)低擴(kuò)展源的優(yōu)先級(jí)。當(dāng)然讀者也可以自行手動(dòng)解決Ceph安裝過(guò)程提示的組件依賴問(wèn)題——使用rpm命令的方式。筆者試過(guò),深刻的體會(huì)到什么叫生不如死。。。

  設(shè)置倉(cāng)庫(kù)后,需要更新倉(cāng)庫(kù)緩存,如下:

  [......]$ yum makecache

  [......]$ yum update1212

  2-1-3. 關(guān)于物理磁盤

  Ceph是一種分布式文件系統(tǒng),既然是文件系統(tǒng),那么無(wú)論它的上層如何設(shè)計(jì)如何劃分,始終需要對(duì)數(shù)據(jù)持久化存儲(chǔ)進(jìn)行落地。所以Ceph需要操作塊存儲(chǔ)設(shè)備(關(guān)于塊存儲(chǔ)的相關(guān)介紹,可以參看本專題最初的幾篇文章),Ceph要求塊存儲(chǔ)設(shè)備的文件系統(tǒng)必須為XFS、BTRFS或者EXT4,且必須在操作系統(tǒng)上有獨(dú)立掛載點(diǎn)。

  2-2. 正式安裝

  Ceph的安裝有兩種方式,第一種是使用Ceph官方提供的Ceph-deploy(部署工具)進(jìn)行安裝,這種方式我們需要首先yum Ceph-deploy,然后再使用Ceph-deploy提供的各種命令來(lái)安裝Ceph的各個(gè)節(jié)點(diǎn),但好處也很明顯——Ceph的安裝過(guò)程基本上是半自動(dòng)化的,除了一些操作系統(tǒng)層面的問(wèn)題需要解決外(例如用戶對(duì)某個(gè)目錄的讀寫權(quán)限設(shè)定錯(cuò)誤,再例如防火墻的端口沒(méi)有打開(kāi)等等)整個(gè)過(guò)程還算比較順利。另外一種是全人工安裝,除非你的操作系統(tǒng)存在特殊應(yīng)用場(chǎng)景,或者有需要特別保護(hù)的組件需要進(jìn)行獨(dú)立設(shè)定,否則還是建議使用前一種Ceph-deploy的方式。

  2-2-1. 安裝Ceph-Deploy和Ceph軟件本身

  首先安裝ceph-deploy軟件本省。請(qǐng)注意這個(gè)軟件并不是ceph工作的一部分,它只一個(gè)增加簡(jiǎn)便性的工具。

  ......

  [......]$ yum -y install ceph-deploy

  // NTP時(shí)鐘同步服務(wù)

  [......]$ yum install -y ntp ntpdate ntp-doc

  //使用一個(gè)亞洲公用時(shí)間同步節(jié)點(diǎn)進(jìn)行時(shí)間同步

  [......]$ ntpdate 0.asia.pool.ntp.org

  ......12345671234567

  只需要在某個(gè)節(jié)點(diǎn)上安裝ceph-deploy就行,但是NTP服務(wù)是每一個(gè)節(jié)點(diǎn)都要安裝和進(jìn)行同步,它主要是保證各節(jié)點(diǎn)的物理時(shí)鐘同步。接下來(lái)我們使用ceph-deploy工具在將要參與Ceph分布式文件系統(tǒng)的各個(gè)節(jié)點(diǎn)上,安裝Ceph軟件。注意,只是安裝軟件,并不是說(shuō)完成后就可以讓這些節(jié)點(diǎn)承擔(dān)相應(yīng)的工作職責(zé)了。以下命令只需要在安裝了ceph-deploy的節(jié)點(diǎn)上執(zhí)行就行了,ceph-deploy會(huì)幫助技術(shù)人員在指定的各個(gè)節(jié)點(diǎn)上使用yum命令安裝ceph軟件。接著使用以下命令在以上各個(gè)節(jié)點(diǎn)上正式安裝Ceph軟件:

  [ceph@vmnode1 ~]$ ceph-deploy install vmnode1 vmnode2 vmnode3

  // 命令格式為:

  ceph-deploy install {ceph-node}[{ceph-node} ...]123123

  安裝Ceph軟件的過(guò)程中,有一定概率會(huì)出現(xiàn)各種警告信息。警告信息有的是可以忽略的,有的則是必須進(jìn)行處理的。這些問(wèn)題一般分為幾類:鏡像源和下載問(wèn)題,依賴問(wèn)題,權(quán)限問(wèn)題。如何來(lái)處理這些問(wèn)題,除了需要具備一定的玩轉(zhuǎn)Linux系統(tǒng)的經(jīng)驗(yàn)外,主要還是細(xì)心,切忌急躁。

  2-2-2. 安裝Ceph Monitor

  MON是Monitor的簡(jiǎn)稱,字面意義為監(jiān)控、監(jiān)視。是的,它的作用是監(jiān)控、管理和協(xié)調(diào)整個(gè)分布式系統(tǒng)環(huán)境中其它各個(gè)OSD/PG、Client、MDS角色的工作,保證整個(gè)分布環(huán)境中的數(shù)據(jù)一致性。注意,為了保證節(jié)點(diǎn)故障的情況下,整個(gè)Ceph分布式文件系統(tǒng)依然可以穩(wěn)定工作,我們必須設(shè)置多個(gè)MON角色。例如在本示例中,就設(shè)置參與Ceph分布式系統(tǒng)的三個(gè)節(jié)點(diǎn)上,都安裝MON角色:

  // 改名了意味新的MON節(jié)點(diǎn)

  [ceph@vmnode1 ~]$ ceph-deploy new vmnode1 vmnode2 vmnode3

  // 命令格式為:

  ceph-deploy new {initial-monitor-node(s)}12341234

  以上命令運(yùn)行后,ceph-deploy工具會(huì)在本節(jié)點(diǎn)生成一些文件,包括:

  ceph.conf

  ceph.log

  ceph.mon.keyring123123

  最重要的文件當(dāng)然就是ceph.conf文件了(實(shí)際上ceph.mon.keyring也很重要),觀察這個(gè)文件內(nèi)容:

  [ceph@vmnode1 ~]$ cat ./ceph.conf

  [global]

  fsid = 50c157eb-6d74-4d7d-b8e8-959a7b855b55

  mon_initial_members = vmnode1, vmnode2, vmnode3

  mon_host = 172.16.71.182,172.16.71.183,172.16.71.184

  auth_cluster_required = cephx

  auth_service_required = cephx

  auth_client_required = cephx1234567812345678

  可以看到ceph.conf文件中已經(jīng)設(shè)置好了我們將要運(yùn)行MON角色的三個(gè)節(jié)點(diǎn)信息。接下來(lái)我們還需要在ceph.conf文件中增加一些信息,如下(后文還會(huì)詳細(xì)講解ceph中的重要參數(shù)):

  [ceph@vmnode1 ~]$ vim ./ceph.conf

  ......

  # 后續(xù)的文章會(huì)詳細(xì)講解ceph中重要的配置項(xiàng)

  osd pool default size = 2

  osd pool default min size = 2

  max open files = 655350

  cephx cluster require signatures = false

  cephx service require signatures = false

  ......123456789123456789

  接著使用以下命令,就可以在conf文件中已配置的MON節(jié)點(diǎn)上啟動(dòng)MON服務(wù)了(前提是,這些節(jié)點(diǎn)已經(jīng)成功安裝了Ceph軟件):

  # 開(kāi)始初始化運(yùn)行mon節(jié)點(diǎn)。

  [ceph@vmnode1 ~]$ceph-deploy mon create-initial

  # 如果需要指定一些自定義的配置參數(shù),可以采用如下格式(命令有詳細(xì)的幫助信息)來(lái)啟動(dòng)

  [ceph@vmnode1 ~]$ceph-deploy --overwrite-conf --cluster ceph mon create-initial12341234

  每一個(gè)Ceph分布式系統(tǒng)都會(huì)有一個(gè)名字,如果在創(chuàng)建MON時(shí)不給定這個(gè)名字就會(huì)默認(rèn)為“ceph”。完成以上步驟后,ceph-deploy工具會(huì)在當(dāng)前運(yùn)行命令的目錄下生成幾個(gè)文件,這些文件都非常重要,請(qǐng)不要擅自改動(dòng)。在隨后的安裝過(guò)程中ceph-deploy工具將按需將這些文件復(fù)制到對(duì)應(yīng)角色的對(duì)應(yīng)目錄中去。

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/111879.html

相關(guān)文章

  • 史上最全的Ceph構(gòu)件及組件分析

    摘要:層確保數(shù)據(jù)一致性和可靠性。元數(shù)據(jù)服務(wù)器,跟蹤文件層次結(jié)構(gòu)并存儲(chǔ)只供使用的元數(shù)據(jù)。這些文件系統(tǒng)擴(kuò)展屬性能夠?yàn)槭刈o(hù)進(jìn)程提供內(nèi)部對(duì)象的狀態(tài)快照元數(shù)據(jù)和等信息這有助于數(shù)據(jù)管理。啟迪云-高級(jí)開(kāi)發(fā)工程師 ?侯玉彬前言前文回顧:《開(kāi)源社區(qū)的明星項(xiàng)目—Ceph談》上一次簡(jiǎn)單的介紹Ceph的過(guò)去和未來(lái)的發(fā)展。這一節(jié)將詳細(xì)介紹Ceph的構(gòu)件以及組件。Ceph存儲(chǔ)架構(gòu)Ceph 存儲(chǔ)集群由幾個(gè)不同的daemon組成...

    oujie 評(píng)論0 收藏0
  • 技術(shù)棧:史上最全的Ceph構(gòu)件及組件分析

    摘要:層確保數(shù)據(jù)一致性和可靠性。保證集群的相關(guān)組件在同一時(shí)刻能夠達(dá)成一致,相當(dāng)于集群的領(lǐng)導(dǎo)層,負(fù)責(zé)收集更新和發(fā)布集群信息。元數(shù)據(jù)服務(wù)器,跟蹤文件層次結(jié)構(gòu)并存儲(chǔ)只供使用的元數(shù)據(jù)。啟迪云-高級(jí)開(kāi)發(fā)工程師 ?侯玉彬前言上一次簡(jiǎn)單的介紹Ceph的過(guò)去和未來(lái)的發(fā)展。這一節(jié)將詳細(xì)介紹Ceph的構(gòu)件以及組件。Ceph存儲(chǔ)架構(gòu)Ceph 存儲(chǔ)集群由幾個(gè)不同的daemon組成,每個(gè)daemon負(fù)責(zé)Ceph 的一個(gè)獨(dú)特...

    big_cat 評(píng)論0 收藏0
  • Ceph v12.2 Luminous基于ubuntu16.04集群部署

    摘要:第一次接觸集群,感謝官方的指導(dǎo)文檔和許多網(wǎng)友提供的教程,糊糊涂涂算是把集群部署起來(lái)了。應(yīng)該為每個(gè)運(yùn)行的機(jī)器添加一個(gè),否則集群處于狀態(tài)。至此的集群搭建算是完成了,下一步會(huì)進(jìn)行塊設(shè)備的搭建。參考分布式存儲(chǔ)部署手冊(cè)如何在中安裝存儲(chǔ)集群部署版 第一次接觸ceph集群,感謝官方的指導(dǎo)文檔和許多網(wǎng)友提供的教程,糊糊涂涂算是把集群部署起來(lái)了。由于Luminous12.2剛發(fā)布不久,部署起來(lái)跟舊版本還...

    MiracleWong 評(píng)論0 收藏0
  • 使用Rook+Ceph在Kubernetes上作持久存儲(chǔ)

    摘要:充當(dāng)在的業(yè)務(wù)流程層,將和流程部署為副本集。來(lái)自的文件將存儲(chǔ)軟件轉(zhuǎn)變?yōu)樽晕夜芾碜晕覕U(kuò)展和自我修復(fù)的存儲(chǔ)服務(wù)。由于請(qǐng)求使用文件系統(tǒng)格式化的卷,因此我需要在所有節(jié)點(diǎn)上安裝工具。如果沒(méi)有指定特定的存儲(chǔ)類,我安裝的任何應(yīng)用程序都將使用進(jìn)行數(shù)據(jù)存儲(chǔ)。 作者:Earl C. Ruby III showImg(https://segmentfault.com/img/bVbljHL?w=300&h=1...

    kuangcaibao 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<