CDH安装常见问题

1、Intall Parcel 的时候,hash verification failure

首先使用命令以下命令查看其hash值

sha1sum CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel

然后将 sha1sum 命令得出的值和 CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel.sha1、manifest.json 里面的值对比是否一致。若不一致可能下载文件 CDH-5.12.0-1.cdh5.12.0.p0.29-el6.parcel 已经损坏。使用迅雷等下载工具再次下载一个。

2、使用Cloudera Manager 添加主机的时候,mysql-libs-* 和已经安装的mysql冲突

如果节点已经高版本的mysql数据库的,可能会存在mysql-lib冲突的问题,不过mysql的官方已经给了一个解决的方法,就是安装mysql-lib兼容包。例如:

[root@test1 soft]# tar xvf mysql-5.7.19-1.el6.x86_64.rpm-bundle.tar 
mysql-community-libs-5.7.19-1.el6.x86_64.rpm
mysql-community-libs-compat-5.7.19-1.el6.x86_64.rpm  # mysql-libs 兼容的包
mysql-community-devel-5.7.19-1.el6.x86_64.rpm
mysql-community-embedded-5.7.19-1.el6.x86_64.rpm
mysql-community-common-5.7.19-1.el6.x86_64.rpm
mysql-community-server-5.7.19-1.el6.x86_64.rpm
mysql-community-test-5.7.19-1.el6.x86_64.rpm
mysql-community-embedded-devel-5.7.19-1.el6.x86_64.rpm
mysql-community-client-5.7.19-1.el6.x86_64.rpm
[root@test1 soft]# 

3、没有安装centos***.iso文件

094130_3blD_1055150.png

解决方法:挂载操作系统本地yum源

4、如何查看cdh中可用的components的版本信息?

cat manifest.json

5、Validations界面提示修改swappiness

安装CDH5.4.0的时候,Validations界面中有以下提示内容

Cloudera recommends setting /proc/sys/vm/swappiness to at most 10. Current setting is 60. Use the sysctl command to change this setting at runtime and edit /etc/sysctl.conf for this setting to be saved after a reboot. You may continue with installation, but you may run into issues with Cloudera Manager reporting that your hosts are unhealthy because they are swapping. The following hosts are affected: test1; test2 

说明下swappiness:
Linux系统的swap分区并不是等所有的物理内存都消耗完毕之后,才去使用swap分区的空间,什么时候使用是由swappiness参数值控制。通过下面的方法可以查看swappiness参数的值:

[root@rhce ~]# cat /proc/sys/vm/swappiness
60

结果显示该值默认为60,其中:
swappiness=0的时候,表示最大限度使用物理内存,然后才使用swap空间;swappiness=100的时候,表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间中。为了让操作系统尽可能的使用物理内存,降低系统对swap的使用,从而提高系统的性能。针对该值的修改应该先临时修改,再永久修改保证重启后生效,具体修改过程如下:

[root@test1 ~]# sysctl vm.swappiness=10   # 临时修改
vm.swappiness = 10
[root@test1 ~]# cat /proc/sys/vm/swappiness  # 修改后验证
10
[root@test1 ~]# echo 'vm.swappiness=10' >> /etc/sysctl.conf  # 永久修改
[root@test1 ~]# tail -1 /etc/sysctl.conf   # 修改后验证
vm.swappiness=10
[root@test1 ~]# 

6、Distrubuted None

Installing Selected Parcels 
The selected parcels are being downloaded and installed on all the hosts in the cluster.

Distrubuted None

解决:

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4  # =>保留
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6  # =>保留

7、clock off

在安装完hadoop集群中,hdfs报clock off,但经检查时间跟ntp server并无大的时间差距,最终解决是修改 /etc/ntp.conf中server只保留本地ntp server。

8、离线cloudera manager 仓库不识别

在配置完repo文件后,使用命令 yum repolist 查看cm的仓库时,报错:

namenode1:/var/www/html# yum repolist
Loaded plugins: product-id, search-disabled-repos, security, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
http://10.188.37.36/test/cm5/redhat/6/x86_64/5.12/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 403 Forbidden"
Trying other mirror.
To address this issue please refer to the below knowledge base article

https://access.redhat.com/solutions/69319

If above article doesn't help to resolve this issue please open a ticket with Red Hat Support.

repo id                                                                  repo name                                                                               status
Packages                                                                 Red Hat Enterprise Linux local                                                          3,854
cloudera-manager                                                         Cloudera Manager                                                                            7
repolist: 3,861
namenode1:/var/www/html# 

经查文件 test/cm5/redhat/6/x86_64/5.12/repodata/repomd.xml 存在且权限为777,如下所示:

