市場上免費大數據框架主要有三個版本,原生的 Apache 版本,Cloudera(https://www.cloudera.com/) 公司研發的(Cloudera Distribution Hadoop,簡稱「CDH」)CDH 版本,也是市場上使用最多的,Hortonworks 版本(Hortonworks Data Platform,簡稱「HDP」)html
cm-cloudera managerment 下載地址:https://www.cloudera.com/downloads/manager/5-16-1.html
cdh-5.16.1 載地址:http://archive.cloudera.com/cdh5/parcels/5.16.1/java
(1) 網絡配置python
vi /etc/hosts
(2) SSH 免密碼登陸mysql
# 全部設備生成公鑰 ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa # 直接遠程受權,這樣 master 經過 ssh 就能夠遠程登陸本機了,全部設備(包括本身)均拷貝公鑰到 master ssh-copy-id root@master # 將 master 的公鑰分發到全部設備上,這樣全部的設備就互相互信完成了 scp ~/.ssh/authorized_keys root@slave1
更多 SSH 免密碼登陸詳見:http://www.javashuo.com/article/p-kgaljetd-bk.htmllinux
(3) 關閉防火牆和 SELINUXweb
# 關閉防火牆 systemctl stop firewalld systemctl disable firewalld # 永久關閉防火牆 # 關閉 SELINUX setenforce 0 vi /etc/selinux/config (SELINUX=disabled)
(4) 安裝 JDKsql
(5) 安裝 MySQLshell
MySQL 版本選擇 5.6,安裝詳見:http://www.javashuo.com/article/p-ylbguaqe-bd.html數據庫
(6) ntp 時間同步centos
yum install ntp # 安裝 ntp systemctl start ntpd # 啓動 systemctl enable ntpd # 設置開機自啓動
ntp 時間同步配置:修改 /etc/ntp.conf 文件,註釋掉外網時間服務器,添加本地服務器便可
vi /etc/ntp.conf server 192.168.180.190 # 添加此行 #server 0.centos.pool.ntp.org iburst # 如下四行註釋掉 #server 1.centos.pool.ntp.org iburst #server 2.centos.pool.ntp.org iburst #server 3.centos.pool.ntp.org iburst
(7) 下載依賴包
CentOS 須要安裝如下依賴,若是是其它操做系統可能不同
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb
(1) 安裝 Cloudera Manager Server 和 Agent
mkdir -p /opt/cloudera-manager tar -zxvf cloudera-manager-el7-cm5.16.1_x86_64.tar.gz -C /opt/cloudera-manager/ # 修改 CM 的配置文件 vi /opt/cloudera-manager/cm-5.16.1/etc/cloudera-scm-agent server_host=CDH-01 server_port=7182 # 分發 scp -r /opt/cloudera-manager root@CDH-02:/opt scp -r /opt/cloudera-manager root@CDH-03:/opt
(2) 建立用戶(用戶名固定 cloudera-scm)
useradd --system # 表示建立的是一個系統用戶 --no-create-home # 不在建立主目錄 --shell=/bin/false # 不做用服務器的登錄用戶 --comment "Cloudera SCM User" # 備註 cloudera-scm # 用戶名
驗證:
cat /etc/passwd | grep cloudera-scm
(3) 配置 CM Server 數據庫
# 執行下面的命令後會建立 scm 的數據庫和 scm 的帳號 /opt/cloudera-manager/cm-5.16.1/share/cmf/schema/scm_prepare_database.sh -h CDH-01 -uroot -p123456 --scm-host CDH-01 mysql scm scm scm
報錯: 缺乏驅動包 java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
解決:
將驅動包放入當前服務器的 /usr/share/java 目錄下,將分發到其到節點上。CM 管理的集羣(hive sqoop)都會默認到 /usr/share/java 下找驅動包。 注意:mysql-connector-java.jar 名稱不能更改
(3) 建立 Parcel 源
1)建立目錄 mkdir -p /opt/cloudera/parcel-repo # 在 server上建立 mkdir -p /opt/cloudera/parcels # 在全部的 agent 節點上建立 mkdir -p /opt/cloudera-manager/cm-5.16.1/run/cloudera-scm-agent # 在全部的 agent 節點上建立 2)將 CDH 的源移動到 sever 的 parcel-repo 目錄下 3)修改校驗碼文件名稱 mv CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha1 CDH-5.16.1-1.cdh5.16.1.p0.3-el7.parcel.sha 4)修改 parcel-repo parcels 目錄的所屬人 chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/ # 在 server 上 chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcels # 在 agent 上
(4) 啓動 CM Server 和 Agent
# 啓動 server 和 agent 服務 /opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-server start /opt/cloudera-manager/cm-5.16.1/etc/init.d/cloudera-scm-agent start
日誌查看 tail –f /opt/cloudera-manager/cm-5.16.1/log/cloudera-scm-server/cloudera-scm-server.log
web 頁面 192.168.180.100:7180
天天用心記錄一點點。內容也許不重要,但習慣很重要!