Cloudera Manager 是 CDH 市場領先的管理平臺。它以其強大的數據管理和分析能力,幫助企業能夠輕松駕馭海量數據,實現數據的實時分析與洞察。
作為業界第一的端到端 Apache Hadoop 的管理應用,Cloudera Manager 對 CDH 的每個部件都提供了細粒度的可視化和控制,從而設立了企業部署的標準。通過 Cloudera Manger,運維人員得以提高集群的性能,提升服務質量,提高合規性并降低管理成本。
今天,我們將帶你深入探索 Cloudera 的安裝規劃與系統環境搭建部署,為你的企業數據之旅鋪設堅實的基石。
但在此之前,我們需要精心規劃、細致部署。接下來,我們將一步步引導你完成 Cloudera 的安裝規劃與系統環境搭建,為企業數據中心的管理變得簡單直觀。
系統環境準備、安裝基礎環境
1.選擇三臺已安裝 Centos6 Liunx 系統的節點,分配資源
安裝 CDH 節點推薦內存為 64G,大部分內存被 Cloudera Management Service 占用,因為做了大量的數據分析和整合。這里,劃分三臺節點如下:
針對目前學習來說:
如果實際的物理機器內存為 32G,推薦 cm Server 內存為 16G,cm Agent 內存分別為 4G。
如果實際的物理機器內存為 16G,推薦 cm Server 內存為 10G,cm Agent 內存分別為 2G。
如果實際的物理機器內存為 12G,推薦 cm Server 內存為 8G,cm Agent 內存分別為 2G。
如果實際的物理機器內存為 8G,推薦 cm Server 內存為 6G,cm Agent 內存分別為 2G。
注意:后兩種情況,實際機器內存不足,需要在 VM 虛擬機中設置允許交換內存。設置方式如下:
在 VMware 中點擊“編輯”->“首選項”,找到內存,預留內存是給當前真實物理 機預留的內存量。在額外內存中,如果實際物理機內存不足 10G 就設置“允許交換大部分虛擬機內存”,設置這個的意思是當虛擬機內存不足時,可以允許內存與磁盤交換數據,從而獲取更多的內存執行當前運行的程序。
截止到這里,以上只是準備好的三臺劃分好內存和核心的空節點。
**注意: **實際物理機器安裝 Vmware 的磁盤至少還要預留 50G 磁盤空間。
2.配置 IP
在每臺節點上配置 ip,打開 /etc/sysconfig/network-scripts/ifcfg-eth0 編輯內容如下:
重啟網絡服務使 ip 生效:
三臺節點配置的 ip 分別為:
*192.168.179.201
*192.168.179.202
*192.168.179.203
注意:每臺節點克隆后需要刪除每臺節點/etc/udev/rules.d/70-persistent-net.rules 文件,清除 mac 地址。重啟每臺節點即可。
3.配置每臺節點的 hostname
修改每臺節點/etc/sysconfig/network 中的 HOSTNAME,分別為:cm1,cm2,cm3。設置好每臺節點的 hostname 之后重啟每臺節點即可生效。
4.配置節點 ip、hostname 映射
在每臺節點/etc/hosts 文件后追加如下內容,配置 ip 與 hostname 之間的映射。
5.關閉防火墻
在每臺節點上執行如下命令,關閉防火墻,并設置開機不啟動:
6.關閉 SELinux
SELinux 就是 Security-Enhanced Linux 的簡稱,安全加強的 linux。傳統的 linux 權限是對文件和目錄的 owner, group 和 other 的 rwx 進行控制,而 SELinux 采用的是委任式訪問控制,也就是控制一個進程對具體文件系統上面的 文件和目錄的訪問,SELinux 規定了很多的規則,來決定哪個進程可以訪問哪些 文件和目錄。雖然 SELinux 很好用,但是在多數情況我們還是將其關閉,因為在 不了解其機制的情況下使用 SELinux 會導致軟件安裝或者應用部署失敗。
在每臺節點/etc/selinux/config 中將 SELINUX=enforcing 改成 SELINUX=disabled 即可。
7.配置 yum 源
這里我們選擇使用本地 yum 源。需要在 VM 中設置下連接光驅,步驟如下圖:
在 cm1,cm2,cm3 節點上配置本地 yum 源: 每臺節點創建/mnt/cdrom 目錄:
每臺節點執行如下命令,將光盤設備/dev/sr0 掛載到/mnt/cdrom 目錄:
每臺節點執行命令:df -h 查看是否掛載成功:
上面的 mount 命令掛載后在機器重啟后會失效,為了可以實現開機自動掛載,可以在每臺節點的/etc/fstab 文件的最后面加入下面語句:
下面可以創建本地 yum 源,在每臺節點的/etc/yum.repos.d 目錄下創建 local.repo 文件,內容如下:
以上內容中 baseurl 是指 Yum 源的地址,該路徑下有個 repodata 目錄,就是 yum 安裝源目錄。file://表示 yum 源為文件。
如果只想讓 local.repo 生效,可以在每臺節點的/etc/yum.repos.d 目錄下 創建一個 backup 目錄,將其他的以“.repo”結尾的文件都移動到 backup 目錄中。
在每臺節點上執行以下命令,更新 yum 源:
8.配置 ssh 免密鑰登陸
在 CDH 中需要任意兩個節點之間都可以免秘鑰登錄。節點兩兩免秘鑰的根本原理如 下:假設 A 節點需要免秘鑰登錄 B 節點,只要 B 節點上有 A 節點的公鑰,那么 A 節點就可以免密登錄當前 B 節點。
第一、需要在每臺節點上安裝 ssh 客戶端,否則,不能使用 ssh 命令(最小化安裝 Liunx,默認沒有安裝 ssh 客戶端):
- yum -y install openssh-clients
第二、在每臺節點執行如下命令,在每臺節點的“~”目錄下,創建.ssh 目錄,注意:不要手動創建這個目錄,因為有權限問題。
- cd ~
- ssh localhost
-
這里會需要輸入節點密碼#
- exit
第三、在每臺節點上執行如下命令,給當前節點創建公鑰和私鑰:
- ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
第四、將 cm1,cm2,cm3 的公鑰 copy 到 cm1 上,這樣,cm1,cm2,cm3 節點都能登錄 cm1 節點。命令如下:
[圖片上傳失敗...(image-52245d-1726715653153)]
最后、將 cm1 節點上~/.ssh/authorized_keys 拷貝到 cm2 和 cm3 節點的 ~/.ssh/目錄下,執行如下命令:
- 在cm1上執行如下命令,需要輸入密碼:
- [root@cm1 .ssh]# scp ~/.ssh/authorized_keys cm2:
pwd
- [root@cm1 .ssh]# scp ~/.ssh/authorized_keys cm3:
pwd
經過以上步驟,節點兩兩免密完成。
9.節點同步時間
在 cm1,cm2,cm3 每臺節點上執行如下命令,安裝 ntp 服務及配置定時任務:
- yum-yinstallntp#安裝ntp服務#
- rm -rf /etc/localtime #刪除現有時區#
- ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #修改上海時區#
- /usr/sbin/ntpdate -u pool.ntp.org #同步時間#
- date #查看時間#
-
crontab -e 寫入如下定時內容:#
- */10 * * * * /usr/sbin/ntpdate -u pool.ntp.org >/dev/null 2>&1 #同步時
間定時任務# - service crond restart #重啟定時任務#
- crontab -l #查看定時任務#
- chkconfigntpdon#設置ntpd開機啟動,不然后期安裝CDH時會有警告。 12. servicentpdstart#啟動ntpd服務
10.安裝 JDK
給每臺節點安裝 jdk,這里我們安裝的 CDH 版本為 5.4,在官網https://www.cloudera.com/documentation/enterprise/release-n otes/topics/rn_consolidated_pcm.html 下有介紹 版本對應的 jdk 版本,可以使用 jdk7,也可使用 jdk8,但是對應的 jdk 小版本有要求,具體如下:
這里我們選擇 jdk8 版本中的 1.8u181 版本安裝。在每臺節點安裝 jdk,在每臺節點中創建/software 目錄,將 jdk8 安裝包通過 ftp 工具上傳到/software 目錄下,每臺節點執行如下命令安裝 jdk:
- [root@cm1 ~]# mkdir -p /software
- [root@cm1 ~]# rpm -ivh /software/jdk-8u181-linux-x64.rpm
以上命令執行完成之后,會在每臺節點的/usr/java 下安裝 jdk。在每臺節點配置 jdk 的環境變量:
- vim /etc/profile
-
在每臺節點中配置profile文件,在最后追加內容如下:#
- export JAVA_HOME=/usr/java/jdk1.8.0_181-amd64
- export PATH=
PATH
- export CLASSPATH=.:
JAVA_HOME/lib/tools.jar
執行完成以上命令之后,在每臺節點上執行 “source /etc/profile”使配置生效。
11.安裝 mysql 數據庫
在 cm1 中安裝 mysql 數據庫,執行命令:yum install –y mysql-server 執行完成之后,啟動 mysql:service mysql start。登錄 mysql 執行如下語句:
- [root@cm1 java]# mysql
- mysql> use mysql;
- mysql> select user,password from user;
- mysql> delete from user;
- mysql>GRANTALLPRIVILEGESON.TO'root'@'%'IDENTIFIEDBY'123456'WITH
GRANT OPTION; - mysql> flush privileges;
執行如下命令,將 mysql 設置成開機啟動,如果不設置開機啟動,后期每次啟動 ClouderaManager 時,需要手動啟動 MySQL。
- [root@cm1 ~]# chkconfig --add mysqld
- [root@cm1 ~]# chkconfig --level 345 mysqld on
- [root@cm1 ~]# chkconfig --list
12.安裝第三方依賴包
在每臺幾點上安裝第三方依賴包,每臺節點執行如下命令:
- yum install -y chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse fuse-libs redhat-lsb
至此,安裝 Cloudera Manager 的基礎環境準備完成。
**以上就是今天分享的全部內容。
如果你想了解更多關于:Cloudera 系統環境準備、基礎環境安裝、集群部署以及應用組件安裝等全方位的技術的問題,歡迎大家留言討論。
感謝你的閱讀,如果喜歡我的文字,可以持續關注我,會陸續為你更新更多干貨小知識。