1、CDH集群搭建


一、准備工作

1、系統環境

系統centos6.5
節點三台:
    192.168.1.130
    192.168.1.131
    192.168.1.132

1、所有節點關閉防火牆
    service iptables stop
    chkconfig iptables off    

2、所有節點關閉selinux

3、主機名和hosts文件
    127.0.0.1       localhost.localdomain    localhost 
    192.168.1.130    bigdata-cdh01.ibeifeng.com    bigdata-cdh01    
    192.168.1.131    bigdata-cdh02.ibeifeng.com      bigdata-cdh02
    192.168.1.132    bigdata-cdh03.ibeifeng.com      bigdata-cdh03

4、創建一個普通用戶,所有節點
    username:beifeng        passwd:beifeng

    [root@bigdata-cdh01 ~]# useradd beifeng
    [root@bigdata-cdh01 ~]# passwd beifeng
    
    [root@bigdata-cdh02 ~]# useradd beifeng
    [root@bigdata-cdh02 ~]# passwd beifeng

    [root@bigdata-cdh03 ~]# useradd beifeng
    [root@bigdata-cdh03 ~]# passwd beifeng

5、配置beifneg用戶的sudo權限
    vim /etc/sudoers                #所有節點執行
    beifeng ALL=(root)NOPASSWD:ALL        #寫入此行    
    :wq!                    #保存退出

6、切換到beifeng用戶
    su - beifeng

7、禁用ipv6
    sudo vim /etc/modprobe.d/dist.conf        #寫入一下兩行,所有節點
    alias net-pf-10 off
    alias ipv6 off

8、所有及節點安裝jdk
    sudo rpm -qa |grep java            #先查看系統是否自帶jdk,如果有就卸載
    然后安裝jdk,比較簡單;    

9、設置文件描述符
    vim /etc/security/limits.conf            #寫入以下4行
    * hard nofile 65535
    * soft nofile 65535
    * hard nproc 65535
    * soft nproc 65535

 

2、系統環境2

1、時間同步
    在內網找一台作為時間服務器,所有的機器與這台機器時間進行定時的同步,比如每十分鍾同步一次時間;
    這里用CDH1做時間服務器;
    
    ##檢查是否安裝
    [root@bigdata-cdh01 ~]# rpm -qa |grep ntp    
    ntp-4.2.6p5-15.el6.centos.x86_64
    fontpackages-filesystem-1.41-1.1.el6.noarch
    ntpdate-4.2.6p5-15.el6.centos.x86_64
    
    ##配置:
    vim /etc/ntp.conf
    #第一處
    restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap    #去掉此行的注釋,並改為集群網段

    #第二處,注釋掉下面幾行
    #server 0.centos.pool.ntp.org iburst
    #server 1.centos.pool.ntp.org iburst
    #server 2.centos.pool.ntp.org iburst
    #server 3.centos.pool.ntp.org iburst

    #第三處,添加下面兩行
    server  127.127.1.0     # local clock
    fudge   127.127.1.0 stratum 10
    
    ##設置同步更新本地hwclock
    [root@master hadoop-2.5.0]# vim /etc/sysconfig/ntpd
    # Drop root to id 'ntp:ntp' by default.
    SYNC_HWCLOCK=yes                #添加此行            
    OPTIONS="-u ntp:ntp -p /var/run/ntpd.pid -g"
    
    ##啟動ntpd
    [root@master hadoop-2.5.0]# service ntpd status
    [root@master hadoop-2.5.0]# service ntpd start
    [root@master hadoop-2.5.0]#chkconfig ntpd on

    在CDH2、CDH3上設置同步時間腳本:
    #CDH2
    [root@slave1 hadoop-2.5.0]# crontab -l
    #去master同步時間,10分鍾1次
    0-59/10 * * * * /usr/sbin/ntpdate bigdata-cdh01.ibeifeng.com

    #CDH3
    [root@slave2 hadoop-2.5.0]# crontab -l
    #去master同步時間,10分鍾1次
    0-59/10 * * * * /usr/sbin/ntpdate bigdata-cdh01.ibeifeng.com

2、配置ssh互信

3、重啟所有節點

 

二、安裝CDH

離線rpm安裝,CDH5.3.6版本;

1、安裝CM的准備

網站:
    http://archive.cloudera.com/cm5/

cm-5.3.6bin文件:
    http://archive.cloudera.com/cm5/installer/5.3.6/

cm-5.3.6依賴rpm包:
    http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5.3.6/RPMS/x86_64/


1、上傳安裝包
[beifeng@bigdata-cdh01 softwares]$ ls
cdh-5.3.6    cm-5.3.6    postgresq-libs    repo-libs

