GaussDB對接NBU備份環境配置指南

      網友投稿 1998 2025-03-31

      概述

      業界一種主流的備份存儲管理軟件是NetBackup(本文簡稱NBU),其優勢是可以將備份文件存儲到磁帶介質上。

      目前NetBackup軟件提供了兩種備份方式:

      1)? 從NetBackup軟件界面進行操作,選擇要備份或恢復的文件,或者使用其對應的命令行工具bpbackup;

      2)? 以GaussDB為代表的數據庫,采用NetBackup軟件提供的libxbsa64.so動態庫(實現了標準的XBSA系列接口),將本地數據傳送到NBU服務器,然后由NBU服務器負責落盤到磁帶介質上。GaussDB的專用備份工具Roach,負責調用libxbsa64.so庫將本地數據庫文件備份到遠端NBU服務器。

      本文簡要描述了華為GaussDB數據庫和NetBackup對接進行備份、恢復的配置方法與注意事項。

      1. GaussDB備份到NBU的部署介紹

      1.1 NBU備份GaussDB的部署架構

      GaussDB數據庫提供了專門的備份恢復工具Roach,該工具與NBU交互,完成GaussDB數據庫文件備份到NBU的過程。線下場景下,整個備份恢復流程由Roach工具或FusionInsight等封裝了Roach命令行調用的界面軟件及腳本發起。后續線上場景下將從DWS管控面發起,目前從管控面僅支持了OBS備份,正在集成NBU備份功能。

      圖1-1 NBU備份GaussDB的部署圖

      如上圖所示,數據庫集群中每個節點的Roach進程讀取本節點GaussDB數據庫文件,通過XBSA接口發送給NBU服務器,NBU Master Server控制各個NBU Client收發數據,數據最終到達NBU Media Server指定的磁盤或磁帶存儲介質。集群恢復時亦然,只不過數據流向與上圖相反。

      本圖示例了最典型的NBU部署方式。實際使用中,NBU Master Server和NBU Media Server可能合布在同一臺機器,NBU Server和其中一個NBU Client也可能合布在同一臺機器。NBU Master Server和NBU Media Server可能有多臺,分組管理部分NBU Client。也可能多個Server組成Clustered Master Server(高版本NetBackup支持)來增強NBU服務器側的高可用性。

      1.2 與NetBackup軟件的配套情況

      因Roach工具只是調用NetBackup提供的XBSA標準接口庫,與NetBackup軟件并無耦合,因此從原理上講,GaussDB數據庫可以通過Roach工具無縫對接到任何版本的NetBackup,只需正確配置NBU相關環境。

      目前業界常用的NetBackup軟件版本有:

      l? NetBackup 7.5

      l??NetBackup 7.6

      l? NetBackup 7.7

      l? NetBackup 8.1

      l? NetBackup 8.2

      當前GaussDB和NetBackup可同時支持的操作系統平臺情況如下(具體能支持的OS小版本號以GaussDB產品文檔為準):

      l? Suse11~Suse12

      l? Redhat7/CentOS x86

      l? 不支持ARM和Euler系統,因NetBackup尚無對應安裝包

      本文將以NetBackup 7.5版本為例,來介紹GaussDB備份恢復相關的NBU配置。

      2. NBU環境配置流程與注意事項

      2.1 安裝NBU Server軟件

      NetBackup軟件的安裝請詳細參考NetBackup官方文檔,不在本文描述范圍內。為了示例方便,本文僅簡要說明這個過程。

      本文意在說明NBU配置注意事項,因此僅采用最簡單的配置部署方式作為示例,并簡要描述這種部署方式下的NBU安裝過程。

      本文中,假設GaussDB數據庫集群共有3個機器,hostname分別為plat1、plat2、plat3,采用單一的NBU Master Server和NBU Media Server,且Mater Server與Media Server合布在一臺機器,選擇plat3部署NBU Server,即該節點既做為NBU Server又做為NBU Client。本文只演示NBU存儲介質為磁盤的方式,磁帶沒有特殊的區別,只要按NBU官方文檔正確配置即可。

      整個安裝過程都要使用root用戶。具體步驟如下:

      步驟 1????? 用root登錄待安裝NBU Master Server的機器,本文為plat3。

      解壓NBU Server安裝包后,切換到安裝目錄,以root用戶執行解壓后的install腳本:

      ./install

      圖2-1 安裝NBU Server

      安裝NBU Server的機器應選擇具有X11圖形化環境的機器,否則安裝后無法啟動java界面從而無法配置NBU環境。

      步驟 2????? 按向導完成整個NBU Server的安裝過程。

      安裝過程中,有多個交互式選擇的地方,可參考如下輸入:

      1)Do you ? wish to continue? (y/n) (y) (回車默認)

      2)Participate ? in the NetBackup Product Improvement Program? (y/n) (y) (回車默認)

      3)Do you ? want to install NetBackup and Media Manager files? [y,n] (y) (回車默認)

      4)Is it OK ? to install in /usr/openv? [y,n] (y) (回車默認)

      5)Enter ? license key: 輸入軟件許可證編號

      6)Do you ? want to add additional license keys now? [y,n] (y) n

      7)Would you ? like to use "plat3" as the configured NetBackup server name of this ? machine? [y,n] (y) (回車默認)

      8)Is plat3 ? the master server? [y,n] (y) (回車默認)

      9)Do you ? want to add any media servers now? [y,n] (n) (回車默認)

      10)Enter the ? Enterprise Media Manager server (default: plat3):(回車默認)

      11)Do you ? want to start the job-related NetBackup daemons so backups and restores can ? be initiated? [y,n] (y) (回車默認)

      12)Enter the ? OpsCenter server (default: NONE):(回車默認)

      注:如上斜體的plat3為Master Serve節點的hostname。

      至此,plat3上就安裝了NBU Master Server和NBU Media Server,同時默認安裝了NBU Client。

      其它節點上尚未安裝NBU Client,稍后的章節會單獨進行安裝。

      步驟 3????? 查看bp.conf文件。

      查看NBU生成的/usr/openv/netbackup/bp.conf配置文件,里面CLIENT_NAME字段取值初始值應該為本機hostname。

      該文件截圖前半部分如下:

      圖2-2 NBU Server端的bp.conf文件

      ----結束

      2.2 配置NBU備份環境

      本節描述NBU備份策略、存儲、界面勾選項、配置文件修改相關事宜。

      步驟 1????? 登錄NBU Master Server機器,在/etc/hosts中配置IP/hostname映射信息。

      需要在Master Server的/etc/hosts中配置Media Server以及所有NBU Client的IP/hostname映射信息。

      步驟 2????? 登錄NBU Media Server機器,在/etc/hosts中配置IP/hostname映射信息。

      同理,需要在Media Server的/etc/hosts中配置Master Server以及所有NBU Client的IP/hostname映射信息。

      步驟 3????? 登錄每個NBU Client機器,在/etc/hosts中配置IP/hostname映射信息。

      需要在每個NBU Client的/etc/hosts中配置所有Master Server以及Media Server的IP/hostname映射信息。

      以上幾步如果遺漏,會導致NBU備份出現通信問題。每次新增NBU Client或Server,都要重新執行如上三步。

      步驟 4????? 登錄NBU Master Server機器,啟動NBU管理界面。

      用root登錄NBU Master Server,執行如下命令:

      cd /usr/openv/java/

      ./jnbSA

      在彈出的java界面上,輸入Master Server的root密碼并點擊登錄,就可以進入NBU配置管理界面。

      圖2-3 啟動NBU管理界面

      NBU Client機器也可以啟動NBU界面,只要X11環境OK的話。

      步驟 5????? 配置存儲單元(Storage Unit)。

      本節僅描述存儲介質為磁盤的方式。

      選擇左側Storage菜單,并點擊New Storage Unit按鈕,新建一個存儲單元。

      圖2-4 新建存儲單元

      在彈出的新建頁面,填寫存儲單元名字,并在Absolute pathname to directory填寫備份文件在服務器的哪個磁盤路徑下存儲。

      本文配置的是單一NBU Server,且是單一存儲單元,因此GaussDB集群中所有節點的備份文件都會集中存儲到plat3這臺Media Server的該路徑下。

      如果配置的是Storage Unit Group,則可以分組存儲在該服務器的多個路徑下。

      此處我們的存儲介質是Disk,存儲類型應選擇BasicDisk。

      圖2-5 配置存儲單元

      在上圖中,應調大Maximum concurrent jobs的取值,建議至少高于數據庫集群中節點個數,否則其它節點就會排隊等待。

      理想情況下,該取值為集群中節點數乘以單個節點的主DN數,或者更高一些(考慮到CN和從備DN也需要占用并發資源)。

      如果上圖中指定的存儲單元路徑位于系統盤上,則必須勾選圖中的復選框,否則備份第一個對象時就會創建對象失敗。

      This directory can exist on the root file system or system disk是說允許備份文件存放到根文件系統或系統盤上。

      例如,本文中指定了/opt下面的子目錄作為存儲目錄,屬于系統盤路徑,所以必須勾選該復選框。

      步驟 6????? 配置NBU策略(NBU Policy)。

      選擇左側Policies菜單,點擊Add new policy按鈕,新建一個NBU策略。

      圖2-6 新建NBU策略

      在彈出的對話框中輸入NBU Policy的名字,比如nbu_policy。

      在新的NBU策略配置頁面中,Policy類型選擇為DataStore,Policy存儲選擇為上一步新建的Storage Unit名稱。

      另外,右側Active Go into effect at的時間應早于第一次備份發起時間。通常來說,默認是新建該Policy的時間且該復選框處于勾選狀態,

      因此都是滿足條件的。

      圖2-7 配置NBU策略

      如果存儲介質是磁帶,則上圖Policy storage需要選擇為我們自己的磁帶庫名稱,比如xxx-robot-tld-0。

      同時,Policy volume pool選擇為已安裝磁帶庫的Volume pool,后者可以從NBU配置主界面左側的Media->Volume Pools列表中查到。

      上圖中Policy storage需要選擇為我們自己新建的存儲單元或磁帶庫名稱,如果不選擇會導致備份失敗。

      步驟 7????? 配置NBU客戶端。

      需要將所有NBU Client機器都加入到如下NBU客戶端列表中。

      選擇左側Policies菜單,雙擊我們自己的NBU Policy名稱nbu_policy,

      圖2-8 更改NBU策略配置

      進入NBU策略配置界面(與上一步界面相同),點擊Clients標簽頁,點擊標簽頁下方的New按鈕,在彈出的Add Client對話框中逐個添加所有的NBU Client。對話框中Client name輸入各個NBU Client的hostname,操作系統下拉框中選擇最接近的系統選項,注意不要選錯,否則客戶端安裝會失敗,或安裝后功能不正確。

      圖2-9 添加NBU客戶端

      注意:NBU客戶端清單中的Client name非常重要,填寫為hostname還是IP效果都不一樣,可能導致備份或恢復失敗。

      ----結束

      2.3 安裝NBU Client軟件

      NetBackup提供了專門的工具腳本install_client_files,用于批量化安裝NBU Client。所有的操作都只需在NBU Server上執行。

      該腳本有兩種常用方法:

      1)????? 安裝單個NBU Client:

      install_client_files ssh hostname

      后面斜體的參數是待安裝Client機器的hostname。

      NBU Server節點不需要單獨安裝NBU Client,安裝Server時就自動安裝過了。

      2)????? 安裝所有NBU Client:

      install_client_files ssh ALL

      此處ALL必須是大寫。

      步驟 1????? 登錄NBU Master Server命令行,安裝所有NBU Client。

      用root執行如下命令,可以一次性遠程安裝好所有機器的NBU Client軟件。

      cd /usr/openv/netbackup/bin

      ./install_client_files? ssh ALL

      步驟 2????? 登錄各個NBU Client機器,檢查各客戶端的bp.conf文件。

      如果上述兩種方法都無法成功安裝,可嘗試將NBU Client安裝包拷貝到對應的客戶端機器,解壓后執行其中的install腳本單獨安裝。

      圖2-10 NBU Client端的bp.conf文件

      此處bp.conf里面的CLIENT_NAME比較關鍵,應該與NBU Policy界面的NBU Client列表中的Client Name相同。

      ----結束

      2.4 調整NBU配置

      為了取得較佳的性能效果,需要配置合適的NBU參數。最常見的是NBU Server端的最大并發數和最大超時時間。

      特別是客戶端個數上百時就很有必要,本文只有3個客戶端,因此取值相對較小。

      步驟 1????? 調整Master Server端最大并發數。

      選擇左側Host Properties -> Master Servers,鼠標右鍵點擊Master Server的hostname,點擊Properties菜單項。

      圖2-11 配置Master Server的屬性

      在彈出的Master Server屬性頁面中,切換到Global Attributes標簽頁,將Maximum jobs per client調整為6。

      該取值決定了每個NBU Client上可以并發執行的任務數,最小應高于集群中單個節點的主DN個數,過小可能導致排隊現象。

      根據NBU官方文檔說明,每個Master Server上,每1秒只能發起一個NBU job,其余job只能排隊。

      同時,每個NBU Client上,每1秒也只能發起一個NBU job。

      從NetBackup 8.2開始,Master Server取消了這個限制,每1秒可以并發發起多個不同NBU Client對應的job,

      這對于節點數很多且數據量很大的數據庫集群可以大幅提升性能;但NBU Client的限制仍然存在。

      該限制主要作用于XBSA接口的BSACreateObject(),每調用一次該接口就需耗費1s(但同一個對象的分片不會再次建連)。

      圖2-12 調整Server端并發任務數

      步驟 2????? 調整Master Server端最大超時時間。

      在Master Server的屬性頁,切換到Timeouts標簽頁,將Client connect timeout、Client read timeout、Media server connect timeout都調整到300s以上。

      圖2-13 配置Master Server的最大超時時間

      步驟 3????? 調整Media Server端最大超時時間。

      同Master Server一樣,在左側Host Properties菜單下,選擇Media Servers,并打開其屬性頁面。

      圖2-14 配置Media Server的屬性

      在Media Server的屬性頁,切換到Timeouts標簽頁,同樣調整Client connect timeout、Client read timeout、Media server connect timeout到300s以上。

      圖2-15 配置Media Server的最大超時時間

      ----結束

      3. NBU配置導致的常見備份問題

      3.1 問題排查手段

      本節列出一些NBU備份恢復失敗相關的常用排查方法,用于輔助NetBackup官方文檔和網站提供的定位方法。

      步驟 1????? 查看NBU管理界面的Activity Monitor。

      登錄NBU Master Server,打開NBU管理界面,點擊左側Activity Monitor,在備份和恢復過程中就可以看到每個job的詳細進展。

      圖3-1 NBU的Activity Monitor界面

      出現問題時,雙擊右側失敗的job,可以查看詳細的執行信息,從中獲取失敗的原因。

      該方法是最直接的NBU交互問題定位手段。

      圖3-2 查看NBU job的詳細執行信息

      根據上面報出的錯誤碼和錯誤信息,結合NBU官網和產品文檔,就可以大致判斷出問題方向。

      步驟 2????? 查看NBU日志。

      默認情況下,NBU日志是關閉的,需要根據錯誤信息,打開對應的NBU組件的debug級別日志,重新復現問題,結合NBU官方文檔分析日志。

      左側Host Properties下面可以分別設置Master Servers/Media Servers/NBU Clients的日志級別。

      其中NBU客戶端的日志選擇比較簡單,從0改為5就可以打印最詳細的日志。

      圖3-3 NBU Client的日志級別設置

      對于NBU Server來說,建議選擇相干的NBU組件即可。

      比如bpbrm是NBU備份恢復管理模塊(NetBackup backup and restore manager),

      而bptm是NBU磁帶管理模塊(NetBackup tape manager)。

      圖3-4 Media Server的日志級別設置

      步驟 3????? 查看GaussDB備份恢復日志。

      可以結合GaussDB備份恢復工具Roach的日志進行分析,日志位于$GAUSSLOG/roach下面。

      步驟 4????? 使用虛擬磁帶庫VTL模擬磁帶問題。

      因磁帶機比較昂貴,遇到磁帶特有的問題,可以采用虛擬磁帶庫來模擬復現。

      VTL(Virtual Tape Library)可以模擬各種磁帶類型,配置和安裝方法在此不做描述。需要配合專門的硬件(HBA卡)使用。

      步驟 5????? 從后臺命令行執行備份恢復,或驗證NBU單表備份恢復。

      可以用集群管理員用戶從后臺命令行登錄集群節點,用GaussDB的GaussRoach.py腳本發起備份恢復操作,來對比驗證問題。

      具體使用方法參見GaussDB產品手冊,此處不再描述。

      同時,還可以減少數據量,嘗試單表粒度的備份恢復,來快速排查NBU環境配置問題。進行NBU單表備份恢復的優點是對用戶影響較小、耗時較短。

      步驟 6????? 排查常見的配置文件問題。

      主要包括Master Server、Media Server、NBU Client上的/etc/hosts及/usr/openv/netbackup/bp.conf文件。

      步驟 7????? 排查常見的網絡配置問題。

      主要包括NBU管理界面的Master Server和Media Server各種超時時間,以及防火墻設置。

      步驟 8????? 結合XBSA常見錯誤碼列表進行分析。

      如果是XBSA接口訪問報錯,Roach日志和NBU日志中通常都會打印相應錯誤碼。

      圖3-5 XBSA常見錯誤碼參考

      詳細可參考:

      http://www.iiug.org/onbar/debug.html#xbsarc

      3.2 找不到客戶端hostname導致NBU備份恢復失敗

      【主要現象】從NBU Activity Monitor失敗任務的詳細信息界面,以及NBU日志文件/usr/openv/netbackup/logs/user_ops/dbext/logs下的日志中有“client hostname could not be found (48)”報錯語句。

      【原因分析】可能是NBU Master Server和Media Server的/etc/hosts中沒有全部加入所有NBU Client的IP/hostname映射。參考:

      https://www.veritas.com/content/support/en_US/article.100016804

      http://systemmanager.ru/nbadmin.en/nbu_48.htm

      3.3 正確配置/etc/hosts后磁盤成功而磁帶失敗

      【主要現象】出現找不到客戶端hostname報錯后,正確配置了Master Server和Media Server的/etc/hosts,但執行NBU備份磁盤可以成功,而磁帶高概率失敗。

      【原因分析】可能是NBU host緩存導致,每次修改/etc/hosts后,建議立即清理緩存。原因是NBU緩存了hostname到IP地址的映射,以便最大程度減少DNS查詢,雖然修改了/etc/hosts等IP/hostname映射相關的配置,但NBU host緩存可能1小時以上才會刷新,未能立即生效。

      清理方法是:用root登錄NBU Media Server,執行如下命令:

      cd /usr/openv/netbackup/bin

      ./bpclntcmd ? -clear_host_cache

      3.4 新添加的NBU Client備份報錯

      【主要現象】在數據庫集群中新增幾個節點并安裝NBU Client后,集群備份報錯。查看Roach工具日志,只有新添加的NBU節點才報錯,其余節點都是由這幾個節點報錯導致出錯。

      【原因分析】可能是新增NBU Client機器后,沒有在NBU Master Server和Media Server的/etc/hosts中添加所有NBU Client的IP/hostname映射關系。

      3.5 新添加的NBU Client恢復報錯

      【主要現象】在數據庫集群中新增幾個節點并安裝NBU Client后,正確配置了NBU Server中的/etc/hosts,集群備份成功,但恢復報錯。查看Roach工具日志和NBU日志,提示在NBU服務器上找不到待恢復的文件,XBSA接口BSAQueryObject()失敗,錯誤碼0x11,即BSA_RC_NO_MATCH。

      【原因分析】備份文件在NBU Server上存儲時是以Client Name(通常是hostname)作為文件名前綴的,如果備份時使用的Client Name與恢復時不一致,就可能導致無法從服務器上匹配到對應的備份文件。此時應檢查新添加的NBU Client上的bp.conf文件,其中的CLIENT_NAME取值應當與NBU管理界面上Policy頁面Clients清單中的客戶端Client Name相同。bp.conf的默認值來自安裝NBU客戶端時指定的名字,有可能新添加的NBU Client在安裝時指定了IP作為客戶端名稱,造成不匹配。通常建議安裝NBU Client時輸入的Client Name,與bp.conf中的CLIENT_NAME字段,以及新建Policy時Clients清單中每個客戶端的Client Name,以及Host Properties->Client->Client Properties->Client Name均保持一致,全都取hostname。如果不一致,bp.conf和Policy中的Client Name都可以手動修改。

      圖3-6 備份文件在Media Server上的存儲形式

      其中客戶端屬性頁中的Client Name位置如下,其余的Client Name在前面章節都已說明:

      圖3-7 客戶端屬性頁的Client Name

      3.6 備份失敗提示無法創建對象

      【主要現象】集群備份失敗,從Roach日志看到備份第一個對象就失敗了,XBSA接口BSACreateObject()返回錯誤,無法在NBU服務器上創建備份對象。

      【原因分析】可能是NBU存儲單元相關配置錯誤。常見的兩種情形:一是NBU Policy配置中的Policy storage未正確選擇;

      圖3-8 Policy storage選擇

      另一種是使用系統盤作為存儲路徑,但Storage Unit中未勾選”This directory can exist on the root file system or system disk.”復選框。

      圖3-9 Storage Unit復選框勾選

      3.7 恢復到新集群失敗

      【主要現象】使用Roach工具可以將NBU上的備份集恢復到一個與原集群完全同構的新集群上。如果條件都滿足,且備份集的metadata都已就緒,恢復仍然失敗,提示找不到hostname等相關錯誤。

      【原因分析】可能是沒有正確配置虛擬客戶端名稱。首先,恢復時使用的NBU Policy名稱需要與備份時使用的保持一致。最后,需要在NBU Master Server上手動創建文件:/usr/openv/netbackup/db/altnames/No.Restrictions,從而NBU就可以知道是恢復到新的集群,自動完成虛擬客戶端映射。

      GaussDB對接NBU備份環境配置指南

      數據倉庫服務 GaussDB(DWS) 數據庫

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。

      上一篇:如何快速將Excel中排除隱藏列的值求和?
      下一篇:延慶進銷存庫存管理(進銷存管理制度及操作規程)
      相關文章
      亚洲综合伊人制服丝袜美腿| 亚洲无限乱码一二三四区| 亚洲一区动漫卡通在线播放| 亚洲AV成人无码久久精品老人| 精品亚洲成α人无码成α在线观看| 狠狠入ady亚洲精品| 亚洲人成电影网站免费| 99亚偷拍自图区亚洲| 国产精品高清视亚洲精品| 亚洲一区中文字幕| 国产.亚洲.欧洲在线| 美女视频黄免费亚洲| 国产成人精品亚洲2020| 亚洲中文字幕精品久久| 自拍偷区亚洲国内自拍| 亚洲日韩国产欧美一区二区三区| 亚洲欧美日韩中文无线码| 亚洲精品无码专区久久| 无码亚洲成a人在线观看| 国产精品亚洲а∨无码播放不卡 | 久久精品夜色国产亚洲av| 亚洲VA中文字幕无码一二三区| 亚洲精品无码AV人在线播放| 亚洲国产精品无码AAA片| 亚洲AV无码乱码在线观看富二代| 亚洲电影中文字幕| 亚洲视频免费一区| 亚洲冬月枫中文字幕在线看| 亚洲一区二区三区国产精品无码| 国产成人亚洲合集青青草原精品| 亚洲日韩看片无码电影| 国产午夜亚洲精品不卡电影| 亚洲精品一级无码鲁丝片| 最新国产AV无码专区亚洲| 亚洲不卡中文字幕无码| 亚洲福利视频一区二区三区| 亚洲视频无码高清在线| 久久亚洲中文无码咪咪爱| 国产精品亚洲w码日韩中文| 亚洲成Av人片乱码色午夜| 亚洲国产精品美女|