CDH6.0、6.1篇:5、CDH的使用(hadoop ha、yarn ha)

本文分3個部分闡述

1.使用CDH注意事項

2.Hadoop HA 搭建

3.YARN HA 搭建

----------------------------------------分割線-------------------------------------------------------------

1.使用CDH注意事項

1.每臺機器:根據aliyun提供的服務進行 時間同步:ntpdate -u ntp6.aliyun.com

1.先同步阿里雲時間,再執行啓動ntpd服務爲好,
才能保證ntpd服務正常啓動:ntpdate -u ntp6.aliyun.com 

2.啓動服務 systemctl start ntpd、重啓服務systemctl restart ntpd、關閉服務systemctl stop ntpd  
  查看是否啓動 ps -ef | grep ntpd
  開機啓動 systemctl enable ntpd.service 
  查看時間同步狀態 ntpstat 
  
3.查看時間:date 或 timedatectl

注意:每個節點執行ntpstat 和 timedatectl 都顯示同步並且時間相同,那麼CDH才能正常使用。
每次ntp服務同步到外部授時中心都要一段時間(5~10分鐘),只有當NTP server(node1)節點和其他的NTP client(node2、node3)節點都顯示同步成功之後,
CM頁面中的每臺機器纔不會報錯。可通過timedatectl查看到當前節點是否同步成功:如果顯示 NTP enabled: yes 和 NTP synchronized: yes 才表示成功。

2.必須保證MySQL啓動了,才能正常啓動Cloudera Manager Server:service mysql start 和 service mysql status

3.node1主節點:啓動Cloudera Manager Server

一般機器啓動時,Cloudera Manager Server便會自動啓動,因此無需手動啓動
systemctl start cloudera-scm-server
啓動之後需要一段時間才能完全整個啓動(一般一分鐘之內),纔可以訪問到 192.168.88.100:7180/cmf/login
systemctl stop cloudera-scm-server
建議每次關機之前都先停止 cloudera-scm-server,要麼就掛起
systemctl restart cloudera-scm-server
systemctl status cloudera-scm-server

  • 1.ps -ef | grep cloudera-scm-server 查看是否啓動

  • 2.systemctl status cloudera-scm-server 查看啓動狀態,啓動正常顯示 Active: active (running)

  • 3.cloudera-scm-server 默認使用的端口 7180,那麼就可以通過 192.168.88.100:7180/cmf/login 訪問 CM

  • 4.netstat -lnpt | grep 7180 只要被使用時才能訪問到 192.168.88.100:7180/cmf/login

正常顯示 tcp 0 0 0.0.0.0:7180 0.0.0.0:* LISTEN 68289/java

在這裏插入圖片描述

3.所有機器的時間同步

  • 1.ntpdate -u ntp6.aliyun.com 同步阿里雲時間

  • 2.timedatectl 查看當前時間和NTP服務的同步狀態,需要顯示爲 NTP enabled: yes 和 NTP synchronized: yes 才表示各機器之間的時間服務NTP完全同步

  • 3.如果顯示 NTP enabled: no那麼 啓動服務 systemctl start ntpd,查看是否啓動 ps -ef | grep ntpd

  • 4.執行ntpstat每個節點時間服務NTP的同步情況,主節點顯示synchronised to NTP server (xxx.xxx.xxx.xxx)表示成功同步外部的授時中心 其他子節點顯示synchronised to NTP server
    (主節點IP)表示其他子節點同步主節點的時間,如果顯示unsynchronised表示沒有同步成功,這時可選擇systemctl
    restart ntpd

  • 5.注意:ntpd服務啓動後,主節點一般需要15分鐘才能同步上外部的授時中心,其他子節點同樣可能需要15分鐘才同步上主節點時鐘

4.通過 192.168.88.100:7180/cmf/login 訪問 CM

1.HDFS:
1.dfs.permissions 檢查 HDFS 權限
操作:關閉權限檢查,選擇 不勾選
在這裏插入圖片描述2.HDFS/Hive:

問題:Canary 測試無法在目錄 /tmp/.cloudera_health_monitoring_canary_files 中創建文件
解決:經過查看日誌,發現 Name node is in safe mode. 
sudo -u hdfs hdfs dfsadmin -safemode leave 
然後重啓HDFS,注意可能還要等一段時間CDH纔會重新顯示hive爲正常(綠色)

2.Hadoop HA 搭建

在這裏插入圖片描述
在這裏插入圖片描述在這裏插入圖片描述

dfs.namenode.edits.dir (NameNode 編輯目錄) : 
 寫入 NameNode 編輯的本地文件系統上的目錄。未指定將存放在namenode數據目錄中。
dfs.journalnode.edits.dir (JournalNode 編輯目錄):
用於存儲 NameNode 編輯的本地文件系統目錄。journalnode所在節點的目錄,存放editlog和其他信息。

在這裏插入圖片描述
在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述在這裏插入圖片描述

3.YARN HA 搭建

在這裏插入圖片描述在這裏插入圖片描述

問題記錄

1.在使用 yarn HA時,運行 hive on yarn 的任務無法得出結果時,並且出現以下錯誤

Caused by:javax.servlet.ServletException: Could not determine the proxy server for redirection
問題:無法確定用於重定向的代理服務器
解決:禁用 YARN HA,即ResourceManager只使用一個主節點,其實一般yarn HA仍然能運行 hive on yarn 的任務並且能得出正常結果,但是還是會報出同樣錯誤

在這裏插入圖片描述在這裏插入圖片描述

2.當前運行的環境是 YARN HA(node1、node2均部署了ResourceManager)的情況下,執行 hive on spark 的程序,雖然能得出正常執行成功得出結果

但是對應該程序的日誌信息仍然報錯:無法確定用於重定向的代理服務器

 Could not determine the proxy server for redirection。
select * from test_tb;
select count(*) from test_tb;
insert into test_tb values(2,'ushionagisa');

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章