centos6安裝CDH5.7.4

下載的包有如下幾個:

CDH-5.7.4-1.cdh5.7.4.p0.2-el6.parcel

CDH-5.7.4-1.cdh5.7.4.p0.2-el6.parcel.sha

manifest.json

cloudera-manager-el6-cm5.7.4_x86_64.tar.gz

mysql-connector-java-5.1.38.jar

下載地址如下:

CDH下載

CM下載

注意要將CDH-5.7.4-1.cdh5.7.4.p0.2-el6.parcel.sha1改名爲CDH-5.7.4-1.cdh5.7.4.p0.2-el6.parcel.sha

安裝準備(以下操作如果沒特別指出,需要在所有的主機上操作

設置靜態ip,hosts

# vi /etc/sysconfig/network-scripts/ifcfg-eth0

 

DEVICE=eth0

HWADDR=00:50:56:8F:B3:52

TYPE=Ethernet

UUID=a95295f7-f373-4ce9-970a-dc873db3bec9

ONBOOT=yes

NM_CONTROLLED=yes

#BOOTPROTO=dhcp

IPADDR=192.168.2.224

NETMASK=255.255.255.0

GATEWAY=192.168.2.226

vi /etc/sysconfig/network(以hadoop-1爲例)

NETWORKING=yes

HOSTNAME=hadoop-1

修改/etc/hosts 文件配置ip與host的映射

# vi /etc/hosts

添加如下數據:

 

192.168.2.224 hadoop-1

192.168.2.234 hadoop-2

192.168.2.235 hadoop-3

192.168.2.236 hadoop-4

192.168.2.244 hadoop-5

 

關閉防火牆

# service iptables stop

# chkconfig iptables off

禁用IPv6

# echo "alias net-pf-10 off" >> /etc/modprobe.d/dist.conf

# echo "alias ipv6 off" >> /etc/modprobe.d/dist.conf

禁止Selinux

# vi /etc/sysconfig/selinux

修改內容

SELINUX=disabled

ssh互信

# ssh-keygen -t rsa  (一直回車就行)

分發公鑰

# ssh-copy-id  hadoop-1

# ssh-copy-id  hadoop-2

# ssh-copy-id  hadoop-3

# ssh-copy-id  hadoop-4

# ssh-copy-id  hadoop-5

集羣時間同步

(如果沒辦法連接外網,可以先把自己的機器設置成外部ntp服務器,參考文檔:"windows設置ntp服務",集羣時間正確之後再選在hadoop-1作爲集羣的時間服務器)

1配置ntp服務

a) 開啓 ntp 進程服務

# service ntpd start

# chkconfig ntpd on

b) 修改 ntpd 配置文件(hadoop-1

# vi /etc/ntp.conf

 

1) 取消註釋 保持同一網段

  # Hosts on local network are less restricted.

restrict 172.168.2.0 mask 255.255.255.0 nomodify notrap     

(注意 172.168.2.0 是集羣所在的網段)

2) 註釋服務

# Please consider joining the pool (http://www.pool.ntp.org/join.html).

#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

3) 添加配置

NTPD把本地主機的時鐘也看作外部時鐘源來處理,分配的地址是127.127.1.0

server 127.127.1.0

fudge  127.127.1.0 startum 10

c) 重啓ntp 服務,並將服務設置爲開機啓動

# service ntpd restart

校準時間(hadoop-1)

1)系統時間

      將本機時間與外部ntp服務器進行同步

      # ntpdate -u 192.168.2.32 (已經作爲ntp服務器的ip,或同網段其他機器)

date -s "2007-08-03 14:15:00"  

2)硬件時鐘時間

a.電腦系統暫停 系統時間暫停 硬件時鐘時間繼續執行

# hwclock --localtime

# hwclock --localtime -w (更改 用系統時間更新硬件時鐘時間)

# hwclock --localtime

b.用硬件時鐘時間更新系統時間

# vi  /etc/sysconfig/ntpd

       首行 添加

