官網介紹了三種安裝方式,
A方式用於非生產環境自動安裝,B是package安裝,C是tar包安裝 由於習慣等因素,我選擇了使用tar包安裝。現將安裝過程當中遇到的問題記錄下來,也給有須要的人提供個參考。
具體的操做過程參考官方文檔https://www.cloudera.com/docu...
以及如下幾個參考文章:
http://www.cnblogs.com/jasond...
http://blog.csdn.net/a921122/...html
注:文章中部分圖片使用的是安裝5.13.0版本時的圖片,可是操做是同樣的,請不要糾結這些細節。
大概的流程以下:java
一、修改主機名,設置集羣hostmysql
修改主機名,並使之生效 修改:vim etc/sysconfig/network
使之生效:source etc/sysconfig/network 統一設置集羣host(修改集羣中每一個節點的hosts文件):vim /etc/hosts
二、時間同步sql
使用ntp服務,使集羣中節點的時間一致。兩種同步方式: 2.一、分別跟時間服務器進行時間同步。 2.二、主從模式:設置其中一臺爲master,對外時間同步,其餘保持跟master時間同步。 若是條件容許,最好使用後者。
三、設置防火牆shell
網上的作法通常是關閉防火牆,實際應用中每每不能直接關掉。可設置防火牆規則,消除內網之間的隔離。具體使用哪一種方式,根據自身狀況決定。 3.1:關閉防火牆 即時生效,重啓後會復原:`service iptables stop` 永久生效:`chkconfig iptables off` 3.2:設置防火牆規則,容許內網間訪問。 修改:在/etc/sysconfig/iptables中加入`-A INPUT -s 192.168.1.0/24 -j ACCEPT` ,192.168.1.0/24更改成本身的網段/子網掩碼位數。 重啓防火牆:`service iptables restart`
四、設置集羣免密登陸數據庫
4.1 檢測本地是否能夠免密登陸 執行:ssh localhost,如不須要輸入密碼,則可免密登陸 4.2 建立登陸的公鑰和私鑰 執行:`ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa` 公鑰放在id_dsa.pub中,私鑰放在id_dsa中 4.3 本地免密登陸 將公鑰追加到已認證信息中:`cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys` 4.4 跨主機免密登陸 在host28上執行:`scp ~/.ssh/id_dsa.pub root@host29:~/.ssh/`, 輸入host29的密碼 在host29上執行:`cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys` 將公鑰追加到已認證信息中 4.5 在全部節點上執行上述操做 4.6 失敗記錄:都設置好後仍是不能免密登陸。查看日誌less /var/log/secure 失敗緣由:Authentication refused: bad ownership or modes for directory /root
查找問題,發現root文件夾的全部者和用戶組改變了
執行命令:chown root.root /root/ 改回來就能夠了
五、安裝jdk
注意安裝oracle jdk,非openjdk。
具體操做參考https://segmentfault.com/a/11...json
一、下載
去官網下載安裝包,官網地址:https://www.cloudera.com/docu...
vim
在下載頁面找到對應環境的安裝包地址:segmentfault
wget https://archive.cloudera.com/cm5/cm/5/cloudera-manager-el6-cm5.13.1_x86_64.tar.gz
二、解壓並移動到安裝目錄
解壓tar包:tar -zxvf cloudera-manager-el6-cm5.13.1_x86_64.tar.gz
瀏覽器
解壓後有cloudera和cm-5.13.1兩個目錄
移動這兩個目錄到安裝目錄下,如/opt: mv cloudera cm-5.13.1 /opt/
三、準備cdh安裝包(共三個文件)
下載地址:http://archive.cloudera.com/c...
wget http://archive.cloudera.com/cdh5/parcels/latest/CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel wget http://archive.cloudera.com/cdh5/parcels/latest/CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha1 wget http://archive.cloudera.com/cdh5/parcels/latest/manifest.json
把安裝包放到/opt/cloudera/parcel-repo/目錄下:`mv CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha manifest.json /opt/cloudera/parcel-repo/` 並修改CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha1名稱爲CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha,不然識別不到,選擇CDH版本的時候看不到:`mv CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha1 CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha`
四、準備mysql connector
官網:https://dev.mysql.com/downloads/connector 下載:`wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.45.tar.gz` 解壓:`tar -zxvf mysql-connector-java-5.1.45.tar.gz`
放到/usr/shara/java目錄下(先查看目錄是存在,不存在先建立目錄):`cp mysql-connector-java-5.1.45-bin.jar /usr/share/java/mysql-connector-java.jar` 或者放到目錄/opt/cm-5.13.1/share/cmf/lib/下。 前者安裝hive的時候能夠直接使用,後者會找不到,須要再執行一次命令:`cp /opt/cm-5.13.1/share/cmf/lib/mysql-connector-java-5.1.45-bin.jar /opt/cloudera/parcels/CDH-5.13.1-1.cdh5.13.1.p0.2/lib/hive/lib/`
五、配置agnent :vim /opt/cm-5.13.1/etc/cloudera-scm-agent/config.ini
server_host爲cm server的主機名或ip server_port爲server的通信端口,默認爲7182
六、 複製agent到其餘節點
scp -r /opt/cm-5.13.1 host30:/opt
七、在全部節點上建立用戶cloudera-scm
useradd --system --home=/opt/cm-5.13.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
八、 設置數據庫信息
8.1 在mysql上新建數據庫:cmf(cloudera manage數據庫)、hive(hive數據庫)、amon(cloudera Acrivity Monitor使用)、rman(cloudera Reports Manager使用) 8.2 設置cmf鏈接信息:`/opt/cm-5.13.1/share/cmf/schema/scm_prepare_database.sh mysql -hhost29 --scm-host host28 cmf usrname password` 命令說明:/opt/cm-5.13.1/share/cmf/schema/scm_prepare_database.sh 數據庫類型 -h數據庫主機 --scm-host cm主機 數據庫名稱 用戶名 密碼 具體參數可參看官網[https://www.cloudera.com/documentation/enterprise/latest/topics/cm_ig_installing_configuring_dbs.html#concept_i2r_m3m_hn__section_qjj_pyp_bm][3] 8.3 查看配置文件,發現信息已寫入:`vim cm-5.13.1/etc/cloudera-scm-server/db.properties`
九、啓動
啓動server: /opt/cm-5.13.1/etc/init.d/cloudera-scm-server start
啓動agent: /opt/cm-5.13.1/etc/init.d/cloudera-scm-agent start
一、 登陸cm
在瀏覽器輸入http://192.168.5.28:7180登陸cm(ip替換爲cm server主機ip,端口爲server的http服務端口,默認爲7180),用戶名密碼均爲admin
二、 選擇要安裝的cm版本
選擇免費或者試用版均可以,若是沒有用到高級功能 ,試用版到期也沒什麼影響,可繼續使用。
三、 羣集安裝
各個節點正常啓動後,能夠在當前管理的主機列表中看到對應的節點。選擇你要使用的節點就能夠了,基本上全選。
選擇CDH版本這裏會顯示你放在/opt/cloudera/parcel-repo/下的parcel包,若未顯示,則檢查CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha1是否名稱未改成CDH-5.13.1-1.cdh5.13.1.p0.2-el6.parcel.sha,修改以後重啓server服務和agent服務。
這裏第一個和第二個警告,按頁面提示的設置方法設置便可,第三個警告是jdk版本不對,不能使用openjdk,須要oracle jdk。
每一個節點上都設置一下:
執行:`echo 10 > /proc/sys/vm/swappiness` 並編輯文件sysctl.conf:`vim /etc/sysctl.conf`,添加或修改vm.swappiness = 0
執行: echo never > /sys/kernel/mm/transparent_hugepage/defrag echo never > /sys/kernel/mm/transparent_hugepage/enabled 並編輯文件rc.local :`vim /etc/rc.local`
若安裝過程當中中斷,再次繼續安裝時,可能出現主機受管狀況:
此時中止全部cm服務,刪除cmf數據庫,從新初始化cmf數據庫便可。
刪除數據庫:進入mysql,執行drop database cmf
;
卸載掛載點:umount cm-5.13.1/run/cloudera-scm-agent/process
清除所欲節點的agent uuid信息:rm -rf cm-5.13.1/lib/cloudera-scm-agent/*
注意:必定要先卸載掛載點,不然會提示沒法刪除:rm: 沒法刪除"cm-5.13.1/run/cloudera-scm-agent/process": 設備或資源忙
選擇要安裝的服務,可直接選擇組安裝,或自定義安裝
填寫事先建好的數據庫信息
繼續操做,保持默認選項便可。
注意: 若修改了hdfs的存儲文件夾,必定要肯定文件夾已經存在,並確保訪問權限。否側hdfs會沒法啓動,而且報錯文件夾不存在。
一、No portmap or rpcbind service is running on this host. Please start portmap or rpcbind service before attempting to start the NFS Gateway role on this host.
在安裝 NFS Gateway那個節點上安裝rpcbind: 安裝:`yum install rpcbind` 啓動:`service rpcbind start`
二、
在安裝Hive Metastore Server服務的那臺機器上操做: cp /opt/cm-5.13.1/share/cmf/lib/mysql-connector-java-5.1.45-bin.jar /opt/cloudera/parcels/CDH-5.13.1-1.cdh5.13.1.p0.2/lib/hive/lib/