Fayson的github: https://github.com/fayson/cdhprojectgit
Gateway節點又稱爲客戶端節點,一般用做訪問Hadoop集羣的接口機。它主要會部署一些客戶端的配置,腳本命令,好比HDFS的core-site.xml,hdfs-site.xml以及hadoop的操做命令。github
若是你使用的是Apache Hadoop,你只須要將hadoop相關服務的配置和腳本命令拷貝到客戶端機器便可,但一旦集羣的配置有所修改,你須要注意也同步到客戶端機器。若是是CDH集羣,客戶端節點也會是Cloudera Manager管理的一臺機器,它會被安裝cloudera-scm-agent服務,以及CDH的Parcel,部署客戶端配置Cloudera Manager會統一作,另外若是客戶端機器出現異常,Cloudera Manager也會告警。shell
增長一臺Gateway節點,與安裝CDH很是相似,你必需要注意必定要作好客戶端機器的前置條件準備,參考《CDH安裝前置準備》,不然會增長失敗。前面Fayson介紹過在非Kerberos環境下部署Gateway節點,參考《如何給CDH集羣增長Gateway節點》。本文則主要是介紹如何在Kerberos環境下給CDH集羣增長Gateway節點。oop
內容概述測試
1.建立Gateway節點的主機模板3d
2.Gateway節點的前置準備code
3.增長Gateway節點到集羣並應用主機模板xml
4.GateWay節點命令測試blog
測試環境接口
1.CDH5.13
2.採用root用戶操做
3.CentOS6.5
前置條件
1.CDH5.13集羣運行正常
2.Gateway節點已準備,並準備好前置
1.從Cloudera Manager進入「主機模板」頁面
2.點擊「建立」
3.給模板命名,點擊各個服務勾選相應的GateWay角色
4.點擊「建立」,確認建立成功.
前置準備請參考Fayson以前的文章《CDH安裝前置準備》,主要包括如下步驟:
1.確保OS的yum源能夠正常使用,經過yum repolist命令能夠查看到匹配的OS的全部包
2.確保Cloudera Manager的yum源運行正常
3.hosts文件配置,須要將Gateway節點的IP和hostname加入到CDH集羣節點的hosts文件中,並同步到全部機器包括Gateway節點
4.禁用SELinux
5.關閉防火牆
6.設置swap爲10
7.關閉透明大頁面
8.配置時鐘同步
請務必確保以上操做都已完成,併成功配置,不然接下來的增長節點操做會失敗!
因爲集羣啓用了Kerberos服務,因此須要在Gateway節點安裝Kerberos客戶端。
1.在Gateway節點上執行以下命令
[ec2-user@ip-172-31-31-212opt]$ sudo yum -y install krb5-libskrb5-workstation
安裝成功後查看安裝的RPM包
[ec2-user@ip-172-31-31-212opt]$ rpm -qa |grep krb krb5-workstation-1.15.1-8.el7.x86_64 krb5-libs-1.15.1-8.el7.x86_64 krb5-devel-1.15.1-8.el7.x86_64 [ec2-user@ip-172-31-31-212 opt]$
2.將CM集羣中的krb5.conf文件拷貝至該Gateway節點
[ec2-user@ip-172-31-22-86 ~]$ scp -i fayson.pem.txt /etc/krb5.conf ip-172-31-31-212:/home/ec2-user/
3.在Gateway節點將krb5.conf文件拷貝至/etc目錄下
[ec2-user@ip-172-31-31-212 ~]$ sudo cp krb5.conf /etc/ [ec2-user@ip-172-31-31-212 ~]$ sudo chown root. /etc/krb5.conf [ec2-user@ip-172-31-31-212 ~]$ ll /etc/krb5.conf -rw-r--r-- 1 root root 837 Dec 9 00:28 /etc/krb5.conf [ec2-user@ip-172-31-31-212 ~]$
4.在GateWay節點測試Kerberos客戶端是否部署成功
[ec2-user@ip-172-31-31-212 ~]$ kinit -kt fayson.keytab fayson [ec2-user@ip-172-31-31-212 ~]$ klist Ticket cache: FILE:/tmp/krb5cc_1000 Default principal: fayson@CLOUDERA.COM Valid starting Expires Service principal 12/09/2017 00:31:53 12/10/2017 00:31:53 krbtgt/CLOUDERA.COM@CLOUDERA.COM renew until 12/16/2017 00:31:53 [ec2-user@ip-172-31-31-212 ~]$
有如上圖所示則表示Kerberos客戶端安裝成功。
1.進入「全部主機」頁面
2.點擊「向羣集添加主機」
3.選擇「經典嚮導」
4.繼續
5.輸入Gateway節點的IP或者hostname,點擊搜索
6.點擊「繼續」,選擇「自定義存儲庫」,並輸入Cloudera Manager的yum源http地址
7.點擊「繼續」,勾選Java的兩個選項
8.點擊「繼續」,輸入Gateway節點的ec2-user密碼
9.點擊「繼續」,等待cloudera-scm-agent在Gateway節點上安裝
安裝完成點擊「繼續」
10.點擊「繼續」,等待分發Parcel包並激活
完成後,點擊「繼續」
11.點擊「繼續」,進行主機檢查
12.完成主機檢查,點擊「繼續」,選擇主機模板
13.點擊「繼續」,啓動主機上的角色
等待執行成功
14.點擊「繼續」,部署客戶端配置
15.點擊完成,查看主機列表GateWay節點的角色信息
至此,給Kerberos環境下CDH集羣增長新的Gateway節點完成。
1.HDFS命令測試
[ec2-user@ip-172-31-31-212 ~]$ hadoop fs -ls /
2.HBase命令測試
[ec2-user@ip-172-31-31-212 ~]$ hbase shell
3.Hive命令測試
[ec2-user@ip-172-31-31-212 ~]$ hive
4.hadoop命令向集羣提交做業
[ec2-user@ip-172-31-31-212 ~]$ hadoop jar /opt/cloudera/parcels/CDH/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar pi 5 5
爲天地立心,爲生民立命,爲往聖繼絕學,爲萬世開太平。
推薦關注Hadoop實操,第一時間,分享更多Hadoop乾貨,歡迎轉發和分享。