018-CDH6.2構建本地源加速CDH安裝
這是堅持技術寫作計劃(含翻譯)的第18篇,定個小目標999,每週最少2篇。
目前國內還沒有機構或者個人提供CDH的公共加速源,導致CDH安裝時超慢,並且一旦失敗後,還得不支援斷點安裝(linux機制),配置CDH本地repo是學習cdh的第一步,否則單是安裝就需要以小時為單位。
本文以ubuntu16.04為例(其餘發行版類似)
建立內網repo
配置web伺服器
可以用apache2,也可以用nginx,任何提供http服務的都可以
$ sudo apt-get install -y apache2 $ sudo systemctl start apache2
下載和釋出package repo
-
下載
manifest.json
和parcel 檔案CDH6
CDH 6 parcel中包含 Apache Impala, Apache Kudu, Apache Spark 2, and Cloudera Search等元件,以6.2.0為例,在web伺服器上執行下面指令,用來下載最新版的cdh 6.2,如果要換成cdh6.x的其他版本,只需要替換命令中的6.2.0
即可。更多6.x版本資訊參見CDH 6 Download Information
。
$ sudo mkdir -p /var/www/html/cloudera-repos $ sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/cdh6/6.2.0/parcels/ -P /var/www/html/cloudera-repos $ sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/gplextras6/6.2.0/parcels/ -P /var/www/html/cloudera-repos $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/cdh6 $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/gplextras6
**CDH5** <br />CDH 5 parcel中包含 Impala, Kudu, Spark 1, and Search 等元件,以5.14.4為例,在web伺服器上執行以下指令,如果要換成cdh5.x的其他版本,需要替換命令中的 `5.14.4` 為指定版本號,更多5.x版本資訊參見 [CDH Download Information](https://www.cloudera.com/documentation/enterprise/release-notes/topics/cdh_vd_cdh_download.html)
$ sudo mkdir -p /var/www/html/cloudera-repos $ sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/cdh5/parcels/5.14.4/ -P /var/www/html/cloudera-repos $ sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/gplextras5/parcels/5.14.4/ -P /var/www/html/cloudera-repos $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/cdh5 $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/gplextras5
如果像本文例項一樣,只需支援單一版本(ubuntu16.04)cdh即可,為了節省時間,可以只下載具體版本。
以CDH6的為例,增加--accept-regex "xenial|manifest"
,代表只下載包含xenial和maifest的檔案
# 官方命令 sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/cdh6/6.2.0/parcels/ -P /var/www/html/cloudera-repos # 改後命令 sudo wget --recursive --no-parent --accept-regex "xenial|manifest" --no-host-directories https://archive.cloudera.com/cdh6/6.2.0/parcels/ -P /var/www/html/cloudera-repos
如果想再快點,可以使用迅雷,axel,aria2等多執行緒工具快速下載後,上傳到web伺服器。
Apache Accumulo for CDH以下載Accumulo1.7.2為例,如果換成別的版本,替換命令中1.7.2即可
$ sudo mkdir -p /var/www/html/cloudera-repos $ sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/accumulo-c5/parcels/1.7.2/ -P /var/www/html/cloudera-repos $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/accumulo-c5
**CDS Powered By Apache Spark 2 for CDH** <br />以下載CDS2.3.0.cloudera3為例,更多版本資訊參見[CDS Powered By Apache Spark Version Information](https://www.cloudera.com/documentation/spark2/latest/topics/spark2_packaging.html#versions)
$ sudo mkdir -p /var/www/html/cloudera-repos $ sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/spark2/parcels/2.3.0.cloudera3/ -P /var/www/html/cloudera-repos $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/spark2
**Cloudera Navigator Key Trustee Server** <br /> Key Trustee KMS parcel中包含Cloudera Navigator HSM KMS ,從 [download page](http://www.cloudera.com/content/www/en-us/downloads/navigator/key-trustee-kms.html) 下載Key Trustee KMS,選擇指定Version,比如 `Navigator Key Trustee KMS 6.2.0` ,選擇Package or Parcel,選擇 `Parcel` ,選擇 `DOWNLOAD NOW` ,將下載Key Trustee KMS parcels 和 manifest.json ,將下載的 `.tar.gz` 上傳到web伺服器上,並解壓,以Key Trustee KMS 6.2.0為例
$ sudo mkdir -p /var/www/html/cloudera-repos/keytrustee-kms $ sudo tar xvfz /path/to/keytrustee-kms-6.2.0-parcels.tar.gz -C /var/www/html/cloudera-repos/keytrustee-kms --strip-components=1 $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/keytrustee-kms
**Sqoop Connectors** <br />以下載最新版Sqoop為例
$ sudo mkdir -p /var/www/html/cloudera-repos $ sudo wget --recursive --no-parent --no-host-directories http://archive.cloudera.com/sqoop-connectors/parcels/latest/ -P /var/www/html/cloudera-repos $ sudo chmod -R ugo+rX /var/www/html/cloudera-repos/sqoop-connectors
-
訪問repo地址
http://<Web_server>/cloudera-repos/
確保你下載的檔案能夠正常訪問。
配置Cloudera Manager 使用Parcel repo
-
兩種方法二選一,配置parcel
-
Navigation bar - 導航條
-
點選navigation bar 的parcel圖示或者點選
Hosts
然後點選Parcels
標籤 -
點選
Configuration
按鈕
-
點選navigation bar 的parcel圖示或者點選
-
Menu - 選單
-
選擇
Administration
(管理) ->Settings
(設定) -
選擇
Category
>Parcels
-
選擇
-
Navigation bar - 導航條
-
在
Remote Pacel Respository URLs
點選新增按鈕,並新增。 -
填上parcel地址,比如
http://<web_server>/cloudera-parcels/cdh6/6.2.0/
-
填寫
Reason for change
變更原因,點選Save Changes
提交儲存。