硬件信息
四臺 高配商業(yè)主機
其中三臺 8 核 cpu 124G內(nèi)存 10.5TB 欢搜,
一臺 24核心 cpu 124G 內(nèi)存 16TB 磁盤
先期 1master 2 slave 辨绊,之后 擴容一臺 slave
cdh 已經(jīng)安裝過四五遍 了 ,多次采坑 經(jīng)歷 發(fā)現(xiàn) 主要問題是
文件 目錄 修改 讀寫 執(zhí)行權(quán)限不足 祈秕,沒有創(chuàng)建對用用戶 鸟废,缺失部分 依賴包 翅溺,端口沖突 文件和hash值不符 等等奢啥,所以 cdh 一定要看各個組件的完整日志 ,從日志中發(fā)現(xiàn)問題满钟,當(dāng)然一定要知道日志 的準(zhǔn)確位置
設(shè)置 yarn-site.xml yarn.nodemanager.resource.memory-mb
輸入 hadoop classpath 把得到的內(nèi)容粘貼到 yarn-site.xml
application.classpath 屬性 胜榔,不然會報錯
及
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce_shuffle.class</name>
<value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>
學(xué)習(xí)使用awk 自動化完成一些命令
https://www.cnblogs.com/Berryxiong/p/6240488.html
https://blog.csdn.net/system1190/article/details/53671520
https://blog.csdn.net/xuplus/article/details/51668878
后記:發(fā)現(xiàn)上面修改會造成一些問題。以后在解決
CDH 5.1.3-1.cdh5.1.3.p0.12 1 個錯誤
parcel CDH-5.1.3-1.cdh5.1.3.p0.12-unknown 的本地 parcel 錯誤:一個或多個主機沒有報告其操作系統(tǒng)分配湃番。這可能是由于運行已過期的 Cloudera Manager Agent 版本造成的夭织。請運行 Host Inspector 檢查 Agent 版本。吠撮。
https://blog.csdn.net/xuheng8600/article/details/79983927
http://www.360doc.com/content/14/0610/18/203871_385471759.shtml
說句實話 我認(rèn)為 安裝 cdh 比安裝 apache hadoop 要繁瑣一些尊惰。
一是 要安裝的文件眾多 ,七七八八有差不多快十個文件泥兰,缺少一個文件 都不太可能 安裝成功弄屡。
二是 安裝 坑也不少,cdh 只認(rèn) openJdk 7+鞋诗,普通jdk 即使設(shè)置了 JAVA_HOME ,cdh 也視而不見膀捷,對系統(tǒng)也有要求,最好 是centos 7削彬,centos 6.9 就有大問題全庸。安裝順序也是不可以顛倒秀仲,各種配置也是一個大問題。
三是 安裝方式 多樣壶笼,至少常規(guī)有 三種神僵,每一種 都有各種坑,我是先離線下載好了所有的文件覆劈,才開始整保礼,有的 安裝攻略也不提 用了哪些文件,上來就整墩崩,迷迷糊糊
四是 安裝文件 下載 要么不好找下載地址氓英,要么 就是下載賊慢侯勉,嚴(yán)重影響安裝進度
五是 安裝后的目錄眾多鹦筹,不熟悉的話 可能根本找不到。
六 一定 要 在 /opt/目錄下 安裝 cloudera 址貌,否則未來很多不方便
好了
首先先給大家 下載的官網(wǎng) ftp 地址
http://archive.cloudera.com/cdh5/parcels/5.14.2.3/
CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel
CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel.sha1
http://archive.cloudera.com/cdh5/parcels/5.14.2.3/manifest.json
http://archive.cloudera.com/cdh5/parcels/5.14.4.3/
https://blog.csdn.net/eason_oracle/article/details/51818423
補充幾點:
如果直接新建個.sha的文件铐拐,把manifest.json最后一行的hash值拷貝進去,直接驗證驗證失敗练对,這樣cm會直接從遠(yuǎn)程下載parcel包遍蟋,而不是使用本地下載好的parcel。
解決辦法直接把.sh1文件復(fù)制一份螟凭,再加入manifest.json的hash值虚青,這樣才能hash驗證通過,使用本地下載好的parcel包螺男。
注意棒厘,.sh1文件也要在下載parcel包時下載好。
mysql數(shù)據(jù)庫最好跟cm主節(jié)點在一個節(jié)點上下隧,否則會出現(xiàn)無遠(yuǎn)程權(quán)限的問題奢人。
有時候識別不了 本地的 parcel
發(fā)現(xiàn)重啟master的cloudera-scm-server 就可以了
不過我看日志
2018-07-15 21:39:30,531 WARN ParcelUpdateService:com.cloudera.cmf.persist.ReadWriteDatabaseTaskCallable: Error while executing CmfEntityManager task
java.lang.IllegalArgumentException: Unknown Distro suffix: 1.cdh5.14.2.p0.3
at com.cloudera.cmf.CDHResources$Distro.valueOfSuffix(CDHResources.java:117)
at com.cloudera.parcel.ParcelIdentity.filenameInternal(ParcelIdentity.java:112)
at com.cloudera.parcel.ParcelIdentity.filename(ParcelIdentity.java:133)
at com.cloudera.parcel.ParcelIdentity$1.compare(ParcelIdentity.java:38)
at com.cloudera.parcel.ParcelIdentity$1.compare(ParcelIdentity.java:34)
at java.util.TimSort.countRunAndMakeAscending(TimSort.java:355)
也可能是文件名 也有問題
http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.3/RPMS/x86_64/
https://archive.cloudera.com/cm5/cm/5/cloudera-manager-centos7-cm5.14.3_x86_64.tar.gz
還有 mysql openjdk ,這個 在 centos7 建議使用 yum install淆院,如果 原裝的openjdk 你沒有卸載 只要 7+ 都可以直接用
//永久性的修改主機名稱何乎,重啟后能保持修改后的。
hostnamectl set-hostname xxx
//刪除hostname
hostnamectl set-hostname ""
hostnamectl set-hostname "" --static
集群 機器全部節(jié)點 配置ssh 免登陸 ,并在所有節(jié)點 配置 主機名 和 主機名映射 這次全部用root用戶 暫時
注意 所有節(jié)點 的 /etc/hosts 文件 內(nèi)的 默認(rèn) 127.0.0.1 localname1 localname2 ::1 啥的默認(rèn)都注釋掉先土辩,否則會報錯
hostname cdhmaster
hostname cdhnode1
hostname cdhnode2
vi /etc/hosts
101.111.32.178 cdhmaster
101.111.32.17 cdhnode3
101.111.32.18 cdhnode1
101.111.32.19 cdhnode2
127.0.0.1 localhost #這個最好就是放在后面
ssh-keygen -t rsa
cd ~/.ssh
ssh-copy-id -i id_rsa.pub root@cdhnode1
ssh-copy-id -i id_rsa.pub root@cdhnode2
yum -y install httpd
yum -y install mod_ssl
yum install lrzsz ##方便使用 rz sz 命令
sudo yum install java-1.8.0-openjdk java-1.8.0-openjdk-devel
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64
sudo rpm -Uvh [http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm](http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm)
sudo yum install mysql-server # 安裝 mysql 這里也有坑 建議大家看我之前寫的 mysql 安裝教程
yum install mysql-connector-java #centos 7 安裝 mysql-connector-java.noarch 1:5.1.25-3.el7
#默認(rèn) mysql-connector-java 會再次 安裝 jdk6 支救,一定要卸載 jdk 6 否則未來啟動會報錯 【Caused by: java.lang.UnsupportedClassVersionError: com/mysql/jdbc/Driver : Unsupported major.minor version 51.0】
yum list jdk # jdk.x86_64 2000:1.6.0_31-fcs
yum remove jdk #刪除jdk6
yum install nc
yum install telnet
材料準(zhǔn)備好了 之后 可以大干一場了
把你 下載的 cdh 相關(guān)的 rpm 包 放在一個目錄里,然后使用 yum localinstall *.rpm 安裝
yum localinstall *.rpm
mysql 安裝在cdh 的 master 角色 機器上拷淘,創(chuàng)建 scm 庫稍微出現(xiàn)了點問題 各墨,不大 ,主要 權(quán)限 密碼等,mysql 主要操作是創(chuàng)建用戶scm 和 一些數(shù)據(jù)庫 scm hive hue辕棚,并把操作權(quán)給scm用戶
/usr/bin/mysqladmin -u root password 'mypwd'
mysql -u root -p mypwd
create database hive DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database amon DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database hue DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database monitor DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database oozie DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
create database scm DEFAULT CHARSET utf8 COLLATE utf8_general_ci;
GRANT ALL PRIVILEGES ON *.* TO 'scm'@'cdhmaster' IDENTIFIED BY 'scm' WITH GRANT OPTION;
FLUSH PRIVILEGES; ## 注意 主機名 最好使用 主機名 不要使用 localhost欲主,否則 集群節(jié)點 連接時候會出問題
解壓 cloudera-manager-centos7-cm5.14.3_x86_64.tar.gz
tar -zxvf cloudera-manager-centos7-cm5.14.3_x86_64.tar.gz -C /usr/local/app/
解壓后會有兩個生成目錄 邓厕,一個 clouderamanager 一個 cmf ,cmf 里放著 cdh 的主要運行文件
chown -R cloudera-scm:cloudera-scm /opt/cloudera/parcel-repo/
然后 要修改 master 角色上的 db 配置文件
注意把最后一行 com.cloudera.cmf.db.setupType=INIT 注釋掉 !!!!
否則 cdh 百分之一萬啟動不來 扁瓢,會報錯的O昴铡!R浮昧互!
cd /etc/cloudera-scm-server
vi db.properties
com.cloudera.cmf.db.type=mysql
com.cloudera.cmf.db.host=master
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.setupType=EXTERNAL
com.cloudera.cmf.db.password=scm
# 注意把最后一行 com.cloudera.cmf.db.setupType=INIT 注釋掉
我參考的文章如下
http://www.reibang.com/p/90c209e6c22e
http://www.reibang.com/p/a5086ae9090f
https://zhuanlan.zhihu.com/p/25847794
這篇寫的 很全面
有幾個安裝 cdh rpm 創(chuàng)建的一些文件目錄 默認(rèn)的有幾個
/etc/cloudera-scm-server/db.
/var/log/cloudera-scm-server/cloudera-scm-server.log ##查看 輸出 日志
剩下的 agent 角色
Step2:配置cloudera agent
修改/etc/cloudera-scm-agent/config.ini文件的以下選項:
server_host=master #這樣 master 角色 才可以 監(jiān)聽到agent的心跳
server_port=7182 #若改端口被占用,改為其它端口
在 /opt/cloudera/parcel-repo 下 放置以下文件
默認(rèn)端口 http:localhost:7180,首次啟動 需要等三分鐘 伟桅,時間稍微有點長敞掘,沒耐心的還以為安裝失敗了
查看確定輸出 日志 并在另一個窗口 啟動
tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
tail -f /var/log/cloudera-scm-agent/cloudera-scm-agent.log
service mysql start
service cloudera-scm-server start
service cloudera-scm-agent start
如果訪問不了 也可能是防火墻的問題
CentOS7中若使用同樣的命令會報錯,
stop iptables.service
Failed to stop iptables.service: Unit iptables.service not loaded.
需要這樣
firewall-cmd --state #查看默認(rèn)防火墻狀態(tài)(關(guān)閉后顯示notrunning楣铁,開啟后顯示running)
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機啟動
init 6 #重啟虛擬機玖雁,然后再輸入第一條命令查看防火墻狀態(tài)
//臨時關(guān)閉
systemctl stop firewalld
//禁止開機啟動
systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
#當(dāng)然,如果安裝了iptables-service盖腕,也可以使用下面的命令赫冬,
yum install -y iptables-services
//關(guān)閉防火墻
service iptables stop
Redirecting to /bin/systemctl stop iptables.service
//檢查防火墻狀態(tài)
service iptables status
Redirecting to /bin/systemctl status iptables.service
鈼iptables.service - IPv4 firewall with iptables
Loaded: loaded (/usr/lib/systemd/system/iptables.service; disabled; vendor preset: disabled)
Active: inactive (dead)
然后 登錄 master 的 web ui
http://cdhmaster:7180
注意:如果創(chuàng)建失敗,根據(jù)報錯日志溃列,可能需刪去數(shù)據(jù)庫與用戶劲厌,進行排錯。相關(guān)命令如下:
進入 cdh cloudera manager 登錄界面听隐,默認(rèn)賬號密碼都是 admin
首次就是安裝 cdh补鼻,這個步驟可以參考
https://www.cnblogs.com/mycodingworld/p/cdh_installation_instructions.html
https://blog.csdn.net/a921122/article/details/51939692
首次啟動 時出現(xiàn) 問題 # Starting cloudera-scm-server: * Couldn't start cloudera-scm-server的解決辦法(圖文詳解)
參考這個 其實 看日志就知道就是 openjdk 的事兒
http://www.cnblogs.com/zlslch/p/7077979.html
基本就這些 祝福大家安裝順利
碰到這個問題 單機部署cloudera 安裝失敗。 無法接收 Agent 發(fā)出的檢測信號
先單獨開一個 Terminal 監(jiān)測 agent的日志
tail -f /var/log/cloudera-scm-server/cloudera-scm-server.log
保證 agent 是在運行的狀態(tài)中
一般就是修改 /etc/cloudera-scm-agent/config.ini
中的 server_ip 和 主機名要一致雅任,
如:server_host=172.16.1.249
不要是 localhost
另外 修改 主機名配置文件 /etc/hosts
##::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
# 101.161.82.17 master master
#127.0.0.1 master master
#127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
運行安裝過程要從頭再開始來一遍风范,不行就重啟 server 和agent
另外還要安裝 ntp ,并啟動 ntp 服務(wù)
yum –y install ntp
service ntpd restart
有個一個 很關(guān)鍵 椿访,parcel 文件 1.8G 乌企,如果本地已經(jīng) 下載過了 ,就直接使用本地路徑的文件成玫,默認(rèn)
cloudera的 parcel 路徑是 這個/opt/cloudera/parcel-repo 加酵,倒是 我的不是默認(rèn)的 /usr/local/app/cloudera/parcel-repo,否則 錯誤 哭当,則會下載網(wǎng)上的猪腕,老慢了
chown cloudera-scm.cloudera-scm /opt -R
chown cloudera-scm.cloudera-scm /var/log/cloudera-scm-agent -R
重要的!G湛薄B稀! 一定要創(chuàng)建 /opt/cloudera/parcel-repo 目錄 彻采,并把 parcel 文件相關(guān)的腐缤,都放這里捌归,
其他位置 真心不好使。岭粤,另外建議 吧CDH-5.14.2-1.cdh5.14.2.p0.3-el7.parcel cp 一下 為 CDH-5.14.2-1.cdh5.14.2.p0.3.parcel 惜索,
配置 cloudera-manager的倉庫文件
https://www.cloudera.com/documentation/enterprise/release-notes/topics/cm_vd.html
[cloudera-manager]
# Packages for Cloudera Manager, Version 5, on RedHat or CentOS 7 x86_64
name=Cloudera Manager
baseurl=https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.14.3/
gpgkey =https://archive.cloudera.com/cm5/redhat/7/x86_64/cm/RPM-GPG-KEY-cloudera
gpgcheck = 1
cd /etc/yum.repos.d/
vi cloudera-manager.repo
cloudera 安裝失敗了,重新不能選主機
這個 問題 剃浇,千萬不要聽網(wǎng)上的瞎逼逼 卸載 cdh 重新 安裝 巾兆,最簡單的 是在cm 控制面板 刪除原來的集群,再走一遍安裝 就可以了
另外我最后一臺 擴容的機器之前 安裝過 cdh 虎囚,需要先把之前的 chd 的rpm 都卸載掉 角塑,建議吧cloudera tar.gz的包重新解壓
還有就是 ,雖然 rpm刪除掉了淘讥,但是之前的文件目錄沒有 清掉圃伶,尤其要注意
代理節(jié)點啟動報錯(主機狀況不良):
錯誤信息:Error, CM server guid updated, expected df16790a-2e44-44ec-9db2-8731cc635c61, received b6fecabc-8e32-46be-8a43-5f261064b2c7
解決方法:刪除/var/lib/cloudera-scm-agent下cm_guid文件
另外 就是
擴容slave 機器
Step2:配置cloudera agent
修改/etc/cloudera-scm-agent/config.ini文件的以下選項:
server_host=master
server_port=7182 #若改端口被占用,改為其它端口
如果主機 發(fā)現(xiàn)添加有問題 要及時刪掉适揉,選擇 英文 的 remove 才可以真的 刪除 留攒,重新運行 安裝向?qū)В?/p>
擴容的機器要給他分配角色 ,其實就是 要安裝哪些內(nèi)容 組件,有時候 在分配角色時候 并不能正常 分配 嫉嘀,不怕,所有執(zhí)行后 然后在 單獨分配角色 魄揉,剛分配的角色組件是沒有啟動的剪侮,然后可以單獨 一個個 啟動,出現(xiàn) 的問題 一個是 java_home
還有之前的 文件目錄有權(quán)限問題洛退, rm -rf /data/
chmod -R root:root /data*
啟動如果出現(xiàn)問題瓣俯, 看完整的 角色日志 ,可以透過日志兵怯,查看到 錯誤的信息彩匕,擴容后 建議重啟 cdh ,在管理界面就可以 媒区,一般三四分鐘就可以了驼仪。
常見問題 安裝
容易出現(xiàn)的問題就是 ,
https://blog.csdn.net/qq_31215163/article/details/78214744?locationNum=8&fps=1
https://blog.csdn.net/ZhouyuanLinli/article/details/78013193
HDFS-副本不足的塊
副本不足的塊 ( Cluster 1 HDFS ) 2016年11月29日, 下午4點02 CST
測試 HDFS 是否具有過多副本不足塊袜漩。
不良 : 群集中有 707 個 副本不足的塊 塊绪爸。群集中共有 710 個塊。百分比 副本不足的塊: 99.58%宙攻。 臨界閾值:40.00%奠货。
操作
為此服務(wù)更改“副本不足的塊監(jiān)控閾值”。
建議
這是 HDFS 服務(wù)級運行狀況測試座掘,用于檢查副本不足的塊數(shù)是否未超過群集塊總數(shù)的某一百分比递惋。
該運行狀況測試失敗可能表示 DataNode 丟失柔滔。使用 HDFS fsck 命令可確定哪些文件含有副本不足的塊。
可使用 副本不足的塊監(jiān)控閾值 HDFS 服務(wù)范圍內(nèi)的監(jiān)控設(shè)置配置該測試萍虽。修改 復(fù)制因子 就可以了
https://blog.csdn.net/qq_31215163/article/details/78214744?locationNum=8&fps=1
https://blog.csdn.net/zzq900503/article/details/53393721
https://blog.csdn.net/lhy66/article/details/44588143
http://www.aboutyun.com/thread-9087-1-1.html
CentOS7離線安裝Cloudera Manager 5.14.1 !!!!!
https://blog.csdn.net/chenhai201/article/details/78856007
http://www.reibang.com/p/57179e03795f
mysql-connector-java 這個一定要 加到classpath 建議這樣安裝
yum install mysql-connector-java
最后 HBASE SQOOP2 OOZIE HIVE ZOOKEEPER HUE YARN HDFS hadoop spark 都順利安裝了
參考 https://blog.csdn.net/freedomboy319/article/details/44804721
https://zhuanlan.zhihu.com/p/25847794
cloudera manager install zookeeper Error found before invoking supervisord:'getpwnam(): name not found: zookeeper'
創(chuàng)建 zookeeper 用戶就可以了笛辟,類似這個
Huyu 7/3 18:30
Web
Kukai 7/4 am 10:00
Fenghuang 7/4 pm 2:30
Kuaiji 6:30
awk '{cmd="pip3 install " $1;system(cmd)}' ./piplist
jdbc4.MySQLSyntaxErrorException: Table 'oozie.VALIDATE_CONN' doesn't exist
CM界面重啟Load Balancer,會生成新的目錄/opt/cm-5.14.1/run/cloudera-scm-agent/process/114-hue-HUE_LOAD_BALANCER/衙解。提示同樣的錯誤。
原因:服務(wù)器環(huán)境沒有預(yù)先安裝httpd卵迂,mod_ssl服務(wù)
解決方法:
yum -y install httpd
yum -y install mod_ssl
Thu
Chexiao Am 10:30
Yunxiao pm 2:30
org.apache.hadoop.service.ServiceStateException: org.fusesource.leveldbjni.internal.NativeDB$DBException: IO error: /var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/LOCK: 權(quán)限不夠
<dd data-bind="text: params().path">/var/log/hadoop-yarn/hadoop-cmf-yarn-RESOURCEMANAGER-cdhcode.log.out</dd>
<dd data-bind="text: params().path">ativeDB$DBException: IO error: /var/lib/hadoop-yarn/yarn-nm-recovery/yarn-nm-state/LOCK: 權(quán)限不夠</dd>
<dd data-bind="text: params().path">該用戶是否有操作上面目錄的權(quán)限呢见咒? 用chmod -R 755 /var/lib/hadoop-yarn/ 賦予目錄權(quán)限</dd>
得知這個錯誤是因為沒有配置/etc/resolv.conf挂疆。
如何讓CDH 使用指定JDK
1.自定義安裝JDK,并配置環(huán)境變量宝当。
2.在安裝Cloudera Manager時胆萧,必須有指定的JDK,一般版本是在http://archive.cloudera.com/cm5/redhat/7/x86_64/cm/5.10.1/RPMS/x86_64/目錄下订晌。
3.在圖形化界面安裝CDH時锈拨,不選擇安裝JDK羹唠。
4.安裝成功之后,修改所有主機配置中的Java Home Directory验辞『吧溃【可以修改Cloudera Manager之外的所有節(jié)點JDK版本】
5.Cloudera Manager節(jié)點JDK,修改/etc/default/cloudera-scm-agent /etc/default/cloudera-scm-server 文件壳贪,添加Java Home Directory,
export JAVA_HOME=/opt/jdk1.8.0_111
grant all on scm.*to ‘hive’@‘localhost' with MAX_USER_CONNECTIONS 4 MAX_CONNECTIONS_PER_HOUR 1000;
select concat('kill ' ,id,';') kill_process from information_schema.
processlist ;
Fri
Yixin pm 2:00 7/6
注意查看日志爆出的真實錯誤
/etc/resolv.conf
Nameserver 8.8.8.8
Service network restart
/etc/sysconfig/network-scripts/
<pre style="color: rgb(0, 0, 0); font-family: PingFangSC-Regular, sans-serif; font-size: 14px; font-variant-ligatures: normal; word-wrap: break-word; white-space: pre-wrap;">/run/cloudera-scm-agent/process/</pre>
<pre>還有一種方法就是改變環(huán)境變量LANG #export LANG="en_US.UTF-8”</pre>
<pre>
| 進入到hive_home然后執(zhí)行下面命令
/opt/cloudera/parcels/CDH-5.14.2-1.cdh5.14.2.p0.3/lib/hive/bin
bin/schematool -dbType mysql -initSchema |
</pre>
<pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif; font-size: 14px;">
啟動hive時出現(xiàn):Unable to instantiate org.apache.hadoop.hive.ql.metadata.SessionHiveMetaStoreClient
<article>
網(wǎng)上匯總方案:
1.hive的版本過高導(dǎo)致的問題违施,所以其他伙伴有類似錯誤請考慮版本
2.需要hive元數(shù)據(jù)庫初始化,執(zhí)行 schematool -dbType mysql -initSchema
3.HIVE_HOME/lib 下的derby-10.11.1.1.jar問題留潦,兔院,把derby-10.11.1.1.jar 換成derby-10.10.2.0.jar問題成功解決
我的問題是hive-site.xml里面的hive.metastore.uris的value寫錯了站削,更改回來就解決了
解決方案:
原因:因為沒有正常啟動Hive 的 Metastore Server服務(wù)進程。
解決方法:啟動Hive 的 Metastore Server服務(wù)進程十偶,執(zhí)行如下命令:
</article>
</pre>
<pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif; font-size: 14px;">./hive --service metastore &</pre>
<pre>
Cloudera 安裝parcel hang的問題
可能是 openjdk 的原因
為主機指定 oricle 的jdk 1.8
吧 parcel-repo 的文件權(quán)限 都改成777
Cdh 指定jdk 版本
在 ui 選擇主機 配置
java_home_directory ,restart
CDH5之Exhausted available authentication methods
service sshd restart
javax.jdo.JDODataStoreException: Required table missing : "VERSION
" in Catalog "" Schema "". DataNucleus requires this table to perform its persistence operations. Either your MetaData is incorrect, or you need to enable “datanucleus.schema.autoCreateTables"
一修改 配置文件
二 可能是 沒有變成 mysql
https://blog.csdn.net/qq_26479655/article/details/52252335
lib 目錄放入 myql 的驅(qū)動包
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?characterEncoding=UTF-8</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>scm</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>scm</value>
</property>
show OPEN TABLES where In_use > 0; 這個語句記錄當(dāng)前鎖表狀態(tài)
查看表的狀態(tài)
SHOW STATUS LIKE 'table%';
SHOW STATUS LIKE 'innodb_row_lock%';
Hive 元數(shù)據(jù)“waiting for table metadata lock”
http://blog.sina.com.cn/s/blog_4112736d0101fhhx.html
Hive meta alter 造成 mysql 被鎖表
1.首先關(guān)閉所有的ssh shell
殺掉 mysql-connect-java 的進程
重啟mysql
刪掉 mysql 的hive數(shù)據(jù)庫
show full processlist;
-
<pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif;">./hive --service metastore &</pre>
<pre style="color: rgb(82, 82, 82); font-family: PingFangSC-Regular, sans-serif;">5. schematool -dbType mysql -initSchema</pre>
</pre>