[beifeng@bigdata-cdh01 softwares]$ tree ./
./
├── cdh-5.3.6
│   ├── CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel.parcel
│   └── CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel.sha1
├── cm-5.3.6
│   ├── cloudera-manager-agent-5.3.6-1.cm536.p0.244.el6.x86_64.rpm
│   ├── cloudera-manager-daemons-5.3.6-1.cm536.p0.244.el6.x86_64.rpm
│   ├── cloudera-manager-installer.bin
│   ├── cloudera-manager-server-5.3.6-1.cm536.p0.244.el6.x86_64.rpm
│   ├── cloudera-manager-server-db-2-5.3.6-1.cm536.p0.244.el6.x86_64.rpm
│   ├── enterprise-debuginfo-5.3.6-1.cm536.p0.244.el6.x86_64.rpm
│   ├── jdk-6u31-linux-amd64.rpm
│   └── oracle-j2sdk1.7-1.7.0+update67-1.x86_64.rpm
├── postgresq-libs
│   ├── postgresql-8.4.18-1.el6_4.x86_64.rpm
│   ├── postgresql-libs-8.4.18-1.el6_4.x86_64.rpm
│   └── postgresql-server-8.4.18-1.el6_4.x86_64.rpm
└── repo-libs
    ├── createrepo-0.9.9-18.el6.noarch.rpm
    ├── deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm
    └── python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm

2、搭建yum本地源服務器
說明:本地安裝一個http服務器,將軟件放進網站目錄下去,安裝的時候通過URL尋找;
安裝http:
[beifeng@bigdata-cdh01 ~]$ sudo rpm -qa |grep http
httpd-tools-2.2.15-29.el6.centos.x86_64
httpd-2.2.15-29.el6.centos.x86_64

[beifeng@bigdata-cdh01 ~]$ sudo service httpd start
正在啟動 httpd:                                           [確定]

[beifeng@bigdata-cdh01 ~]$ sudo service httpd status
httpd (pid  2634) 正在運行...

[beifeng@bigdata-cdh01 ~]$ sudo chkconfig httpd on

創建軟件存放目錄:
[beifeng@bigdata-cdh01 ~]$ cd /var/www/html/

[beifeng@bigdata-cdh01 html]$ sudo mkdir -p cm5/redhat/6/x86_64/cm/5/RPMS/x86_64/

[beifeng@bigdata-cdh01 html]$ ls
cm5

[beifeng@bigdata-cdh01 html]$ tree
.
└── cm5
    └── redhat
        └── 6
            └── x86_64
                └── cm
                    └── 5
                        └── RPMS
                            └── x86_64

將cm軟件包放進網站目錄:
##
[beifeng@bigdata-cdh01 cm-5.3.6]$ pwd
/opt/softwares/cm-5.3.6

[beifeng@bigdata-cdh01 cm-5.3.6]$ sudo mv ./cloudera-manager-installer.bin ../        #先把cm目錄中的bin文件移出去

##
[beifeng@bigdata-cdh01 x86_64]$ pwd
/var/www/html/cm5/redhat/6/x86_64/cm/5/RPMS/x86_64

