前言
本文主要記錄在Centos7.4下使用jdk1.8安裝CDH和Cloudera Manager募判。安裝的版本為Cloudera Manager 5.15.1,如遇不同版本盟萨,安裝方式大致相同.
安裝主機為3臺華為虛擬機
主機名 | 配置 | 外網(wǎng)IP | 內(nèi)網(wǎng)IP | 用途 |
---|---|---|---|---|
cdh01 | 8核32G內(nèi)存 | 114.116.10.1 | 192.168.1.1 | 主 安裝CM |
cdh02 | 8核32G內(nèi)存 | 114.116.10.2 | 192.168.1.2 | 從 slaver |
cdh03 | 8核32G內(nèi)存 | 114.116.10.3 | 192.168.1.3 | 從slaver |
準備工作
以下步驟要在所有節(jié)點上執(zhí)行
? 修改hostname
hostnamectl set-hostname cdh01
hostnamectl set-hostname cdh02
hostnamectl set-hostname cdh03
? 關(guān)閉SELinux
查看SELinux狀態(tài)
getenforce
若SELinux沒有關(guān)閉凉翻,按照下述方式關(guān)閉
vi /etc/selinux/config
修改SELinux=disabled。重啟生效捻激,可以等后面都設(shè)置完了重啟主機
SELINUX=disabled
? 關(guān)閉防火墻
sudo service iptables stop
sudo chkconfig iptables off
sudo chkconfig iptables --list
? 網(wǎng)絡(luò)配置
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static"
IPADDR=192.168.1.110
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
DNS1=8.8.8.8
DNS2=8.8.4.4
GATEWAY=192.168.1.1
? 修改hosts文件
把所有要添加到集群中的主機都要加入hosts中制轰,格式如下:
echo ' 192.168.1.2 cdh02
192.168.1.1 cdh01
192.168.1.3 cdh03' >> /etc/hosts
以上步驟執(zhí)行完畢后,重啟主機
reboot
1胞谭、下載離線安裝文件
? 下載CM安裝文件及需要的jdk1.7軟件包(注:cloudera-manager安裝時必須使用oracle-j2sdk垃杖,所以CM節(jié)點需要先按照jdk1.7版本)
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/RPMS/x86_64/cloudera-manager-agent-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/RPMS/x86_64/cloudera-manager-server-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/RPMS/x86_64/cloudera-manager-server-db-2-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/RPMS/x86_64/enterprise-debuginfo-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/RPMS/x86_64/cloudera-manager-daemons-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/RPMS/x86_64/oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm
? 下載cloudera-manager安裝文件
wget http://archive.cloudera.com/cm5/installer/5.15.1/cloudera-manager-installer.bin
? 下載parcel(文件比較大,2G)
wget http://archive.cloudera.com/cdh5/parcels/5.15.1/CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel
wget http://archive.cloudera.com/cdh5/parcels/5.15.1/CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel.sha1
下載rpm倉庫文件丈屹,修改倉庫文件cloudera-manager.repo调俘,把版本號加上5.15.1
wget http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/cloudera-manager.repo
配置yum源
vim cloudera-manager.repo
[cloudera-manager]
# Packages for Cloudera Manager, Version 5, on RedHat or CentOS 7 x86_64
name=Cloudera Manager
baseurl=https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.15.1/
gpgkey =https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera
gpgcheck = 1
? 下載jdk 1.8安裝包
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2 、上傳軟件包
1)在每個節(jié)點上建立/root/soft目錄
2)使用xftp工具將下載的軟件按下表上傳到/root/soft目錄下
主機 | 用途 | 軟件包 |
---|---|---|
cdh01 | 主 | cloudera-manager-agent-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm cloudera-manager-daemons-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm cloudera-manager.repo oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm cloudera-manager-server-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm cloudera-manager-server-db-2-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm enterprise-debuginfo-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm cloudera-manager-installer.bin CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel.sha1 jdk1.8.0_191-linux-x64.tar.gz |
cdh02 cdh03 |
從 | cloudera-manager-agent-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm cloudera-manager-daemons-5.15.1-1.cm5151.p0.3.el7.x86_64.rpm cloudera-manager.repo jdk1.8.0_191-linux-x64.tar.gz |
3)在每個節(jié)點上將cloudera-manager.repo拷貝到/etc/yum.repos.d/
cp /root/soft/cloudera-manager.repo /etc/yum.repos.d/
3 安裝軟件
3.1 安裝軟件包
在每個節(jié)點/root/soft目錄下執(zhí)行:
1)安裝命令
yum localinstall -y --nogpgcheck *.rpm
2)安裝jdk1.8并添加java環(huán)境變量
tar -xzf jdk1.8.0_191-linux-x64.tar.gz -C /opt/
echo 'export JAVA_HOME=/opt/jdk1.8.0_191
export CLASSPATH=.:$CLASSPTAH:$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin ' >> /etc/profile
source /etc/profile
安裝完后檢查
yum list | grep cloudera
yum list|grep oracle-j2sdk # cloudera-manager安裝節(jié)點上檢查此包
service cloudera-scm-agent status #檢查agent狀態(tài)
每個節(jié)點配置sudoers旺垒,否則后面安裝HDFS/Hive等服務(wù)時會報錯誤
echo 'cloudera-scm ALL=(ALL) NOPASSWD: ALL' >> /etc/sudoers
由于上面的軟件包是使用root用戶安裝的彩库,而運行時用戶為cloudera-scm,需要在每個節(jié)點上重設(shè)一下/var/log/cloudera-scm-agent下文件的權(quán)限
chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-agent/ -R
systemctl restart cloudera-scm-agent
3.2 安裝cloduera manager二進制安裝包
進入cdh01的/root/soft所在目錄
設(shè)置安裝權(quán)限并執(zhí)行安裝
rm -rf /etc/cloudera-scm-server/db.properties
chmod u+x cloudera-manager-installer.bin
./cloudera-manager-installer.bin
相同配置下順利安裝時間在1分鐘內(nèi)即可完成先蒋。
然后我們在web瀏覽器訪問 http:// 114.116.10.1:7180/骇钦,看是否能打開頁面即可,先不要進行登錄操作
此時由于華為云對內(nèi)網(wǎng)接口的限制竞漾,訪問不到眯搭,我們通過華為控制臺開放所有端口
http://www.huaweicloud.com/
輸入用戶名窥翩,密碼進行登錄,然后在控制臺中進入任意一臺ECS在安全組中添加規(guī)則鳞仙,然后就可以外網(wǎng)訪問了
4 CDH服務(wù)安裝
4.1 制作本地parcel
前面完成cloudera manager安裝之后cdh01會在/opt目錄下生成cloudera文件夾寇蚊,將之前下載好的CDH-*文件移動到parcel-repo文件夾中,在cdh01中執(zhí)行:
mv CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel /opt/cloudera/parcel-repo
mv CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel.sha1 /opt/cloudera/parcel-repo/CDH-5.15.1-1.cdh5.15.1.p0.4-el7.parcel.sha #注意后綴名有重命名
將cloudera manager的用戶授權(quán)給/opt和日志目錄:
chown cloudera-scm:cloudera-scm /opt/cloudera/ -R
chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-agent/ -R
重啟cloudera-scm-server(重要)
# 修改cm的jdk
echo 'export JAVA_HOME=/opt/ jdk1.8.0_191 ' >> /etc/default/cloudera-scm-server
# 重啟cm
/etc/init.d/cloudera-scm-server restart #或者 systemctl restart cloudera-scm-server
重啟速度較慢棍好,約1-2分鐘后訪問 http:// 114.116.10.1:7180 登陸仗岸,賬號密碼 admin, 密碼admin 選擇免費版本,一路next開始安裝借笙。
4.2 集群安裝
1)登錄http:// 114.116.10.1:7180爹梁,輸入用戶名admin密碼admin,接受許可條款
2)選擇Cloudera Express版本
3)添加主機
輸入主機名進行搜索
4)選擇CDH 5.15版本
5)JDK安裝選擇提澎,此處不選(重要,否則CDH會使用jdk 1.7版本)
6)用戶模式念链。(重要:不啟用單用戶模式盼忌,單用戶模式安裝會有問題)
7)安裝代理,如果前面工作都沒錯誤的話這步1分鐘左右很快就安裝完
8)安裝CDH包
9)檢查主機狀態(tài)
在每個節(jié)點上修改cm-agent的jdk版本
echo 'export JAVA_HOME=/opt/ jdk1.8.0_191' >> /etc/default/cloudera-scm-agent
systemctl restart cloudera-scm-agent
異常處理
1)已啟用“透明大頁面”掂墓,它可能會導致重大的性能問題谦纱。版本為“CentOS release 6.3 (Final)”且版本為“2.6.32-279.el6.x86_64”的 Kernel 已將 enabled 設(shè)置為“[always] never”,并將 defrag 設(shè)置為“[always] never”君编。請運行“echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag”以禁用此設(shè)置跨嘉,然后將同一命令添加到一個 init 腳本中,如 /etc/rc.local吃嘿,這樣當系統(tǒng)重啟時就會設(shè)置它
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local
echo 'echo never > /sys/kernel/mm/transparent_hugepage/enabled' >> /etc/rc.local
2)Cloudera 建議將 /proc/sys/vm/swappiness 設(shè)置為 0祠乃。當前設(shè)置為 60。使用 sysctl 命令在運行時更改該設(shè)置并編輯 /etc/sysctl.conf 以在重啟后保存該設(shè)置兑燥。您可以繼續(xù)進行安裝亮瓷,但可能會遇到問題,Cloudera Manager 報告您的主機由于交換運行狀況不佳降瞳。以下主機受到影響
echo 0 > /proc/sys/vm/swappiness
sysctl vm/swappiness
echo 'vm.swappiness = 0'>> /etc/sysctl.conf
sysctl -p
4.3 服務(wù)安裝
1)選擇所有服務(wù)
2)定義服務(wù)角色分配
HDFS的DataNode選擇3個主機嘱支,zookeeper選擇3個主機
3)選擇數(shù)據(jù)庫
4)按默認配置接著安裝后面的,如果前面步驟都沒問題挣饥,后面能夠順利安裝