namenode1:/var/www/html# ll
lrwxrwxrwx 1 root root   10 Aug 30 14:54 test -> /data/soft
namenode1:/var/www/html# ll test/cm5/redhat/6/x86_64/5.12/repodata/repomd.xml
-rwxrwxrwx 1 root root 951 Aug  9  2017 test/cm5/redhat/6/x86_64/5.12/repodata/repomd.xml
namenode1:/var/www/html# 

但是,test为软连接,真实目录为 /data/soft。取消软连接,将安装软件拷贝过来。

namenode1:/var/www/html# ll
total 4
drwxrwxrwx 3 root root 4096 Aug 30 14:51 soft
namenode1:/var/www/html# vi /etc/yum.repos.d/cloudera-manager.repo 
[cloudera-manager]
# Packages for Cloudera Manager, Version 5, on RedHat or CentOS 6 x86_64
name=Cloudera Manager
baseurl=http://10.188.37.36/soft/cm5/redhat/6/x86_64/5.12/
gpgcheck=0
"/etc/yum.repos.d/cloudera-manager.repo" 5L, 184C written
namenode1:/var/www/html# yum repolist
Loaded plugins: product-id, search-disabled-repos, security, subscription-manager
This system is not registered with an entitlement server. You can use subscription-manager to register.
cloudera-manager                                                                                                                                |  951 B     00:00     
repo id                                                                  repo name                                                                               status
Packages                                                                 Red Hat Enterprise Linux local                                                          3,854
cloudera-manager                                                         Cloudera Manager                                                                            7
repolist: 3,861
namenode1:/var/www/html#

9、Safe mode will be turned off automatically once the thresholds have been reached. 

org.apache.hadoop.ipc.RetriableException: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create file/tmp/.cloudera_health_monitoring_canary_files/.canary_file_2018_09_11-19_09_36. Name node is in safe mode.
The reported blocks 0 has reached the threshold 0.9990 of total blocks 0. The number of live datanodes 0 needs an additional 1 live datanodes to reach the minimum number 1.
Safe mode will be turned off automatically once the thresholds have been reached.
	at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkNameNodeSafeMode(FSNamesystem.java:1497)
	at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFileInt(FSNamesystem.java:2767)
	at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.startFile(FSNamesystem.java:2654)
	at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.create(NameNodeRpcServer.java:599)
	at org.apache.hadoop.hdfs.server.namenode.AuthorizationProviderProxyClientProtocol.create(AuthorizationProviderProxyClientProtocol.java:112)
	at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.create(ClientNamenodeProtocolServerSideTranslatorPB.java:401)
	at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java)
	at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:617)
	at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:1073)
	at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2217)
	at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2213)
	at java.security.AccessController.doPrivileged(Native Method)
	at javax.security.auth.Subject.doAs(Subject.java:422)
	at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1917)
	at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2211)
Caused by: org.apache.hadoop.hdfs.server.namenode.SafeModeException: Cannot create file/tmp/.cloudera_health_monitoring_canary_files/.canary_file_2018_09_11-19_09_36. Name node is in safe mode.
The reported blocks 0 has reached the threshold 0.9990 of total blocks 0. The number of live datanodes 0 needs an additional 1 live datanodes to reach the minimum number 1.
Safe mode will be turned off automatically once the thresholds have been reached.
	at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkNameNodeSafeMode(FSNamesystem.java:1493)
	... 14 more

解决方法:

data1:/usr/share/java# hadoop dfsadmin -safemode leave
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

safemode: Access denied for user root. Superuser privilege is required
data1:/usr/share/java# su hdfs
data1:/usr/share/java# hadoop dfsadmin -safemode leave
DEPRECATED: Use of this script to execute hdfs command is deprecated.
Instead use the hdfs command for it.

Safe mode is OFF in data1/10.188.37.36:8020
Safe mode is OFF in data2/10.188.37.37:8020
data1:/usr/share/java# 

10、Bad : The Hive Metastore canary failed to drop the table it created.