[beifeng@bigdata-cdh01 x86_64]$ sudo mv /opt/softwares/cm-5.3.6/* ./

3、修改hosts文件
[beifeng@bigdata-cdh01 cm-5.3.6]$ sudo vim /etc/hosts
192.168.1.130    archive.cloudera.com                #cdh1添加此行,我這里為了測試,本地hosts也添加了此行

4、准備repo文件
[beifeng@bigdata-cdh01 yum.repos.d]$ pwd
/etc/yum.repos.d

[beifeng@bigdata-cdh01 yum.repos.d]$ sudo rm -rf ./*

[beifeng@bigdata-cdh01 yum.repos.d]$ sudo touch cloudera-manager.repo

[beifeng@bigdata-cdh01 yum.repos.d]$ cat cloudera-manager.repo 
[cloudera-manager]
# Packages for Cloudera Manager, Version 5, on RedHat or CentOS 6 x86_64                 
name=Cloudera Manager
baseurl=http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/5/
gpgkey=http://archive.cloudera.com/cm5/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera    
gpgcheck = 1
 
RPM-GPG-KEY-cloudera    #這個文件手動生成一下
https://archive.cloudera.com/cm5/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera  #在網上下載此文件,放到/var/www/html/cm5/redhat/6/x86_64/cm/下面

 

2、安裝CM

###
[beifeng@bigdata-cdh01 postgresq-libs]$ pwd
/opt/softwares/postgresq-libs

[beifeng@bigdata-cdh01 postgresq-libs]$ sudo chmod u+x ./*

[beifeng@bigdata-cdh01 postgresq-libs]$ sudo rpm -ivh *.rpm
Preparing...                ########################################### [100%]
   1:postgresql-libs        ########################################### [ 33%]
   2:postgresql             ########################################### [ 67%]
   3:postgresql-server      ########################################### [100%]


###
安裝CM:
[beifeng@bigdata-cdh01 repo-libs]$ pwd
/opt/softwares/repo-libs
[beifeng@bigdata-cdh01 repo-libs]$ ls
createrepo-0.9.9-18.el6.noarch.rpm  deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm  python-deltarpm-3.5-0.5.20090913git.el6.x86_64.rpm

[beifeng@bigdata-cdh01 repo-libs]$ sudo rpm -ivh ./*.rpm
Preparing...                ########################################### [100%]
   1:deltarpm               ########################################### [ 33%]
   2:python-deltarpm        ########################################### [ 67%]
   3:createrepo             ########################################### [100%]

[beifeng@bigdata-cdh01 5]$ pwd
/var/www/html/cm5/redhat/6/x86_64/cm/5

[beifeng@bigdata-cdh01 5]$ sudo createrepo .        #當前目錄下會生成一個文件夾:repodata



[beifeng@bigdata-cdh01 postgresq-libs]$ cd /opt/softwares/
[beifeng@bigdata-cdh01 softwares]$ sudo chmod +x cloudera-manager-installer.bin
[beifeng@bigdata-cdh01 softwares]$ sudo ./cloudera-manager-installer.bin    #接着會出現一個界面
    Next-->Next-->Yes-->Next-->Yes ...

如果報錯了,日至都在/var/log/cloudera-manager-installer
 
###
等待安裝完成后:

[beifeng@bigdata-cdh01 ~]$ netstat -ntlp |grep 7180
(No info could be read for "-p": geteuid()=501 but you should be root.)
tcp        0      0 0.0.0.0:7180                0.0.0.0:*                   LISTEN      -  

瀏覽器打開:hostname(ip)+port

賬號/密碼:admin

 

3、安裝CDH

此時要准備CDH的包

網站:http://archive.cloudera.com/cdh5/parcels/5.3.6/

下載以下兩個包:
    CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel
    CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel.sha1

創建/opt/cloudera/parcel-repo  可能CM安裝時已經自動創建過了;

將上面兩個包mv進/opt/cloudera/parcel-repo:
[beifeng@bigdata-cdh01 parcel-repo]$ ls
CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel  CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel.sha1

[beifeng@bigdata-cdh01 parcel-repo]$ sudo mv CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel.sha1 ./CDH-5.3.6-1.cdh5.3.6.p0.11-el6.parcel.sha    #去掉末尾的1


##
查看cm的狀態,
[beifeng@bigdata-cdh01 ~]$ sudo service cloudera-scm-server status
cloudera-scm-server (pid  3151) 正在運行...


##
修改CDH01 yum文件,並分發:
[beifeng@bigdata-cdh01 ~]$ sudo cat /etc/yum.repos.d/cloudera-manager.repo         #內容改為如下
[cloudera-manager]
name=Cloudera Manager
baseurl=http://bigdata-cdh01.ibeifeng.com/cm5/redhat/6/x86_64/cm/5/
gpgkey=http://bigdata-cdh01.ibeifeng.com/cm5/redhat/6/x86_64/cm/RPM-GPG-KEY-cloudera
gpgcheck=1

CDH02: sudo rm -rf /etc/yum.repos.d/*
CDH03: sudo rm -rf /etc/yum.repos.d/*
[beifeng@bigdata-cdh01 ~]$ sudo scp -r /etc/yum.repos.d/cloudera-manager.repo root@bigdata-cdh02:/etc/yum.repos.d/
[beifeng@bigdata-cdh01 ~]$ sudo scp -r /etc/yum.repos.d/cloudera-manager.repo root@bigdata-cdh03:/etc/yum.repos.d/

 

image

image

輸入主機名,搜索主機:

image

image

image

image

image

然后,等待安裝完成;

image

image

等待分配:

image

image

 

###
CDH01 的hosts文件中,注釋掉下面一行:
192.168.1.130    archive.cloudera.com


###
所有節點關閉swap(可以切換到root執行):
    echo 0 > /proc/sys/vm/swappiness
    sysctl vm/swappiness
    echo 'vm.swappiness = 0' >> /etc/sysctl.conf
    sysctl -p


###
所有節點執行:
    echo never > /sys/kernel/mm/transparent_hugepage/defrag
    echo 'echo never > /sys/kernel/mm/transparent_hugepage/defrag' >> /etc/rc.local

 

繼續:

image

點擊左上角Logo先離開;

 

4、安裝CMS監控服務

image

image

image

image

image

CDH2、CDH3節點:

sudo crontab -e
0-59/10 * * * *  sh /home/crontab/ntp.sh


##
/home/crontab/ntp.sh

#!/bin/bash
#
/sbin/service ntpd stop
/usr/sbin/ntpdate bigdata-cdh01.ibeifeng.com
/sbin/service ntpd start


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM