CDH笔记

CDH内存调拨过度警告分析

参考链接

CDH HUE配置自定义MySql数据库

1.“配置” tab
2.选择"类别" —> “数据库”
3.Hue数据库用户名(user) -> root,
Hue数据库密码(password) -> root用户的密码,
Hue数据库名称 -> hue
参考链接

Hbase(HDFS的faladata03角色DataNode也出现过)

hbase:faladata02角色RegionServer意外退出

报错:该角色在之前的 5 分钟 中遇到 1 次意外退出。这包括由于 OutOfMemory 错误而导致的 1 退出。 临界阈值:任意。

原因是hbase启动的原始内存太小了,然后我们修改 "HBase RegionServer 的 Java 配置选项"参数

参数:-Xmx256m -Xms256m -XX:MaxNewSize=128m -XX:NewSize=128m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70 -XX:+CMSParallelRemarkEnabled -XX:ReservedCodeCacheSize=256m

注:在添加后HBase依旧不稳定的情况下,将 -Xmx256m -Xms256m 改为 -Xmx512m -Xms512m 后HBase运行状态无任何隐患告警,正常运行。

参考链接

faladata01的RegionServer角色启动失败,端口60020被占用

现象
EsgynDB所在的集群,HBase有4台RegionServer,因某种原因有一个RegionServer下线。从CDH Manager中手动启动此RegionServer无法启动,报错信息如下:

Region server exiting
java.lang.RuntimeException: Failed construction of Regionserver: class org.apache.hadoop.hbase.regionserver.HRegionServer
	at org.apache.hadoop.hbase.regionserver.HRegionServer.constructRegionServer(HRegionServer.java:2704)
	at org.apache.hadoop.hbase.regionserver.HRegionServerCommandLine.start(HRegionServerCommandLine.java:64)
	at org.apache.hadoop.hbase.regionserver.HRegionServerCommandLine.run(HRegionServerCommandLine.java:87)
	at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
	at org.apache.hadoop.hbase.util.ServerCommandLine.doMain(ServerCommandLine.java:127)
	at org.apache.hadoop.hbase.regionserver.HRegionServer.main(HRegionServer.java:2719)
Caused by: java.lang.reflect.InvocationTargetException
	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
	at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
	at org.apache.hadoop.hbase.regionserver.HRegionServer.constructRegionServer(HRegionServer.java:2702)
	... 5 more
Caused by: java.io.IOException: Problem binding to /0.0.0.0:60020 : Address already in use. To switch ports use the 'hbase.regionserver.port' configuration property.
	at org.apache.hadoop.hbase.regionserver.RSRpcServices.<init>(RSRpcServices.java:932)
	at org.apache.hadoop.hbase.regionserver.HRegionServer.createRpcServices(HRegionServer.java:664)
	at org.apache.hadoop.hbase.regionserver.HRegionServer.<init>(HRegionServer.java:541)
	... 10 more
Caused by: java.net.BindException: Address already in use

解决
根据报错信息,发现是60020端口被占用了,通过命令"netstat -tapn | grep 60020"检查被占用的端口

[root@faladata01 ~]# netstat -tapn | grep 60020
tcp        0      0 192.168.7.57:60020          192.168.7.57:3306           ESTABLISHED 961/java            
tcp        0      0 ::ffff:192.168.7.57:3306    ::ffff:192.168.7.57:60020   ESTABLISHED 8140/mysqld 

我们发现有一条,此java进程正占用着60020端口,导致RegionServer无法启动。
手动杀掉此进程号,问题解决。

kill -9 961

参考链接

HDFS节点角色DataNode

HDFS:faladata02角色DataNode意外退出

报错
DataXceiver error processing WRITE_BLOCK operation src: /192.168.7.58:52434 dst: /192.168.7.58:50010

faladata02:50010:DataXceiver error processing WRITE_BLOCK operation  src: /192.168.7.58:52434 dst: /192.168.7.58:50010
java.io.IOException: Not ready to serve the block pool, BP-1650803385-192.168.7.58-1555501962641.

原因:
文件操作超租期,实际上就是data stream操作过程中文件被删掉了。
解决方法

1.修改数据传输线程个数:HDFS to  实例 to DataNode to 配置 to search "dfs.datanode.max.transfer.threads"
2. 4096 to 8192
3. 修改hdfs-site.xml (针对2.x版本, 1.x版本属性名应该是: dfs.datanode.max.xcievers):
<property>
	<name>dfs.datanode.max.transfer.threads</name>
	<value>8192</value>
</property>

参考链接1
参考链接2
参考链接3

在cdh中查看服务组件的版本号

选择主机->所有主机->选择一个主机-> 组件,如下图:
这里写图片描述
这里写图片描述

CDH报错cloudera-scm-server dead but pid file exists

cd /opt
find ./ -name cloudera-scm-server.pid
rm -f cloudera-scm-server.pid

参考链接

Linux服务器jps报process information unavailable

cd /tmp
rm -rf *

参考链接

hdfs权限问题

Permission denied: user=hdfs, access=WRITE, inode="/origin_data/gmall/log/topic_start/2019-02-10/logstart-.1549728042159.lzo":root:supergroup:drwxr-xr-x

hadoop中的hdfs-site.xml如下(将这里面的value改为false,写到hdfs-site.xml中即可.
然后,重启namenode):
<property>
  <name>dfs.permissions.enabled</name>
  <value>false</value>
</property>

hive 执行报错

Current usage: 232.2 MB of 1 GB physical memory used; 2.7 GB of 2.1 GB virtual memory used. Killing container.
hadoop 中的 yarn-site.xml添加,后重启nodemanager(sbin/stop/start-yarn.sh)

<property>
    <name>yarn.nodemanager.vmem-check-enabled</name>
    <value>false</value>
</property>
<property>
    <name>yarn.nodemanager.vmem-pmem-ratio</name>
    <value>4</value>
</property>

参考链接

flume报错

Failed loading positionFile:java.io.EOFException: End of input at line 1 column 1

在这里插入图片描述

在进行flume监控文件时,产生的taildir_position.json文件错误

猜测原因:

之前启动时,发生了错误。这时候已经生成了taildir_position.json文件,这时候在修改好一切配置文件再启动时,它会读取该文件,用来找到,之前操作的位置,但里边啥也没有?就发生了错误

解决方法:

1.删掉该文件,重新启动flume

2.在配置文件中指定其他未存在的文件 a1.sources.r1.positionFile = /opt/module/flume/taildir_position.json1

参考链接

CDH集群-无法找到主机的NTP 服务,或该服务未响应时钟偏差请求

场景
CDH集群启动成功,但是有某些主机提示“无法找到主机的NTP 服务,或该服务未响应时钟偏差请求”

问题思路

  1. NTP服务没有正常启动
  2. CDH后台程序存在异常

解决脚本

  1. 先关闭CDH的服务,在界面进行关闭集群服务
  2. 每台主机开启NTP服务
systemctl restart ntpd
service ntpd restart
  1. 每台主机重启cloudera-scm-agent
  2. 等待5分钟,到CDH控制台查看结果,该异常已经解决

参考链接

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值