SYNC_HWCLOCK=yes

vi /etc/sysconfig/ntpdate

      SYNC_HWCLOCK=yes  (no修改爲yes)

 

2其他機器與集羣的ntp服務器進行時間同步(除去hadoop-1外的機器)

a.修改配置文件

# vi /etc/ntp.conf

1) 取消註釋 保持同一網段

 # Hosts on local network are less restricted.

restrict 172.168.2.0 mask 255.255.255.0 nomodify notrap     

(注意 172.168.2.0 是集羣所在的網段)

2) 註釋服務

# Please consider joining the pool (http://www.pool.ntp.org/join.html).

#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

3) 配置服務源,即hadoop-1的地址

server 192.168.2.224

分發配置:

scp /etc/ntp.conf root@hadoop-5:/etc/

scp /etc/ntp.conf root@hadoop-4:/etc/

scp /etc/ntp.conf root@hadoop-3:/etc/

4) 手動執行

 # ntpdate -u hadoop-1

5)硬件時鐘時間

a.電腦系統暫停 系統時間暫停 硬件時鐘時間繼續執行

# hwclock --localtime

# hwclock --localtime -w (更改 用系統時間更新硬件時鐘時間)

# hwclock --localtime

b.用硬件時鐘時間更新系統時間

# vi  /etc/sysconfig/ntpd

       首行 添加

SYNC_HWCLOCK=yes

# vi /etc/sysconfig/ntpdate

      SYNC_HWCLOCK=yes  (no修改爲yes)

scp  /etc/sysconfig/ntpd root@hadoop-5:/etc/sysconfig

scp  /etc/sysconfig/ntpd root@hadoop-4:/etc/sysconfig

scp  /etc/sysconfig/ntpd root@hadoop-3:/etc/sysconfig

6) 腳本定時執行

 # crontab -e

0-59/3 * * * * /usr/sbin/ntpdate -u hadoop-1

 

7)開啓 ntp 進程服務

# service ntpd start

# chkconfig ntpd on

安裝JDK

  1. 上傳 jdk-8u151-linux-x64.tar.gz

2)創建/usr/java目錄並解壓jdk:

# mkdir /usr/java

# tar -xvf jdk-8u151-linux-x64.tar.gz -C /usr/java/

scp -r jdk1.8.0_151/  root@hadoop-5:/usr/java/

3)配置JAVA環境變量:

# vi /etc/profile

添加如下內容:

export JAVA_HOME=/usr/java/jdk1.8.0_151

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH

 scp /etc/profile  root@hadoop-2:/etc/

4)配置生效:

# source /etc/profile

5)驗證是否安裝成功:

# java -version

在hadoop-1安裝mysql,並將字符集改成utf8

刪除原有mysql

# rpm -qa |grep mysql   //查看原有mysql

存在類似如下:

qt-mysql-4.6.2-26.el6_4.x86_64

mysql-connector-odbc-5.1.5r1144-7.el6.x86_64

mysql-libs-5.1.71-1.el6.x86_64

mysql-5.1.71-1.el6.x86_64

mysql-devel-5.1.71-1.el6.x86_64

mysql-server-5.1.71-1.el6.x86_64

//強制卸載原先系統自帶的mysql包(按照列出的進行刪除)

rpm -e mysql-libs --nodeps

rpm -e mysql-connector-odbc --nodeps

rpm -e mysql --nodeps

rpm -e qt-mysql --nodeps

rpm -e mysql-devel --nodeps

rpm -e mysql-server --nodeps

將mysql安裝包上傳並解壓(5.5)

tar -zxvf mysql-5.5.52-linux2.6-x86_64.tar.gz

建立mysql用戶組

groupadd mysql

爲mysql用戶組添加用戶mysql

useradd -r -g mysql mysql

複製解壓得到的目錄到系統的本地軟件目錄“/usr/local/”,命令如下:

/usr/local/mysql 爲本次mysql的安裝目錄

 

cp -r  mysql-5.5.52-linux2.6-x86_64 /usr/local/mysql 

