CentOS7安裝CDH 第一章:CentOS7系統安裝html
CentOS7安裝CDH 第二章:CentOS7各個軟件安裝和啓動java
CentOS7安裝CDH 第三章:CDH中的問題和解決方法python
CentOS7安裝CDH 第四章:CDH的版本選擇和安裝方式mysql
CentOS7安裝CDH 第五章:CDH的安裝和部署-CDH5.7.0web
CentOS7安裝CDH 第六章:CDH的管理-CDH5.12sql
CentOS7安裝CDH 第七章:CDH集羣Hadoop的HA配置shell
CentOS7安裝CDH 第八章:CDH中對服務和機器的添加與刪除操做數據庫
CentOS7安裝CDH 第九章:CDH中安裝Kafkacentos
CentOS7安裝CDH 第十章:CDH中安裝Spark2服務器
service cloudera-scm-server start|stop|restart|status
service cloudera-scm-agent start|stop|restart|status
查看進程:jps / jps -l /jps –m
注意:
當使用jps命令時,出現以下情景:
1101 -- process information unavailable
但ps -ef|grep 1101 找不到該進程,那麼就是殘留文件,
此時cd /tmp/hsperfdata_hdfs/等相似文件夾中,找到 1101文件,刪除便可。
1.su – mysqladmin service mysql start
2.service cloudera-scm-server start
3.service cloudera-scm-agent start (每臺)
4.web: cms
5.web: cluster1
1.web: cluster1
2.web: cms
3.service cloudera-scm-agent stop (每臺)
4.service cloudera-scm-server stop
5.su – mysqladmin service mysql stop
cms 和 cluster1 不管哪一個關閉、啓動等等操做,會形成web界面的圖表的 不繪製情景,此時能夠採起以下操做:
1.cms 和 cluster1 都要啓動 ,稍微等待 ,正在恢復中(30s)
2.先cluster1關閉,再重啓cms服務
這裏使用了QQ郵箱的SMTP,須要獲取QQ郵箱的受權碼:
# 卸載原有郵箱服務,並安裝新的郵箱服務
yum remove postfix
yum install postfix
# 關閉機器的sendmail服務
systemctl stop sendmail.service
systemctl disable sendmail
# 開啓postfix服務
systemctl start postfix.service
systemctl enable postfix
mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.qq.com:465 | sed -ne '/-BEGINCERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -L -d /root/.certs
cd /root/.certs
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ./ -i qq.crt
set from=1043797615@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=1043797615
#受權碼
set smtp-auth-password=cgnrvyvbbsufbcbd
set smtp-auth=login
set smtp-use-starttls
set ssl-verify=ignore
set nss-config-dir=/root/.certs
echo hello word | mail -s " title" 1028344078@qq.com
# 此時1028344078@qq.com 會收到一封郵件
#查看 Alert 服務的 log
tail -F /var/log/cloudera-scm-alertpublisher/mgmt-cmf-mgmt-ALERTPUBLISHER-hadoop35.log.out
# 實時查看Linux中的郵件日誌
tail -f /var/log/maillog
選擇警報,再選擇編輯收件人:
點擊發送測試警報,對應的郵箱會收到測試郵件。
在Alert Publisher服務中,默認的郵件發件人地址以下,當郵件發送過多時,郵件的服務商會默認設置此地址爲騷擾郵件,以後就不能接收到警告郵件了,此時能夠在郵件網頁中,點擊回覆,給此地址回覆一封郵件,創建信任關係,就能夠繼續收到此地址發送的郵件了。
在CDH中有以下服務:
db(mysql)
server (cmf)
agent 本次被刪除了
cms(5個進程,amon )
HDFS/yarn/zk/hive 元數據
CDH集羣中,CM的server須要引用數據庫中的cmf庫,cms(Cloudera Management Service)須要引用數據庫中的amon庫,因此當數據庫不能使用時,CDH集羣啓動不了,CDH中的數據庫配置在/etc/cloudera-scm-server/db.properties路徑中。(在cms中,一共有5個子服務)
1.此時先檢查節點中agent的狀態,將agent的遺留文件刪除。
2.進入/var/www/html/cm5/redhat/7/x86_64/cm/5.12.0/RPMS/x86_64文件夾中,安裝agent服務,安裝命令:yum install cloudera-manager-agent-5.12.0-1.cm5120.p0.120.el7.x86_64.rpm。
3.進入/etc/cloudera-scm-agent文件夾中,配置config.ini配置文件。
4.修改其中的server_host爲cm的server安裝機器的IP地址(能夠查看其餘能運行的節點的該配置文件的IP地址)。
5.使用service cloudera-scm-agent start命令啓動該節點的agent,再去web界面重啓CMS。
上述問題說明CMS也是經過agent來啓動和管理的。
當CDH的啓動異常,並報以下錯誤時有幾種解決方法:
Caused by: java.net.BindException: Address already in use
一、此時爲地址被佔用,使用ps/netstat查看該進程號,並kill掉該進程便可。
例:
ps -ef | grep alert #查看alert的進程號
netstat -nlp |grep 12704 #查看該進程的端口號
kill -9 12704 #kill掉該進程,而後再查看端口號便可
二、能夠在web界面將有問題的服務刪除,在添加該實例:
三、能夠將cloudera-scm-agent服務中止,在kill父進程super(ps –ef|grep super),而後再啓動cloudera-scm-agent服務,再去web界面重啓。
四、實在不行重啓服務器
stdout/stderr/role log
查看順序:role log -> stderr -> stdout