DRBD配置参数
?
| 用戶手冊(cè): http://www.drbd.org/users-guide 語法及詳解參數(shù): http://www.drbd.org/users-guide-emb/re-drbdconf.html 官方示例: http://www.drbd.org/users-guide ? drbd及其配置文件中的相關(guān)名詞: failover:失效轉(zhuǎn)移。通俗地說,即當(dāng)A無法為客戶服務(wù)時(shí),系統(tǒng)能夠自動(dòng)地切換,使B能夠及時(shí)地頂上繼續(xù)為客戶提供服務(wù),且客戶感覺不到這個(gè)為他提供服務(wù)的對(duì)象已經(jīng)更換。(注:來自百度百科。) ? diskless mode:無盤模式。在此模式下,節(jié)點(diǎn)放棄自己的底層設(shè)備,轉(zhuǎn)而通過網(wǎng)絡(luò)到遠(yuǎn)程節(jié)點(diǎn)上去讀寫數(shù)據(jù)。 參考:http://www.drbd.org/users-guide/s-handling-disk-errors.html ? peer:對(duì)等端,在兩個(gè)NameNode的環(huán)境下,指另外一個(gè)NameNode ? stonith:Shoot The Other Node In The Head的簡(jiǎn)寫,爆其它節(jié)點(diǎn)的頭!它是避免split brain的一個(gè)措施,若發(fā)生split brain,則一個(gè)node會(huì)發(fā)出指令讓另一個(gè)node關(guān)機(jī),避免兩臺(tái)node都浮動(dòng)成primary。但這個(gè)功能本身也有一定的風(fēng)險(xiǎn)。 ? fence-peer:drbd有一個(gè)機(jī)制,當(dāng)復(fù)制連接被中斷時(shí)它將隔離對(duì)等節(jié)點(diǎn)。drbd為這個(gè)機(jī)制定義一個(gè)接口,而與heartbeat綁定的drbd-peer-outdater helper就是個(gè)通過此接口來實(shí)現(xiàn)此機(jī)制的工具。但是我們可以很輕松地實(shí)施我們自己的peer fencing helper程序,而實(shí)施我們自己的peer fencing程序的前提條件之一就是,必須在handlers配置段中定義fence-peer處理器! 參考:http://www.drbd.org/users-guide/s-fence-peer.html ? StandAlong mode:即節(jié)點(diǎn)無法與其它節(jié)點(diǎn)進(jìn)行通信的狀態(tài)。 參考:http://www.drbd.org/users-guide/ch-admin.html#s-connection-states ? write barriers:日志文件系統(tǒng)中的一種保護(hù)機(jī)制,用來保持?jǐn)?shù)據(jù)的一致性。 日志文件系統(tǒng)在磁盤的專門區(qū)域維護(hù)著一個(gè)日志。當(dāng)文件系統(tǒng)發(fā)覺到元數(shù)據(jù)的變化時(shí),它將首先把這些變化寫入日志,而不是立刻去更改元數(shù)據(jù)。當(dāng)這些變化信息(事件信息)寫入日志后,文件系統(tǒng)將向日志中添加一個(gè)“提交報(bào)告”來表明文元數(shù)據(jù)的更改是合法的。只有當(dāng)“提交報(bào)告”寫入日志后,內(nèi)核才會(huì)真正對(duì)元數(shù)據(jù)進(jìn)行寫操作。 在寫“提交報(bào)告”以前,必須完全保證事件信息已經(jīng)寫入了日志。僅僅如此還不夠,與此同時(shí)驅(qū)動(dòng)器還維護(hù)了一個(gè)巨大的內(nèi)部caches,而且為了更好的性能表現(xiàn),它會(huì)重新對(duì)操作進(jìn)行排序,所以在寫“提交報(bào)告”之前,文件系統(tǒng)必須明確地指導(dǎo)磁盤來獲取所有的日志數(shù)據(jù),并存入介質(zhì)。如果“提交報(bào)告”先于事件信息寫入日志,日志將被損壞! 內(nèi)核的I/O子系統(tǒng)通過使用barriers來實(shí)現(xiàn)上述功能。大體來說,一個(gè)barrier生成后,它將禁止其后的所有數(shù)據(jù)塊的寫入,直到該barrier之前的數(shù)據(jù)塊寫入被提交到介質(zhì)。 注意:ext3和ext4文件系統(tǒng)默認(rèn)不使用barriers,管理員必須明確啟用它們才能使用該功能。而且,并非所有文件系統(tǒng)都支持barrier。 參考:http://lwn.net/Articles/283161 ? meta data:DRBD在專門的區(qū)域存儲(chǔ)關(guān)于數(shù)據(jù)的各種各樣的信息,這些信息就是metadata,它包括如下信息: 1、?DRBD設(shè)備的空間大小 2、?Generation Identifier(GI) 3、?Activity Log(AL) 4、?quick-sync bitmap 這些metadata有兩種存儲(chǔ)方式:internally和externally。存儲(chǔ)方式是在每個(gè)resource配置段中指定的。這兩種存儲(chǔ)方式各有優(yōu)缺點(diǎn)。 Internal metadata: 一個(gè)resource被配置成使用internal metadata,意味著DRBD把它的metadata,和實(shí)際生產(chǎn)數(shù)據(jù)存儲(chǔ)于相同的底層物理設(shè)備中。該存儲(chǔ)方式是在設(shè)備的最后位置留出一個(gè)區(qū)域來存儲(chǔ)metadata。 該存儲(chǔ)方式的優(yōu)點(diǎn)是:因?yàn)閙etadata是和實(shí)際生產(chǎn)數(shù)據(jù)緊密聯(lián)系在一起的,如果發(fā)生了硬盤損壞,不需要管理員做額外的工作,因?yàn)閙etadata會(huì)隨實(shí)際生產(chǎn)數(shù)據(jù)的丟失而丟失,同樣會(huì)隨著生產(chǎn)數(shù)據(jù)的恢復(fù)而恢復(fù)。 它的缺點(diǎn)在于:如果底層設(shè)備只有一塊物理硬盤(和RAID相反),這種存儲(chǔ)方式對(duì)寫操作的吞吐量有負(fù)面影響,因?yàn)閼?yīng)用程序的寫操作請(qǐng)求會(huì)觸發(fā)DRBD的metadata的更新。如果metadata存儲(chǔ)于硬盤的同一塊盤片上,那么,寫操作會(huì)導(dǎo)致額外的兩次磁頭讀寫移動(dòng)。 要注意的是:如果你打算在已有數(shù)據(jù)的底層設(shè)備中使用internal metadata,需要計(jì)算并留出DRBD的metadata所占的空間大小,并采取一些特殊的操作,否則很有可能會(huì)破壞掉原有的數(shù)據(jù)!至于需要什么樣的特殊操作,可以參考本條目末尾的鏈接文章。我要說的是,最好不要這樣做! external metadata: 該存儲(chǔ)方式比較簡(jiǎn)單,就是把metadata存儲(chǔ)于一個(gè)和生產(chǎn)數(shù)據(jù)分開的專門的設(shè)備塊中。 它的優(yōu)點(diǎn):對(duì)某些寫操作,提供某些潛在的改進(jìn)。 缺點(diǎn):因?yàn)閙etadata和生產(chǎn)數(shù)據(jù)是分開的,如果發(fā)生了硬盤損壞,在更換硬盤后,需要管理員進(jìn)行人工干預(yù),從其它存活的節(jié)點(diǎn)向剛替換的硬盤進(jìn)行完全的數(shù)據(jù)同步。 什么時(shí)候應(yīng)該使用exteranl的存儲(chǔ)方式:設(shè)備中已經(jīng)存有數(shù)據(jù),而該設(shè)備不支持?jǐn)U展(如LVM),也不支持收縮(shrinking)。 如果計(jì)算DRBD的元數(shù)據(jù)所需要的確切空間:???注:圖片來自drbd官網(wǎng)。 Cs是磁盤的扇區(qū)數(shù),Ms也是使用扇區(qū)數(shù)來描述的,要轉(zhuǎn)化成MB,除以2048即可。 扇區(qū)數(shù)可以使用公式echo $(( $(blockdev --getsize64 ?device) / 512))來計(jì)算。 參考:http://www.drbd.org/users-guide-emb/ch-internals.html,以及http://www.wenzizone.cn/?p=280 ??drbd配置文件: drbd安裝完成后,會(huì)自動(dòng)創(chuàng)建一個(gè)配置文件/etc/drbd.conf,內(nèi)容為空,但你可以找到一個(gè)模板文件/usr/share/doc/drbd.../drbd.conf,該模板文件只有兩個(gè)include語句。 為什么模板文件如此簡(jiǎn)潔? drbd的配置文件分成三個(gè)部分:global、common和resource。這三部分雖然可以全部寫入一個(gè)/etc/drbd.conf文件中,但是按照官方慣例,這三部分是分開的:/etc/drbd.d目錄下的global_common.conf文件包含global和common配置段,而目錄下的每個(gè).res文件包含一個(gè)resource配置段。 ? 關(guān)于global配置段: 如果所有配置段都在同一個(gè)drbd.conf文件中,則該配置必須放在最頂端。 常用選項(xiàng): minor-count:從(設(shè)備)個(gè)數(shù),取值范圍1~255,默認(rèn)值為32。該選項(xiàng)設(shè)定了允許定義的resource個(gè)數(shù),當(dāng)要定義的resource超過了此選項(xiàng)的設(shè)定時(shí),需要重新載入drbd內(nèi)核模塊。 dialog-refresh?time:time取值0,或任一正數(shù)。默認(rèn)值為1。我沒理解官方對(duì)該選項(xiàng)的解釋。很少見到此選項(xiàng)被啟用。 disable-ip-verification:是否禁用ip檢查 usage-count:是否參加用戶統(tǒng)計(jì),合法參數(shù)為yes、no或ask 根據(jù)官方示例的說法,一般只配置usage-count選項(xiàng)即可。不過,說實(shí)話,drbd的官方文檔確實(shí)挺操蛋,有些地方說的比較含糊。當(dāng)然,也有我水平有限的原因。 ? ?關(guān)于common配置段: 該配置段不是必須的,但可以用來設(shè)定多個(gè)resource共有的選項(xiàng),以減少重復(fù)性工作。該配置段中又包含如下配置段:disk、net、startup、syncer和handlers。 ? disk配置段: 該配置段用來精細(xì)地調(diào)節(jié)drbd底層存儲(chǔ)的屬性。譯者注:這是一個(gè)非常重要的配置段,如果底層設(shè)備(磁盤)發(fā)生了錯(cuò)誤或損壞,該配置段將按照設(shè)定的策略發(fā)生作用。 常用選項(xiàng): on-io-error選項(xiàng):此選項(xiàng)設(shè)定了一個(gè)策略,如果底層設(shè)備向上層設(shè)備報(bào)告發(fā)生I/O錯(cuò)誤,將按照該策略進(jìn)行處理。有效的策略包括: ?pass_on:把I/O錯(cuò)誤報(bào)告給上層設(shè)備。如果錯(cuò)誤發(fā)生在primary節(jié)點(diǎn),把它報(bào)告給文件系統(tǒng),由上層設(shè)備處理這些錯(cuò)誤(例如,它會(huì)導(dǎo)致文件系統(tǒng)以只讀方式重新掛載),它可能會(huì)導(dǎo)致drbd停止提供服務(wù);如果發(fā)生在secondary節(jié)點(diǎn),則忽略該錯(cuò)誤(因?yàn)閟econdary節(jié)點(diǎn)沒有上層設(shè)備可以報(bào)告)。該策略曾經(jīng)是默認(rèn)策略,但現(xiàn)在已被detach所取代。 ??call-local-io-error:調(diào)用預(yù)定義的本地local-io-error腳本進(jìn)行處理。該策略需要在resource配置段的handlers部分,預(yù)定義一個(gè)相應(yīng)的local-io-error命令調(diào)用。該策略完全由管理員通過local-io-error命令(或腳本)調(diào)用來控制如何處理I/O錯(cuò)誤。?detach:發(fā)生I/O錯(cuò)誤的節(jié)點(diǎn)將放棄底層設(shè)備,以diskless mode繼續(xù)工作。在diskless mode下,只要還有網(wǎng)絡(luò)連接,drbd將從secondary node讀寫數(shù)據(jù),而不需要failover。該策略會(huì)導(dǎo)致一定的損失,但好處也很明顯,drbd服務(wù)不會(huì)中斷。官方推薦和默認(rèn)策略。 譯者注:如果使用detach策略來處理底層I/O錯(cuò)誤,該策略會(huì)不會(huì)報(bào)告錯(cuò)誤給管理員,以便管理員手動(dòng)更換此節(jié)點(diǎn)的磁盤呢? handler處理器部分應(yīng)該會(huì)有這方面的內(nèi)容。 ? fencing選項(xiàng):該選項(xiàng)設(shè)定一個(gè)策略來避免split brain的狀況。有效的策略包括: dont-care:默認(rèn)策略。不采取任何隔離措施。 resource-only:在此策略下,如果一個(gè)節(jié)點(diǎn)處于split brain狀態(tài),它將嘗試隔離對(duì)等端的磁盤。這個(gè)操作通過調(diào)用fence-peer處理器來實(shí)現(xiàn)。fence-peer處理器將通過其它通信路徑到達(dá)對(duì)等節(jié)點(diǎn),并在這個(gè)對(duì)等節(jié)點(diǎn)上調(diào)用drbdadm outdate res命令。 ?resource-and-stonith:在此策略下,如果一個(gè)節(jié)點(diǎn)處于split brain狀態(tài),它將停止I/O操作,并調(diào)用fence-peer處理器。處理器通過其它通信路徑到達(dá)對(duì)等節(jié)點(diǎn),并在這個(gè)對(duì)等節(jié)點(diǎn)上調(diào)用drbdadm outdate res命令。如果無法到達(dá)對(duì)等節(jié)點(diǎn),它將向?qū)Φ榷税l(fā)送關(guān)機(jī)命令。一旦問題解決,I/O操作將重新進(jìn)行。如果處理器失敗,你可以使用resume-io命令來重新開始I/O操作。 ? net配置段: 該配置段用來精細(xì)地調(diào)節(jié)drbd的屬性,網(wǎng)絡(luò)相關(guān)的屬性。常用的選項(xiàng)有:? sndbuf-size:該選項(xiàng)用來調(diào)節(jié)TCP send buffer的大小,drbd 8.2.7以前的版本,默認(rèn)值為0,意味著自動(dòng)調(diào)節(jié)大小;新版本的drbd的默認(rèn)值為128KiB。高吞吐量的網(wǎng)絡(luò)(例如專用的千兆網(wǎng)卡,或負(fù)載均衡中綁定的連接)中,增加到512K比較合適,或者可以更高,但是最好不要超過2M。 timeout:該選項(xiàng)設(shè)定一個(gè)時(shí)間值,單位為0.1秒。如果搭檔節(jié)點(diǎn)沒有在此時(shí)間內(nèi)發(fā)來應(yīng)答包,那么就認(rèn)為搭檔節(jié)點(diǎn)已經(jīng)死亡,因此將斷開這次TCP/IP連接。默認(rèn)值為60,即6秒。該選項(xiàng)的值必須小于connect-int和ping-int的值。 connect-int:如果無法立即連接上遠(yuǎn)程DRBD設(shè)備,系統(tǒng)將斷續(xù)嘗試連接。該選項(xiàng)設(shè)定的就是兩次嘗試間隔時(shí)間。單位為秒,默認(rèn)值為10秒。 ping-int:該選項(xiàng)設(shè)定一個(gè)時(shí)間值,單位為秒。如果連接到遠(yuǎn)程DRBD設(shè)備的TCP/IP的空閑時(shí)間超過此值,系統(tǒng)將生成一個(gè)keep-alive包來檢測(cè)對(duì)等節(jié)點(diǎn)是否還存活。默認(rèn)值為10秒。 ping-timeout:該選項(xiàng)設(shè)定一個(gè)時(shí)間值,單位是0.1秒。如果對(duì)等端沒有在此時(shí)間內(nèi)應(yīng)答keep-alive包,它將被認(rèn)為已經(jīng)死亡。默認(rèn)值是500ms。 max-buffers:該選項(xiàng)設(shè)定一個(gè)由drbd分配的最大請(qǐng)求數(shù),單位是頁面大小(PAGE_SIZE),大多數(shù)系統(tǒng)中,頁面大小為4KB。這些buffer用來存儲(chǔ)那些即將寫入磁盤的數(shù)據(jù)。最小值為32(即128KB)。這個(gè)值大一點(diǎn)好。 max-epoch-size:該選項(xiàng)設(shè)定了兩次write barriers之間最大的數(shù)據(jù)塊數(shù)。如果選項(xiàng)的值小于10,將影響系統(tǒng)性能。大一點(diǎn)好。 ? 用戶手冊(cè)的另外一部分也提到了max-buffers和max-epoch-size,跟drbd.conf部分的解釋稍有不同:drbd.conf的幫助文檔中說,max-buffers設(shè)定的是最大請(qǐng)求數(shù),max-epoch-size設(shè)定的是最高的數(shù)據(jù)塊數(shù);而這部分的幫助文檔說,這兩個(gè)選項(xiàng)影響的是secondary節(jié)點(diǎn)寫操作的性能,max-buffers設(shè)定的是最大的buffers數(shù),這些buffers是drbd系統(tǒng)是為即將寫入磁盤的數(shù)據(jù)而分配的;max-epoch-size設(shè)定的是兩次write barrier之間所允許的最大請(qǐng)求數(shù)。 多數(shù)情況下,這兩個(gè)選項(xiàng)應(yīng)該并行地設(shè)置,而且兩個(gè)選項(xiàng)的值應(yīng)該保持一致。兩個(gè)選項(xiàng)的默認(rèn)值都是2048,在大多數(shù)合理的高性能硬件RAID控制器中,把它們?cè)O(shè)定為8000比較好。 兩個(gè)部分的解釋結(jié)合起來看,max-buffers設(shè)定的是最大的數(shù)據(jù)塊數(shù),max-epoch-size設(shè)定的是所能請(qǐng)求的最大塊數(shù)。 參考:http://www.drbd.org/users-guide-emb/s-throughput-tuning.html#s-tune-disable-barriers ? ko-count:該選項(xiàng)設(shè)定一個(gè)值,把該選項(xiàng)設(shè)定的值 乘以 timeout設(shè)定的值,得到一個(gè)數(shù)字N,如果secondary節(jié)點(diǎn)沒有在此時(shí)間內(nèi)完成單次寫請(qǐng)求,它將從集群中被移除(即,primary node進(jìn)入StandAlong模式)。取值范圍0~200,默認(rèn)值為0,即禁用該功能。 allow-two-primaries:這個(gè)是drbd8.0及以后版本才支持的新特性,允許一個(gè)集群中有兩個(gè)primary node。該模式需要特定文件系統(tǒng)的支撐,目前只有OCFS2和GFS可以,傳統(tǒng)的ext3、ext4、xfs等都不行! cram-hmac-alg:該選項(xiàng)可以用來指定HMAC算法來啟用對(duì)等節(jié)點(diǎn)授權(quán)。drbd強(qiáng)烈建議啟用對(duì)等節(jié)點(diǎn)授權(quán)機(jī)制。可以指定/proc/crypto文件中識(shí)別的任一算法。必須在此指定算法,以明確啟用對(duì)等節(jié)點(diǎn)授權(quán)機(jī)制。 shared-secret:該選項(xiàng)用來設(shè)定在對(duì)待節(jié)點(diǎn)授權(quán)中使用的密碼,最長(zhǎng)64個(gè)字符。 data-integrity-alg:該選項(xiàng)設(shè)定內(nèi)核支持的一個(gè)算法,用于網(wǎng)絡(luò)上的用戶數(shù)據(jù)的一致性校驗(yàn)。通常的數(shù)據(jù)一致性校驗(yàn),由TCP/IP頭中所包含的16位校驗(yàn)和來進(jìn)行,而該選項(xiàng)可以使用內(nèi)核所支持的任一算法。該功能默認(rèn)關(guān)閉。 ? 另外,還有after-sb-0pri, after-sb-1pri, after-sb-2pri這三個(gè)選項(xiàng),split brian有關(guān)。 ? startup配置段: 該配置段用來更加精細(xì)地調(diào)節(jié)drbd屬性,它作用于配置節(jié)點(diǎn)在啟動(dòng)或重啟時(shí)。譯者注:我曾試過不配置此部分,在首次啟用第二個(gè)節(jié)點(diǎn)的DRBD塊設(shè)備時(shí),遇到了一個(gè)問題:它一直等待有一個(gè)對(duì)等節(jié)點(diǎn)出現(xiàn),而遲遲不肯啟動(dòng),必須手動(dòng)讓它停止等待。如下:? ? ? ?常用選項(xiàng)有: ?wfc-timeout:該選項(xiàng)設(shè)定一個(gè)時(shí)間值,單位是秒。在啟用DRBD塊時(shí),初始化腳本drbd會(huì)阻塞啟動(dòng)進(jìn)程的運(yùn)行,直到對(duì)等節(jié)點(diǎn)的出現(xiàn)。該選項(xiàng)就是用來限制這個(gè)等待時(shí)間的,默認(rèn)為0,即不限制,永遠(yuǎn)等待。 ?degr-wfc-timeout:該選項(xiàng)也設(shè)定一個(gè)時(shí)間值,單位為秒。也是用于限制等待時(shí)間,只是作用的情形不同:它作用于一個(gè)降級(jí)集群(即那些只剩下一個(gè)節(jié)點(diǎn)的集群)在重啟時(shí)的等待時(shí)間。 ?outdated-wfc-timeout:同上,也是用來設(shè)定等待時(shí)間,單位為秒。它用于設(shè)定等待過期節(jié)點(diǎn)的時(shí)間。 ? syncer配置段: 該配置段用來更加精細(xì)地調(diào)節(jié)服務(wù)的同步進(jìn)程。 常用選項(xiàng)有: ?rate:設(shè)置同步時(shí)的速率,默認(rèn)為250KB。默認(rèn)的單位是KB/sec,也允許使用K、M和G,如40M。注意:syncer中的速率是以bytes,而不是bits來設(shè)定的。 配置文件中的這個(gè)選項(xiàng)設(shè)置的速率是永久性的,但可使用下列命令臨時(shí)地改變r(jià)ate的值: drbdsetup /dev/drbdnum?syncer -r 100M 把上述命令中紅色的num替換成你的drbd設(shè)備的從設(shè)備號(hào)。只能在所有節(jié)點(diǎn)的其中一個(gè)節(jié)點(diǎn)上運(yùn)行此命令。 如果想重新恢復(fù)成drbd.conf配置文件中設(shè)定的速率,執(zhí)行如下命令:? drbdadm adjust?resource ? 官方提示:速率的設(shè)定,最好設(shè)為有效可用帶寬的30%。所謂有效可用帶寬,是指網(wǎng)絡(luò)帶寬和磁盤讀寫速度中的最小者。有兩個(gè)示例: 如果I/O子系統(tǒng)所能維持的讀寫速度為180MB/s,而千兆網(wǎng)絡(luò)所能維持的網(wǎng)絡(luò)吞吐速度為110MB/s,那么有效可用帶寬為110MB/s,該選項(xiàng)的推薦值為110 x 0.3 = 33MB/s。 如果I/O速度為80MB/s,而網(wǎng)絡(luò)連接速度可達(dá)千兆,那么有效可用帶寬為80MB/s,推薦的rate速率應(yīng)該為80 x 0.3 = 24MB/s ? ?al-extents:該選項(xiàng)用來設(shè)定hot area(即active set)的塊數(shù),取值范圍是7~3843,默認(rèn)為127,每個(gè)塊標(biāo)志4M大小的底層存儲(chǔ)(即底層設(shè)備)。DRBD會(huì)自動(dòng)檢測(cè)host area,如果主節(jié)點(diǎn)意外地從集群中斷開,當(dāng)該節(jié)點(diǎn)重新加入集群時(shí),hot area所覆蓋的區(qū)域必須被重新同步。hot area的每次變化,實(shí)際上都是對(duì)metadata區(qū)域的寫操作,因此,該選項(xiàng)的值越大,重新同步的時(shí)間越長(zhǎng),但需要更新的meta-data也越少。 而用戶手冊(cè)的另外一部分提到,al-extents調(diào)整的是Activity Log的大小。如果使用DRBD設(shè)備的應(yīng)用程序的寫操作比較密集,那么,一般建議使用較大的Activity Log(active set),否則metadata頻繁的更新操作會(huì)影響到寫操作的性能。建議值:3389。 參考:http://www.drbd.org/users-guide-emb/s-throughput-tuning.html#s-tune-al-extents ? ?verify-alg:該選項(xiàng)指定一個(gè)用于在線校驗(yàn)的算法,內(nèi)核一般都會(huì)支持md5、sha1和crc32c校驗(yàn)算法。在線校驗(yàn)?zāi)J(rèn)關(guān)閉,必須在此選項(xiàng)設(shè)定參數(shù),以明確啟用在線設(shè)備校驗(yàn)。DRBD支持在線設(shè)備校驗(yàn),它以一種高效的方式對(duì)不同節(jié)點(diǎn)的數(shù)據(jù)進(jìn)行一致性校驗(yàn)。在線校驗(yàn)會(huì)影響CPU負(fù)載和使用,但影響比較輕微。drbd 8.2.5及以后版本支持此功能。 一旦啟用了該功能,你就可以使用下列命令進(jìn)行一個(gè)在線校驗(yàn):? drbdadm verify?resource ? 該命令對(duì)指定的resource進(jìn)行檢驗(yàn),如果檢測(cè)到有數(shù)據(jù)塊沒有同步,它會(huì)標(biāo)記這些塊,并往內(nèi)核日志中寫入一條信息。這個(gè)過程不會(huì)影響正在使用該設(shè)備的程序。 如果檢測(cè)到未同步的塊,當(dāng)檢驗(yàn)結(jié)束后,你就可以如下命令重新同步它們: drbdadm disconnect?resource drbdadm connetc?resource ? 可以安排一個(gè)cron任務(wù)來自動(dòng)執(zhí)行在線校驗(yàn),如: 42 0 * * 0?root?/sbin/drbdadm verify?resource ? 如果開啟了所有資源的在線檢驗(yàn),可以使用如下命令: 42 0 * * 0?root?/sbin/drbdadm verify all ? ?csums-alg:該選項(xiàng)指定一個(gè)校驗(yàn)算法,用來標(biāo)志數(shù)據(jù)塊。如果不啟用該選項(xiàng),rsync會(huì)從source發(fā)送所有的數(shù)據(jù)塊到destination;而如果啟用了此選項(xiàng),那么rsync將只交換那些校驗(yàn)值不同的數(shù)據(jù)塊,當(dāng)網(wǎng)絡(luò)帶寬有限時(shí),此選項(xiàng)非常有用。而且,在重啟一個(gè)崩潰的primary節(jié)點(diǎn)時(shí),該選項(xiàng)會(huì)降低CPU帶寬的占用。 ? handlers: 該配置段用來定義一系列處理器,用來回應(yīng)特定事件。 |
轉(zhuǎn)載于:https://www.cnblogs.com/Elliot-wang/p/3994362.html
總結(jié)
- 上一篇: 老干妈多少钱啊?
- 下一篇: 假文盲这篇漫画是谁画的呢?