1. 程式人生 > >Linux7 下Hadoop叢集使用者管理方案之二 CDH5.9.0版本安裝配置

Linux7 下Hadoop叢集使用者管理方案之二 CDH5.9.0版本安裝配置

前期準備: 第一步:裝NTP 這個單獨做了一個文件專門寫NTP. 我擦。搞死了。一上午都在搞這個ntp。。。終於搞定了。 第二步:改Hosts檔案 echo '10.10.106.156   edu-bigdata-01.novalocal' > /etc/hosts echo '10.10.106.157   edu-bigdata-02.novalocal' >> /etc/hosts echo '10.10.106.158   edu-bigdata-03.novalocal' >> /etc/hosts echo '127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4' >> /etc/hosts echo '::1         localhost localhost.localdomain localhost6 localhost6.localdomain6' >> /etc/hosts 第三步:關閉SELinux
# echo "SELINUX=disabled" > /etc/sysconfig/selinux ; 第四步:關閉防火牆 CentOS 6 # service iptables stop # chkconfig iptables off CentOS 7 service firewall stop  # 關閉防火牆 chkconfig firewall off  #開機不啟動 第五步:修改transparent_hugepage引數,這一引數預設值可能會導致CDH效能下降  CentOS 6在/etc/rc.local 中增加一行: # echo never > /sys/kernel/mm/redhat_transparent_hugepage/defrag
CentOS 7 在/etc/rc.local中增加一行  echo never > /sys/kernel/mm/transparent_hugepage/defrag 或者使用root執行 # echo 'never' > /sys/kernel/mm/transparent_hugepage/defrag 第六步:安裝JDK yum install -y java 第七步:外部資料庫安裝  mysql  CentOS 7.2系統 安裝 # yum install mysql y #yum install  -y mysql-server #yum install mysql-devel
這裡有CentOS7 的問題。mysql-server 被替換成了mariadb 這裡使用rpm的方式安裝 設定開機啟動 # chkconfig mysqld on 啟動mysql資料庫 # service mysqld start 設定MySQL的root使用者設定密碼 # mysql –uroot –p 新建的資料庫,預設密碼位空,直接回車即可 mysql>set password for [email protected]=password('123456'); 開啟遠端訪問 mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'edu-bigdata-01.novalocal' IDENTIFIED BY '123456' WITH GRANT OPTION; mysql>FLUSH PRIVILEGES; 第八步:配置免密登陸 ssh-keygen -t rsa 三次回車 生成的公私鑰對在  ~/.ssh 目錄下 將公鑰複製到ip地址為10.10.106.156的遠端機上: ssh-copy-id  -i  /root/.ssh/id_rsa/pub  [email protected]10.10.106.156 ssh-copy-id 會自動把  .ssh 的許可權設定為 ~/.ssh (700)  ~/.ssh/authorized(600)  這裡需要注意的一點。可能按規矩設定完了沒有免密登陸 使用ls -l -a,可以看到兩個目錄 . .. 這兩個的許可權需要單獨設定,如果有其他的許可權的話,就會不能免密。 CM正式安裝 第一步:準備 CDH 5.9.0的安裝包。使用parcel的方式 首先在主伺服器上安裝httpd服務,可以對外暴漏服務。 yum install -y httpd 啟動httpd service httpd start 建立資料夾存放parcel mkdir -p /var/www/html/cdh5/parcel/5.9.0 拷貝安裝檔案及配置到該目錄下 cp CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel /var/www/html/cdh5/parcel/5.9.0/ cp CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha1 /var/www/html/cdh5/parcel/5.9.0 cp manifest.json /var/www/html/cdh5/parcel/5.9.0 並且將 CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha1改為名 CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha mv /var/www/html/cdh5/parcel/5.9.0/CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha1 /var/www/html/cdh5/parcel/5.9.0/CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha 第二步:準備Cloudera-manager包 下載地址為: 下載cloudera-manager-centos7-cm5.9.0_x86_64.tar.gz 我們在/opt目錄下安裝,每個節點都把cloudera-manager-centos7-cm5.9.0_x86_64.tar.gz解壓到/opt下。 最終形成的目錄結構為 [[email protected] opt]# pwd /opt [[email protected] opt]# ll 總用量 570412 drwxr-xr-x. 4 1106 4001      4096 10月  6 2016 cloudera -rw-r--r--. 1 root root 584088598 4月  24 20:05 cloudera-manager-centos7-cm5.9.0_x86_64.tar.gz drwxr-xr-x. 9 1106 4001      4096 10月  6 2016 cm-5.9.0  第三步:下載jdbc driver . tar zxvf mysql-connector-java-5.1.38.tar.gz cp mysql-connector-java-5.1.38/mysql-connector-java-5.1.38-bin.jar /usr/share/java/mysql-connector-java.jar 第四步:初始化CM使用的資料庫 通過cm的資料庫指令碼初始化資料庫。 /opt/cm-5.9.0/share/cmf/schema/scm_prepare_database.sh mysql scm -hlocalhost -uroot -p123456 --scm-host localhost scm scm scm # All done, your SCM database is configured correctly! 第五步:準備 parcel每個節點都建立cloudera-scm使用者 在主節點上執行: mkdir -p /opt/cloudera/parcel-repo  chown cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo 每個agent節點上執行: mkdir -p /opt/cloudera/parcels  chown cloudera-scm:cloudera-scm /opt/cloudera/parcels  將CHD5相關的Parcel包放到主節點/opt/cloudera/parcel-repo/目錄中(parcel-repo需要手動建立)。