--有效

cd /usr/local/mysql    

ls                              --進入mysql目錄,查看複製是否成功

 

修改當前目錄擁有者爲剛纔新建的mysql用戶

chown -R mysql:mysql ./

ls -al

加入mysql配置

vi /etc/my.cnf

[mysqld]

datadir=/var/lib/mysql

socket=/var/lib/mysql/mysql.sock

user=mysql

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

lower_case_table_names=1

 

[mysqld_safe]

log-error=/var/log/mysql.log

pid-file=/var/run/mysql/mysql.pid

 

 

初始化mysql

./scripts/mysql_install_db

 

爲防有人攻破mysql進程,則不安全,所以將此目錄下除data之外的所有文件擁有者改爲root用戶

chown -R root:root ./                 ---將文件權限設置爲root用戶

chown -R mysql:mysql data             ---data目錄要使用mysql用戶/組

ls -al

爲系統增加mysql服務

cp support-files/mysql.server /etc/init.d/mysql

chkconfig --add mysql

chkconfig --list mysql

(看看默認是否會啓用,3,4,5是“on”狀態即可)

重啓後,系統會自動開啓mysql服務

 

啓動mysql 服務

service mysql start

如失敗繼續執行以下命令:

./scripts/mysql_install_db

爲mysql用戶添加根目錄

mkdir /home/mysql

chown -Rv mysql /home/mysql --設置目錄mysql的所有權爲mysql用戶

chown -Rv mysql /home/mysql

