hello everyone,我是半路入坑的二手大數據工程師邢波,很高興能夠在知乎上為大家分享關於大數據的一系列知識,今天是第一次使用知乎平台進行分享(之前在CDSN,博主也是邢波),後期我會持續發送大數據基礎版和進階版,包括MAX C的系統的知識,足夠幫助您從小白進階為一名合格的數據從業人員,今天主要和大家分享的的是關於CM搭建的知識。

Cloudera Manager是一個管理CDH的端到端的應用,其重要作用我就不用在多說了。

CM框架圖,來源不明

CM框架中包含諸多組件。Server主要是管理控制台伺服器和應用程序邏輯,負責軟體安裝、配置 ,啟動和停止服務和管理服務運行的群集,是最核心的部分。

Agent需要安裝在每台主機上,主要負責啟動和停止進程,配置,監控主機

Management Service ,由一組角色組成的服務,執行各種監視、報警和報告功能

Database ,Cloudera ,Clients我就不早複述了。

接下來我就介紹詳細的部署過程。過程分為兩個部分,系統環境準備和CM安裝。

通過Xshell手動SSH登錄各個伺服器。切記不要使用Xshll的一鍵登錄。 ssh [email protected]

系統環境準備

1、網路配置,實現主機名稱和域名的綁定。 vi /etc/sysconfig/network vi /etc/hosts 2、SSH免密鑰登錄

查看家目錄下是否存在.ssh目錄

cd .ssh 沒有通過命令創建目錄 ssh localhost 創建公鑰秘鑰 ssh-keygen -t rsa -P -f ~/.ssh/id_rsa 分發 ssh-copy-id 其他主機名/本機名 /. ssh scp authorized_keys node01:`pwd` scp authorized_keys node03:`pwd`

3、防火牆關閉

service iptables stop chkconfig iptables off 4、SELINUX關閉 setenforce 0 vi /etc/selinux/config (SELINUX=disabled)jdk安裝 環境變數JAVA_HOME 路徑/usr/java/default配置文件 vi /etc/profile

5、安裝JDK配置環境變數 export JAVA_HOME=/usr/java/default export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 6、安裝NTP 設置開機啟動 chkconfig ntpd on 設置時間同步 ntpdate 202.120.2.101 7、安裝配置mysql yum install mysql-server 在第一台配置較好的機器

service mysqld start 啟動

刪除user中免密登錄的全量定義。 GRANT ALL PRIVILEGES ON *.* TO root@% IDENTIFIED BY 123 WITH GRANT OPTION; flush privileges;8、下載第三方依賴包 所有集群 yum install -y chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsbClouderaManager安裝將相關文件傳輸到 node01中/root/install1、安裝Cloudera Manager Server、Agent

所有集群

mkdir /opt/cloudera-manager node01 tar xvzf cloudera-manager*.tar.gz -C /opt/cloudera-manager2、配置CM Agent修改文件,通知server是哪個節點。 /opt/cloudera-manager/cm-5.4.3/etc/cloudera-scm-agent/config.ini中server_host3、創建用戶cloudera-scm 所有集群 useradd --system --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm 創建的該用戶不能登錄,非前台用戶,用來綁定幾點資源的和進程。4、創建Parcel目錄

Server節點 node01

mkdir -p /opt/cloudera/parcel-repo chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo Agent節點 所有集群 mkdir -p /opt/cloudera/parcels chown cloudera-scm:cloudera-scm /opt/cloudera/parcels5、配置CM Server資料庫 拷貝mysql-c的jar文件到目錄 /usr/share/java/ mv ~/install/m... ./ mv命令改名

注意jar包名稱要修改為mysql-connector-java.jar

連接mysql資料庫創建用戶 grant all on *.* to temp@% identified by temp with grant option; cd /opt/cloudera-manager/cm-5.4.3/share/cmf/schema/ ./scm_prepare_database.sh mysql temp -h node01 -utemp -ptemp --scm-host node01 scm scm scm (根據參數寫資料庫配置) 格式:資料庫類型、資料庫、資料庫伺服器、用戶名、密碼、cm server伺服器6、製作CDH本地源 下載好文件CDH-5.4.0-1.cdh5.4.0.p0.27-el6.parcel以及manifest.json,將這兩個文件放到server節點的/opt/cloudera/parcel-repo下。

mv ~/install/CDH* ./

mv ~/install/*.json ./ 兩個都是校驗文件,打開manifest.json文件,裡面是json格式的配置,找到與下載版本相對應的hash碼,新建文件,文件名與你的parel包名一致,並加上.sha後綴,將hash碼複製到文件中保存。注意:啟動前分發到node02 03。啟動後分發有些文件已經更改了,而且id也是第一台設備的,其他伺服器無法分辨。 /opt/cloudera-manager/ scp -r ./* node02:`pwd` scp -r ./* node03:`pwd`7、啟動CM Server、Agent cd /opt/cloudera-manager/cm-5.4.3/etc/init.d/ ./cloudera-scm-server start Sever首次啟動會自動創建表以及數據,不要立即關閉或重啟,否則需要刪除所有表及數據重新安裝 ./cloudera-scm-agent start或者統一命令 直到 started jetty server/opt/cloudera-manager/cm-5.4.3/etc/init.d/cloudera-scm-agent start檢驗 看server的log cd /opt/cloudera-manager/cm-5.4.3/log

以上是所有步驟,如果有不明白的朋友可以隨時聯繫我,我會第一時間幫大家解決。謝謝您的關注。


推薦閱讀:
相关文章