前言 閑暇之時,羚羊給大家分享一下羚羊在Centos7 下安裝Cloudera Manager 6.3.0和cloudera cdh 6.3.2的過程和安裝過程中遇到的坑。至於為什麼要選擇CDH,Cloudera Manager和cdh是什麼,之間又是什麼關係,在這裡羚羊就不做介紹了。 為什麼選擇C ...
前言
閑暇之時,羚羊給大家分享一下羚羊在Centos7 下安裝Cloudera Manager 6.3.0和cloudera cdh 6.3.2的過程和安裝過程中遇到的坑。至於為什麼要選擇CDH,Cloudera Manager和cdh是什麼,之間又是什麼關係,在這裡羚羊就不做介紹了。
為什麼選擇CDH6.3.2這個版本,給大家看個Cloudera公司今年初發佈的消息:
上面大概是說6.3.3版本以上,需要許可證,有帳號才能下載安裝包,意思就是收費。所以羚羊就安裝了6.3.2。至於為什麼用的是Cloudera Manager 6.3.0,其實沒什麼問題。Cloudera Manager和CHD之間的版本相容方面,官方是這麼說:
對於Cloudera Manager和CDH,Cloudera公司使用主版本和次版本來管理:主版本+次版本+維護版本,像Cloudera Manager 6.3.0,它的主版本是6,次版本是3,維護版本是0。然後版本相容規則是這樣:Cloudera Manager <主要> + <次要>版本必須始終等於或大於CDH <主要> + <次要>版本。較舊版本的Cloudera Manager可能識別不出CDH的高版本安裝包來,就是不相容。當然,最好也不要使用高版本的Cloudera Manager去安裝低版本的CDH。更多信息大家多花時間去看看官網就獲取更多的消息了。下麵羚羊開始記錄羚羊的安裝過程。
安裝
Cloudera Manager 6.3.0安裝
由於線上安裝下載比較慢,羚羊都先下載到本地後離線安裝啦。
環境:IP | HostName | OS | 安裝用戶 | 備註 |
10.111.15.162 | cdh6-master | CentOS 7.5 | hadoop | |
10.111.15.163 | cdh6-slave1 | CentOS 7.5 | hadoop | |
10.111.15.164 | cdh6-slave2 | CentOS 7.5 | hadoop | |
10.111.15.166 | cdh6-slave3 | CentOS 7.5 | hadoop | |
10.111.15.167 | mysql資料庫 | CentOS 7.5 | hadoop | 也可以跟CM master同一臺機器 |
hosts配置
在hosts文件末尾加配置:sudo vim /etc/hosts
10.111.15.162 cdh6-master 10.111.15.163 cdh6-slave1 10.111.15.164 cdh6-slave2 10.111.15.166 cdh6-slave3JDK安裝
cd /usr/java tar -xvf jdk-8u251-linux-x64.tar.gz vim ~/.bash_profile
加入內容:
export JAVA_HOME=/usr/java/jdk1.8.0_251 export PATH=$JAVA_HOME/bin:$PATH export JRE_HOME=$JAVA_HOME/jre
source ~/.bash_profile
驗證是否安裝成功:java -version
註意:一定要64位,如果系統是64位,不然啟動hdfs的時候會提示:libhadoop.so.1.0.0 無法載入的問題,原因是libhadoop依賴 64位的libjvm.so
關閉selinux
sudo vim /etc/selinux/config
SELINUX=disabled
安裝依賴
sudo yum install -y bind-utils psmisc libxslt cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs httpd mod_ssl openssl-devel python-psycopg2 MySQL-python /lib/lsb/init-functions libpq.so.5
wget http://www.percona.com/redir/downloads/Percona-XtraDB-Cluster/5.5.37-25.10/RPM/rhel6/x86_64/Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm sudo rpm -ivh Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm
sudo yum install python27
SSH免登錄配置
當前目錄執行:ssh-keygen 在/home/用戶/.ssh下生成公私鑰cd /home/hadoop/.ssh ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-master ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-slave1 ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-slave2 ssh-copy-id -p 41122 -i ./id_rsa.pub hadoop@cdh6-slave3
NTP安裝
sudo yum -y install ntp sudo /etc/ntp.confserver 0.asia.pool.ntp.org server 1.asia.pool.ntp.org server 2.asia.pool.ntp.org server 3.asia.pool.ntp.org
## 加入時間伺服器:
PS: 或在https://www.pool.ntp.org/zone/asia找最適合的時間伺服器
sudo service ntpd restart查看與時間同步伺服器的時間偏差:ntpdc -c loopinfo 查看當前同步的時間伺服器:ntpq -p 查看狀態:ntpstat
安裝 6.3.0yum源
所有節點上執行:
sudo curl -o /etc/yum.repos.d/cloudera-manager.repo https://archive.cloudera.com/cm6/6.3.0/redhat7/yum/cloudera-manager.repo rpm --import https://archive.cloudera.com/cm6/6.3.0/redhat7/yum/RPM-GPG-KEY-cloudera
各節點安裝mysql驅動
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.46.tar.gz # 解壓 tar -zxf mysql-connector-java-5.1.46.tar.gz # 放到指定目錄 (一定要改名為mysql-connector-java.jar)sudo cp mysql-connector-java-5.1.46/mysql-connector-java-5.1.46-bin.jar /usr/share/java/mysql-connector-java.jar
master節點安裝cloudera-manager server
sudo yum localinstall ./cloudera-manager-daemons-6.3.0-2117683.el7.x86_64.rpm ./cloudera-manager-server-6.3.0-2117683.el7.x86_64.rpm cloudera-manager-server -y
cd /opt/cloudera/cm
可以看到安裝目錄下很多文件:
查看是否成功rpm -qa|grep cloudera-manager
連接資料庫配置
sudo vim /etc/cloudera-scm-server/db.properties
創建資料庫
各角色如:scm、amon、rman、hue、metastore、sentry、nav、navms、oozie,需要用到數據。需要先創建好
CREATE DATABASE scm DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE amon DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE rman DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hue DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE metastore DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE sentry DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE nav DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE navms DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE oozie DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
CREATE DATABASE hive DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
資料庫跟master不在同一臺機器上,需要授權訪問
grant all privileges on *.* to 'hadoop'@'101.111.14.123' identified by 'xxxxxx' with grant option;
grant all privileges on *.* to 'scm'@'master.cdh6' identified by 'xxxxxx' with grant option;
flush privileges;
master節點上執行腳本
/opt/cloudera/cm/schema/scm_prepare_database.sh mysql -h 10.111.15.167 --scm-host cdh6-master scm scm
PS:開啟gtid模式,可能會報錯:Error Code: 1786 Statement violates GTID consistency: CREATE TABLE ... SELECT
啟動
sudo systemctl start cloudera-scm-server
查看啟動日誌
sudo tail -100f /var/log/cloudera-scm-server/cloudera-scm-server.log
各從節點安裝Agent
sudo yum localinstall ./cloudera-manager-agent-6.3.0-2117683.el7.x86_64.rpm ./cloudera-manager-daemons-6.3.0-2117683.el7.x86_64.rpm cloudera-manager-agent -y
修改所有子節點的CM主機地址
sudo vim /etc/cloudera-scm-agent/config.ini # 將server_host修改為CM-Server所在的主機名 server_host=cdh6-master
啟動
sudo systemctl start cloudera-scm-agent
查看日誌
sudo tail -100f /var/log/cloudera-scm-agent/cloudera-scm-agent.log
登錄(admin/admin)
http://10.111.15.162:7208/ 出現登錄界面說明master安裝成功CDH 6.3.2安裝
下載CDH6安裝包
下載地址:https://archive.cloudera.com/cdh6/6.3.2/parcels/
只下載紅圈文件即可,其中7代表centos7
#全部下載 nohup sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/cdh6/6.3.2/parcels/ -P /var/www/html/cloudera-repos & nohup sudo wget --recursive --no-parent --no-host-directories https://archive.cloudera.com/gplextras6/6.3.2/parcels/ -P /var/www/html/cloudera-repos &
安裝Apache HTTP Server
sudo yum install httpd
啟動
systemctl start httpd
界面嚮導安裝
選擇已安裝好的agent節點:
官方建議在master機器上安裝Hue
上圖是啟動服務後的界面效果,配置方面還需要調整和優化。羚羊運氣不太好,所以安裝過程遇到很多問題,下麵羚羊就分享比較有代表性的問題
問題
一、安裝CDH時出現:com.cloudera.server.web.cmf.csrf.CsrfRefererInterceptor: Rejecting request originating from [url] refering [url]
解決:在安裝CMS目錄下(/opt/cloudera/cm)註釋掉CsrfRefererInterceptor bean vim ./webapp/WEB-INF/spring/mvc-config.xml二、安裝agent出現問題:
解決: wget http://www.percona.com/redir/downloads/Percona-XtraDB-Cluster/5.5.37-25.10/RPM/rhel6/x86_64/Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm rpm -ivh Percona-XtraDB-Cluster-shared-55-5.5.37-25.10.756.el6.x86_64.rpm三、測試hue資料庫連接異常:
對應異常日誌:
解決:
下載或從別的機器copy libmysqlclient.so.18包
sudo ln -s /usr/lib64/mysql/libmysqlclient.so.18.0.0 /usr/lib64/mysql/libmysqlclient.so.18
sudo vim /etc/ld.so.conf
#加libmysqlclient.so.18所在的目錄
/usr/lib64/mysql
sudo ldconfig
四、角色啟動目錄許可權問題
解決: 其它角色啟動如果有目錄許可權問題,一樣先要創建工作根目錄即可解決五、web界面經常報"查詢 Service Monitor 時發生內部錯誤
解決:原因是記憶體太小,資源管理配置下堆棧大小
【版權聲明】
本文版權歸作者(深圳伊人網網路有限公司)和博客園共有,歡迎轉載,但未經作者同意必須在文章頁面給出原文鏈接,否則保留追究法律責任的權利。如您有任何商業合作或者授權方面的協商,請給我留言:[email protected]