問題分析報告--DBService備份問題

1、問題描述

1.1 基本信息[Basic Information]

  • 集羣規模:37+3臺物理機,每臺128G內存;CPU:2*16C;SATA磁盤,2T*12
  • hadoop社區版本:**
  • 商業版本:FusionInsight_HD_V100R002C60U10
  • MetaStore:高斯數據庫(Postgresql)

1.2 問題描述[Problem Description]

  • hive任務執行失敗,報沒有空間;

2、問題分析[Problem Analysis]

經過分析發現hive寫臨時文件到/opt/Huawei/Bigdata/tmp目錄,無法寫入,原因是DBservice的備份文件過多導致/opt/目錄空間佔滿。

DBService備份文件過多問題:DBService備份文機制,先在主DBServer節點上備份,然後再同步到備DBServer節點上,主DBServer上做了回滾機制,只保留最新的10備份,備DBServer會全部保留,因此備上/opt很容易被佔滿;備DBServer節點安裝目錄被佔滿,導致這個節點上所有的實例都運行異常

如果發生過主備倒換,主備DBServer節點上可能都存在大量的備份文件。確認爲版本缺陷,版本已經提單修正。


3、根本原因[Root Cause]

 DBService備份機制不合理,備DBServer上的備份文件未做回滾,僅僅從主DBServer上同步,導致大量堆積

 


由於在HA中配置了delete="no"參數

/opt/huawei/Bigdata/FusionInsight/dbservice/ha/module/hasync/plugin/conf/dbservice_sync.xml

<file name="/opt/huawei/Bigdata/FusionInsight_V100R002C60U10/dbservice/bak"  delete="no"/>


在主上做了回滾,因此在主DBServer節點上的備份只會保留10個,配置這個參數表示在主DBServer上不存在的文件,同步時在備DBServer節點上不刪除


4、解決措施[Corrective Action]

4.1 臨時解決措施[Workaround]

1. 使用omm用戶登陸到主DBServer節點
2. 修改配置文件
/opt/huawei/Bigdata/FusionInsight/dbservice/ha/module/hasync/plugin/conf/dbservice_sync.xml
將配置項
<file name="/opt/huawei/Bigdata/FusionInsight_V100R002C60U10/dbservice/bak"  delete="no"/>
修改爲:
<file name="/opt/huawei/Bigdata/FusionInsight_V100R002C60U10/dbservice/bak"/>
去掉delete="no"參數
3. 執行ps -ef |grep ha.bin| grep dbservice 找出ha.bin進程kill掉
例如:

 

執行kill -9 39396
4. 在備DBServer節點上重複執行以上1~3步操作
5. 等待約2~3min,待主備dbservice節點的ha.bin進程重啓後,再在主DBServer節點上執行以下命令
source /opt/huawei/Bigdata/FusionInsight/dbservice/.dbservice_profile 
sh /opt/huawei/Bigdata/FusionInsight/dbservice/sbin/dbservice_backup.sh -b
輸出以下結果表示備份成功
Start dbservice backup.
Back up database successfully.
Backup file had been saved to V100R002C60U10_DBSERVICE_20161031113706.tar.gz
Backup file had been synchronized to standby DBService.



4.2 最終解決措施[Solution]

  1. 60U10SPC003補丁,預計發佈時間:2017年1月30日。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章