相關的檔案如下:

  • -rwxrwxrwx. 1 root root 1492922238 4月  25 15:04 CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel
  • -rwxrwxrwx. 1 root root         41 4月  25 15:04 CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha1
  • -rw-r--r--. 1 root root      63988 4月  25 16:22 manifest.json
最後將 CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha1,重新命名為 CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha,這點必須注意,否則,系統會重新下載CDH-5.1.3-1.cdh5.1.3.p0.12-el6.parcel檔案。 mv  CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha1  CDH-5.9.0-1.cdh5.9.0.p0.23-el7.parcel.sha 第五步:啟動Cloudera Manager 建立使用者cloudera-scm,啟動時候需要 useradd --system --home=/opt/cm-5.9.0/run/cloudera-scm-server --shell=/bin/false --comment "Cloudera SCM User" cloudera-scm 在CM Server上建立目錄 mkdir /var/lib/cloudera-scm-server
mkdir /var/log/cloudera-scm-server
chown cloudera-scm:cloudera-scm /var/log/cloudera-scm-server Server啟動 /opt/cm-5.9.0/etc/init.d/cloudera-scm-server start 開機自啟動 cp /opt/cm-5.9.0/etc/init.d/cloudera-scm-server /etc/init.d/cloudera-scm-server chkconfig cloudera-scm-server on 修改/etc/init.d/cloudera-scm-server檔案的內容,將CMF_DEFAULTS 的值由 ${CMF_DEFAULTS:-/etc/default} 改為/opt/cm-5.9.0/etc/default Agent啟動 首先配置Agent的  vi /opt/cm-5.9.0/etc/cloudera-scm-agent/config.ini server_host=10.10.106.156 啟動 /opt/cm-5.9.0/etc/init.d/cloudera-scm-agent start 開機自啟動 cp /opt/cm-5.9.0/etc/init.d/cloudera-scm-agent /etc/init.d/cloudera-scm-agent chkconfig cloudera-scm-agent on 修改/etc/init.d/cloudera-scm-agent檔案的內容,將CMF_DEFAULTS 的值由 ${CMF_DEFAULTS:-/etc/default} 改為/opt/cm-5.9.0/etc/default 注意:如果CM Server主機上也要啟動CM Agent,則也要執行上述命令 第六步:訪問CMServer:7180
這塊需要把剛才第五步好好看看。這個圖不是太必須貌似。但是免密登陸一定要設定。
此時可以通過agent的log檢視資訊 tail -200f /opt/cm-5.9.0/log/cloudera-scm-agent/cloudera-scm-agent.log
還是遇到了一些問題。 主機間免密登陸是一定要設定的。而且設定時候需要注意檔案加的許可權   ls -l -a  另外cloudera-scm使用者也要建立。
無腦繼續了
一個個的綠色✔️。 完成。 真是坎坷的過程。雖然已經第二次安裝了。每次都能遇到不同的坑。哈哈。 下一步該配置Kerberos了。雖然也配置過了,但是也是充滿冒險的旅程。開始吧。  各位同道如果有任何問題,可以找我。