changed ownership of `/home/mysql' to mysql

chgrp  mysql /home/mysql

重啓服務器,驗證Mysql安裝是否成功

使用service mysql status查看mysql服務是否開啓

service mysql status

 

創建相關軟連接

cd /usr/local/bin/

ln -fs /usr/local/mysql/bin/mysql mysql

ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

cd /usr/local/mysql

./bin/mysqladmin -u root password '123456'

 

1.在數據庫中建表(cm)

mysql -uroot -p123456

 create database scm DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database hmon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database smon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database rma DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database nas DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 create database nms DEFAULT CHARSET utf8 COLLATE utf8_general_ci;

 grant all on scm.* to 'root'@'%' identified by '123456';

 grant all on hive.* to 'root'@'%' identified by '123456';

 grant all on oozie.* to 'root'@'%' identified by '123456';

 grant all on amon.* to 'root'@'%' identified by '123456';

 grant all on hmon.* to 'root'@'%' identified by '123456';

 grant all on smon.* to 'root'@'%' identified by '123456';

 grant all on rma.* to 'root'@'%' identified by '123456';

 grant all on nas.* to 'root'@'%' identified by '123456';

 grant all on nms.* to 'root'@'%' identified by '123456';

 flush privileges;

2.設置mysql開機啓動

 # chkconfig mysql on

其他設置

# echo 0 > /proc/sys/vm/swappiness

# echo 'vm.swappiness=0'>> /etc/sysctl.conf

# echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag

# echo 'echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag' >> /etc/rc.local

安裝目錄

# mkdir /opt/cloudera-manager

將安裝包解壓到安裝目錄

cd /opt/cloudera-manager/

scp cloudera-manager-el6-cm5.7.4_x86_64.tar.gz root@hadoop-2:/opt/cloudera-manager/

# tar -xzf cloudera-manager*.tar.gz -C /opt/cloudera-manager

創建CM的默認用戶,增加sudo權限

# useradd --system --home=/opt/cloudera-manager/cm-5.7.4/run/cloudera-scm-server --no-create-home --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm

# chmod +w /etc/sudoers

 # vi /etc/sudoers

添加cloudera-scm  ALL=(ALL)       NOPASSWD:ALL

# chmod -w /etc/sudoers

創建Cloudera Manager Server 本地存儲路徑

# mkdir /var/lib/cloudera-scm-server

# chown cloudera-scm:cloudera-scm /var/lib/cloudera-scm-server

日誌路徑

# mkdir /var/log/cloudera-scm-server

# chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-server

修改配置文件

# vi /opt/cloudera-manager/cm-5.7.4/etc/cloudera-scm-agent/config.ini

server_host= hadoop-1

創建目錄

# mkdir -p /var/cm_logs/cloudera-scm-headlamp

# chown cloudera-scm /var/cm_logs/cloudera-scm-headlamp

創建Parcel 目錄 並上傳需要的parcel包

# mkdir -p /opt/cloudera/parcel-repo

# chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo

# mkdir -p /opt/cloudera/parcels

# chown cloudera-scm:cloudera-scm /opt/cloudera/parcels

cd /opt/cloudera/parcel-repo

上傳 CDH-5.7.4-1.cdh5.7.4.p0.2-el6.parcel

CDH-5.7.4-1.cdh5.7.4.p0.2-el6.parcel.sha

manifest.json

將上述三個文件上傳到/opt/cloudera/parcel-repo 目錄下

scp * root@hadoop-2:/opt/cloudera/parcel-repo/

scp * root@hadoop-3:/opt/cloudera/parcel-repo/

scp * root@hadoop-4:/opt/cloudera/parcel-repo/

scp * root@hadoop-5:/opt/cloudera/parcel-repo/

hadoop-1節點上配置Cloudera Manager Server 數據庫(本集羣採用mysql數據庫)

建立數據庫前要下載 jdbc驅動,放到下面目錄(否則創建scm數據會報錯):

/opt/cloudera-manager/cm-5.7.4/share/cmf/lib

爲cloudera-manager創建數據庫scm

執行

cd /opt/cloudera-manager/cm-5.7.4/share/cmf/lib

上傳mysql

# /opt/cloudera-manager/cm-5.7.4/share/cmf/schema/scm_prepare_database.sh mysql scm root 123456

hadoop-1節點上執行

# /opt/cloudera-manager/cm-5.7.4/etc/init.d/cloudera-scm-server start

設置開機啓動

#cp /opt/cloudera-manager/cm-5.7.4/etc/init.d/cloudera-scm-server /etc/init.d/cloudera-scm-server

# chkconfig cloudera-scm-server on

修改

# vi /etc/init.d/cloudera-scm-server

將 CMF_DEFAULTS的值由 ${CMF_DEFAULTS:-/etc/default},設置爲CMF_DEFAULTS=/opt/cloudera-manager/cm-5.7.4/etc/default

在每個主機上執行如下命令:

# /opt/cloudera-manager/cm-5.7.4/etc/init.d/cloudera-scm-agent start

設置開機啓動:

# cp /opt/cloudera-manager/cm-5.7.4/etc/init.d/cloudera-scm-agent /etc/init.d/cloudera-scm-agent

# chkconfig cloudera-scm-agent on

修改

# vi /etc/init.d/cloudera-scm-agent

將 CMF_DEFAULTS的值由 ${CMF_DEFAULTS:-/etc/default},設置爲CMF_DEFAULTS=/opt/cloudera-manager/cm-5.7.4/etc/default

scp /etc/init.d/cloudera-scm-agent root@hadoop-2:/etc/init.d/cloudera-scm-agent

至此cloudera-manager已經安裝完畢

CDH服務安裝

登錄

http://192.168.2.224:7180  (192.168.2.224是hadoop-1的地址)

用戶名/密碼 : admin/admin

爲CDH安裝指定主機

選擇所有當前管理的主機

驗證必須全部通過才能繼續下一步

安裝CM

1:點擊圖標鏈接到如圖的首頁

2:點擊添加cloudera management 的服務

3.服務全部安裝到hadoop-1節點上

4:數據庫主機名稱:hadoop-1(測試不通過嘗試localhost)

5:數據庫類型:mysql

7:數據庫名稱:amon

8:用戶名/密碼:hadoop-1上的mysql的用戶名和密碼(root/123456)

9:測試鏈接通過後才能進行下一步

10:選擇默認配置

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章