2018-09-11 17:53:27,908 WARN  org.apache.hadoop.hive.metastore.ObjectStore: [pool-8-thread-2]: Failed to get database cloudera_manager_metastore_canary_test_db_hive_hivemetastore_4f54e642ae7c4edef5f4c84fbea4a7a2, returning NoSuchObjectException
MetaException(message:You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_SELECT_LIMIT=DEFAULT' at line 1)
        at org.apache.hadoop.hive.metastore.ObjectStore$GetHelper.run(ObjectStore.java:2640)
        at org.apache.hadoop.hive.metastore.ObjectStore.getDatabaseInternal(ObjectStore.java:635)
        at org.apache.hadoop.hive.metastore.ObjectStore.getDatabase(ObjectStore.java:619)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:103)
        at com.sun.proxy.$Proxy7.getDatabase(Unknown Source)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_database_core(HiveMetaStore.java:1083)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_database(HiveMetaStore.java:1229)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:140)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:99)
        at com.sun.proxy.$Proxy16.drop_database(Unknown Source)
        at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$drop_database.getResult(ThriftHiveMetastore.java:9138)
        at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$drop_database.getResult(ThriftHiveMetastore.java:9122)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
        at org.apache.hadoop.hive.metastore.TUGIBasedProcessor$1.run(TUGIBasedProcessor.java:110)
        at org.apache.hadoop.hive.metastore.TUGIBasedProcessor$1.run(TUGIBasedProcessor.java:106)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1917)
        at org.apache.hadoop.hive.metastore.TUGIBasedProcessor.process(TUGIBasedProcessor.java:118)
        at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
2018-09-11 17:53:27,909 ERROR org.apache.hadoop.hive.metastore.RetryingHMSHandler: [pool-8-thread-2]: NoSuchObjectException(message:cloudera_manager_metastore_canary_test_db_hive_hivemetastore_4f54e642ae7c4edef5f4c84fbea4a7a2: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_SELECT_LIMIT=DEFAULT' at line 1)
        at org.apache.hadoop.hive.metastore.ObjectStore.getDatabase(ObjectStore.java:629)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.hadoop.hive.metastore.RawStoreProxy.invoke(RawStoreProxy.java:103)
        at com.sun.proxy.$Proxy7.getDatabase(Unknown Source)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_database_core(HiveMetaStore.java:1083)
        at org.apache.hadoop.hive.metastore.HiveMetaStore$HMSHandler.drop_database(HiveMetaStore.java:1229)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invokeInternal(RetryingHMSHandler.java:140)
        at org.apache.hadoop.hive.metastore.RetryingHMSHandler.invoke(RetryingHMSHandler.java:99)
        at com.sun.proxy.$Proxy16.drop_database(Unknown Source)
        at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$drop_database.getResult(ThriftHiveMetastore.java:9138)
        at org.apache.hadoop.hive.metastore.api.ThriftHiveMetastore$Processor$drop_database.getResult(ThriftHiveMetastore.java:9122)
        at org.apache.thrift.ProcessFunction.process(ProcessFunction.java:39)
        at org.apache.hadoop.hive.metastore.TUGIBasedProcessor$1.run(TUGIBasedProcessor.java:110)
        at org.apache.hadoop.hive.metastore.TUGIBasedProcessor$1.run(TUGIBasedProcessor.java:106)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.Subject.doAs(Subject.java:422)
        at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1917)
        at org.apache.hadoop.hive.metastore.TUGIBasedProcessor.process(TUGIBasedProcessor.java:118)
        at org.apache.thrift.server.TThreadPoolServer$WorkerProcess.run(TThreadPoolServer.java:286)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)

重点信息:

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'OPTION SQL_SELECT_LIMIT=DEFAULT' at line 1

需要调整mysql的jar包适配MySql Server的版本,首先查看一下mysql的版本:

data1:/root# mysql -u root -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 1823
Server version: 5.7.19 MySQL Community Server (GPL)

Copyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> 

确认一下mysql的jar包版本:

data1:/root# ll /usr/share/java/
total 13604
drwxr-xr-x. 2 root root     4096 Oct 19  2016 gcj-endorsed
-rw-r--r--. 1 root root 10143547 Oct 19  2016 libgcj-4.4.4.jar
lrwxrwxrwx. 1 root root       16 Jun 15 19:01 libgcj-4.4.7.jar -> libgcj-4.4.4.jar
lrwxrwxrwx  1 root root       31 Sep 11 19:00 mysql-connector-java.jar -> mysql-connector-java-5.1.17.jar
data1:/root# 

升级mysql的jar包到mysql-connector-java-5.1.38.jar

mysql-connector-java.jar -> mysql-connector-java-5.1.38.jar

重启hive,问题解决。

11、Spark2 : Deploy Client Configuration failed : Completed only 6/8 steps. First failure:Client configuration(id=17) onhost data17(id=7) exited with 1 and expectd 0.

确认jdk的版本

data1:/root# rpm -aq| grep jdk
jdk-1.7.0_80-fcs.x86_64
jdk1.8-1.8.0_181-fcs.x86_64
data1:/root# rpm -e --nodeps jdk-1.7.0_80-fcs.x86_64

重新deploy client configuration,问题解决。

转载于:https://my.oschina.net/qzhli/blog/1507356

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值