Hadoop - 企業級大數據管理平臺CDH(介紹和準備工作) 原 薦

哈嘍大家好呀,僅經過了一段時間大數據相關的博文又和大家見面了,筆者之前有寫過一套Hadoop大數據相關的博客,爲什麼今天又要開坑呢?當然是有原因,隨着不斷的學習瞭解,慢慢意識到之前做法存在很多缺陷,最終對比了比較成熟的解決方案EMR和CDH,最終選擇了使用CDH來搭建大數據管理平臺,那麼我們就開始新的一趴,企業級大數據管理平臺CDH的學習吧!

附上:

喵了個咪的博客:w-blog.cn

cloudera官網: https://www.cloudera.com/

官方文檔地址: https://www.cloudera.com/documentation/enterprise/latest.html

一 , CDN介紹和解決的問題

CDH是由cloudera進行開發的大數據一站式平臺管理解決方案,基於Hadoop生態的第三方發行版本,這樣的描述相信大家還是挺難理解的,我們一起來梳理下CDH帶來的改觀.

作坊和工廠有什麼區別? 一個是做出來東西就好了,一個是精細化流水線生產

用這個來對比自建Hadoop和CDH再好不過,要理解其中的區別我們需要先對CDH有個基礎的認知,先從瞭解CDH解決了常見的什麼問題

組件兼容

  • 複雜的生態環境。在Hadoop生態圈中,組件的選擇、使用,比如Hive,Mahout,Sqoop,Flume,Spark,Oozie等等,需要大量考慮兼容性的問題,版本是否兼容,組件是否有衝突,編譯是否能通過等。經常會浪費大量的時間去編譯組件,解決版本衝突問題。
  • CDH每個版本都會有兼容認證都是經過嚴格的測試之後公佈的,理論上來說只要統一CDH版本就不會出現兼容問題

穩定安全

  • 不同的版本會有不同的漏洞很容易被被利用,又不敢輕易更新
  • 版本更新快。通常情況,比如CDH每個季度會有一個update,每一年會有一個release。基於穩定版本Apache Hadoop,並應用了最新Bug修復或Feature的patch

安裝配置管理

  • 複雜的集羣部署、安裝、配置。通常按照集羣需要編寫大量的配置文件,分發到每一臺節點上,容易出錯,效率低下,還需要大量的查閱資料文檔。
  • 統一的網頁進行安裝配置,非常詳細的文檔以及配置的分類註解以及推薦配置(基本都已經是最優配置)

資源監控管理運維

  • 複雜的集羣運維。對集羣的監控,運維,需要安裝第三方的其他軟件,如ganglia,nagois等,運維難度較大。
  • 運維簡單。提供了管理、監控、診斷、配置修改的工具,管理配置方便,定位問題快速、準確,使運維工作簡單,有效。

企業服務

  • 只能求助社區的幫助,響應差,解決問題需要碰運氣.
  • 代碼基於Apache協議,100%開源。同時提供企業付費服務一對一支持,作爲保障的後盾

PS: 使用CDH部署集羣不能代替對各個組件進行單獨的學習瞭解的工作,非常推薦大家從單個組件安裝部署開始最後在統一使用CDH部署

二 , 準備工作

環境準備

  • CentOS 7.4 64位
  • JDK 1.8
  • Cloudera Manager 5.15.0

需要準備一臺cm服務器 兩臺master服務器 使用三臺節點服務器

服務器最低要求 4核心8G

所有節點修改hostname

> hostnamectl --static set-hostname cm
> hostnamectl --static set-hostname master-1
> hostnamectl --static set-hostname master-2
> hostnamectl --static set-hostname slave-1
> hostnamectl --static set-hostname slave-2
> hostnamectl --static set-hostname slave-3

修改節點的hosts可以直接通過主機名進行訪問

> vim /etc/hosts
# 修改爲大家自己服務器的IP地址
192.168.3.10 cm 
192.168.3.21 master-1
192.168.3.22 master-2
192.168.3.31 slave-1
192.168.3.32 slave-2
192.168.3.33 slave-3

依賴文件安裝包準備

> mkdir -p  /app/install
> cd /app/install
> wget http://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.15.0_x86_64.tar.gz
> wget http://archive.cloudera.com/cdh5/parcels/5.15.0/CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel
> wget http://archive.cloudera.com/cdh5/parcels/5.15.0/CDH-5.15.0-1.cdh5.15.0.p0.21-el7.parcel.sha1
> wget http://pic.w-blog.cn/mysql-connector-java.jar

JDK1.8需要自行下載 jdk-8u101-linux-x64.tar.gz

最終我們可以看到有如下文件:

下載慢可選多線程下載工具 axel

cd /app/install
wget http://www.ha97.com/code/axel-2.4.tar.gz
tar zxvf axel-2.4.tar.gz
cd axel-2.4
./configure
make
make install
cd ..

所有節點關閉防火牆和selinux

關閉防火牆:

systemctl stop firewalld.service
systemctl disable firewalld.service
firewall-cmd --state

關閉selinux:

vim /etc/selinux/config

找到SELINUX改爲:
SELINUX=disabled

所有節點ssh免密碼登錄

先在cm 上執行:

ssh-keygen -t rsa   #一路回車到完成
ssh-copy-id -i ~/.ssh/id_rsa.pub root@cm   #將公鑰拷貝到本機的authorized_keys上

再在其他節點分別執行以下命令:

注意此處不變,將公鑰拷貝到cm的authorized_k

ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub root@cm  

在CM上,將authorized_keys分發到其他節點服務器:

scp ~/.ssh/authorized_keys root@master-1:~/.ssh/
scp ~/.ssh/authorized_keys root@master-2:~/.ssh/
scp ~/.ssh/authorized_keys root@slave-1:~/.ssh/
scp ~/.ssh/authorized_keys root@slave-2:~/.ssh/
scp ~/.ssh/authorized_keys root@slave-3:~/.ssh/
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章