PS: 幾乎全網最全,介紹徹底離線和在線聯網兩種安裝方式,搭建CDH,閱此文足矣。html
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=9cbcf25a-600d-4d9c-88ad-ab509ab6e52a
DEVICE=ens33
ONBOOT=yes
**IPADDR=192.168.44.121
PREFIX=24
GATEWAY=192.168.44.2
DNS1=8.8.8.8**
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_PRIVACY=no
複製代碼
service network restart
firewall-cmd --state
->runningsystemctl stop firewalld.service
systemctl disable firewalld.service
->not runningvi /etc/hostname
,輸入主機名reboot
vi /etc/hosts
,輸入集羣所有IP和主機名tar -zxvf jdkXXXXX.tar.gz -C 目標目錄
vi /etc/profile
export JAVA_HOME=jdk目標目錄
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
scp jdk 目標主機名:目標目錄
scp /etc/profile 目標主機名:目標目錄
javac
java
java -version
/usr/java/default
,這個路徑不能多也不能少,須要使CDH識別到系統安裝的jdk,採用軟鏈接方式最簡單。ln -s sourcedir sinkdir
ln -s /jdk安裝位置/* usr/java/default/
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database scm DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
use mysql;
CREATE USER 'scm'@'%' IDENTIFIED BY 'scm';
GRANT ALL PRIVILEGES ON *.* TO scm@"%" IDENTIFIED BY "scm";
flush privileges;
echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
vi /etc/rc.local
echo 0 > /proc/sys/vm/swappiness
echo never > /sys/kernel/mm/redhat_transparent_hugepage/enabled
echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
swapoff -a
複製代碼
複製代碼
scp /etc/rc.local bigdata02:$PWD
scp /etc/rc.local bigdata03:$PWD
時鐘服務器安裝在主節點上,子節點的時鐘服服務所有同步到主節點的時鐘服務器上。java
安裝時鐘服務ntp:mysql
yum -y install ntp
啓動ntp並註冊到開機自啓:linux
service ntpd start
chkconfig ntpd on
查看ntpd的狀態:sql
service ntpd status
配置時鐘服務器:shell
vi /etc/ntp.conf
重啓ntp服務:數據庫
service ntpd restart
yum install -y perl
/opt/cloudera-manager
和/opt/cloudera/parcel-repo
tar -zxvf .tar.gz -C /opt/cloudera-manager
cloudera-scm
,因此須要建立此用戶。useradd --system --home=/opt/cloudera-manager/cm-5.14.1/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm
passwd cloudera-scm
mkdir /var/lib/cloudera-scm-server
chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server
vi /opt/cloudera-manager/cm-5.14.1/etc/cloudera-scm-agent/config.ini
/usr/share/java
目錄下(目錄不存在則新建)mv mysql-connector-java-5.1.46.jar mysql-connector-java.jar
/opt/cloudera-manager/cm-5.14.1/share/cmf/schema/scm_prepare_database.sh mysql scm scm scm
[ main] DbCommandExecutor INFO Successfully connected to database.
All done, your SCM database is configured correctly!
複製代碼
CDH-5.14.0-1.cdh5.14.0.p0.24-el7.parcel
CDH-5.14.0-1.cdh5.14.0.p0.24-el7.parcel.sha1
manifest.json
/opt/cloudera/parcel-repo
目錄下
/opt/cloudera/parcel-repo
目錄是CDH自動識別的目錄mv CDH-5.14.0-1.cdh5.14.0.p0.24-el7.parcel.sha1 CDH-5.14.0-1.cdh5.14.0.p0.24-el7.parcel.sha
./cloudera-scm-server start
./cloudera-scm-agent start
.zip
文件上傳,以後解壓。mkdir -p /media/CentOS
mount -o loop /disk/CentOS-6.7-x86_64-bin-DVD1.iso /media/CentOS/
cd /etc/yum.repos.d
mv CentOS-Base.repo CentOS-Base.repo.bak
vim CentOS-Media.repo
enable=0
改爲enable=1
yum clean metadata
yum clean dbcache
yum list | wc -l
yum -y install httpd
service httpd start
或者/bin/systemctl start httpd.service
chkconfig httpd on
http://bigdata01:80
yum –y install createrepo
cp -r /media/CentOS 目標目錄
cd /目標目錄/CentOS
rm -rf ./repodata
createrepo .
解除對鏡像文件的掛載:json
umount /media/CentOS
若/media/CentOS
下無文件則說明解除掛載成功。vim
若出現: centos
修改文件CentOS-Media.repo讓其指向剛纔建立的網絡鏡像:
vi /etc/yum.repos.d/CentOS-Media.repo
清除yum的緩存:
yum clean metadata
yum clean dbcache
查看是否掛載成功:
yum list | wc -l
將主節點的/etc/ yum.repos.d
下的CentOS-Media.repo
文件分發到各子節點的目錄:
scp -r /etc/yum.repos.d/CentOS-Media.repo bigdata02:$PWD
scp -r /etc/yum.repos.d/CentOS-Media.repo bigdata03:$PWD
在全部子節點執行以下命令:
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
<4>. 子節點掛載網絡鏡像
/etc/ yum.repos.d
下的CentOS-Media.repo
文件分發到各子節點的目錄/etc/ yum.repos.d
下:
scp -r /etc/yum.repos.d/CentOS-Media.repo bigdata02:/etc/yum.repos.d/
scp -r /etc/yum.repos.d/CentOS-Media.repo bigdata03:/etc/yum.repos.d/
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
yum clean metadata
yum clean dbcache
yum list | wc -l
cloudera-cm.repo
到/etc/yum.repos.d/
目錄下:
cp /opt/module/cm-5.14/cloudera-manager.repo /etc/yum.repos.d/
cd /etc/yum.repos.d/
vi cloudera-cm.repo
baseurl=http://bigdata01/cm5.14
gpgkey=http://bigdata01/cm5.14/RPM-GPG-KEY-cloudera
cp cloudera-cm.repo cloudera-manager.repo
下載CM安裝的引導文件——cloudera-manager-installer.bin:
將其上傳到/opt下:
上傳的cloudera-manager-installer.bin文件並無執行權限,賦予其執行權限:
chmod 755 cloudera-manager-installer.bin
執行安裝:
./opt/cloudera-manager-installer.bin
查看cloudera的服務是否啓動:
./cloudera-scm-server start
經過瀏覽器訪問cm的頁面控制檯:
7180
是默認端口,若衝突修改流程以下:
use scm
select * from CONFIGS where ATTR='http_port';
update CONFIGS set VALUE='XXXX' where ATTR='http_port';
./cloudera-scm-server start restart
在登陸了後,進入的第一個界面是cloudera的最終用戶許可條款和條件:
勾選是的,再點繼續,進入CDH版本選擇界面:
這裏選擇免費版, 再點擊繼續,進行感謝界面:
直接點擊繼續,進入了節點選擇界面:
在這個界面咱們須要填入,咱們集羣的全部節點主機名(可從任意節點的hosts文件中拷貝。),以英文逗號分隔,填完了後點擊搜索。
在確認主機無誤後,點擊繼續,就能夠進入CDH和CM的網絡位置選擇界面。
a. 選擇CDH的位置:
先點擊 更多選項,進入CDH網絡位置選擇界面:
修改爲咱們本身的CDH網絡軟件鏡像的地址,多餘的刪掉。
點擊保存更改,這時CDH和CM的網絡位置選擇界面變爲:
選擇CDH版本就完成了,接下來選擇CM。
b. 選擇CM的位置
在選擇了CDH後,咱們繼續點擊 自定義存儲庫 來選擇咱們本身的CM:
就是把配置cloudera-cm.repo的配置拿出來,在界面上填一遍,咱們的填寫以下:
填寫完成後,就會進入給每一個節點安裝cloudera-scm-agent的界面,再點擊繼續前,咱們須要將hadoop-cm中安裝CM時安裝的JDK文件分發到每一個子節點,否則子節點在安裝cloudera-scm-agent會包錯。
點擊繼續,進入jdk安裝選項:
這個就不須要勾選,直接點擊繼續,進入選擇是否啓動單用戶模式:
選擇不啓用,直接點擊繼續,進入節點通訊選擇:
這裏使用 全部用戶接收相同的密碼:
填入密碼後,點擊繼續,進行agent安裝界面, 耐心等待安裝完成。安裝完成後,點擊繼續,進入CDH包分發到agent的界面,耐心等待其完成。分發爲完成後,點擊繼續,進入agent主機檢查:
須要將全部警告都解決才能點擊繼續,否則安裝可能會報錯。
大機率出現的警告爲:
sysctl vm.swappiness=10
cat /proc/sys/vm/swappiness
vm.swappiness=10
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
vi /etc/rc.local
echo never > /sys/kernel/mm/transparent_hugepage/defrag
echo never > /sys/kernel/mm/transparent_hugepage/enabled
安裝和配置完Agent後,就會進入CDH服務選擇界面:
選擇自定義服務,勾選以下:
點擊繼續,進入服務安裝細節界面:
在選擇完服務後,點擊繼續就能夠進入數據庫選擇界面,這裏選擇mysql,注意用戶名和密碼,這裏須要填如Mysql中支持遠程鏈接的用戶名和密碼,點擊測試鏈接:
在選擇完集羣服務配置後,就會進行運行安裝界面。
可能報錯:
完成後,點擊繼續,集羣cm集羣控制界面,