hadoop日常维护之问题解决01
执行hadoop任务遇到的问题:
Caused by: org.apache.hadoop.ipc.RemoteException(java.io.IOException): File /user/hive/warehouse/rec_new2.db/user_session/.hive-staging_hive_2017-12-10_08-22-41_311_4339813855157373054-1/-ext-10000/_temporary/0/_temporary/attempt_20171210082241_0000_m_000000_3/appid=10017/dt=2017-12-09/part-00000 could only be replicated to 0 nodes instead of minReplication (=1). There are 3 datanode(s) running and no node(s) are excluded in this operation
当时遇到无论是hive向hadoop写入数据还是spark、storm写入数据都报以上错误:
一开始网上各种找,冷静下仔细看hadoop运行日志信息,
日志查看:
$HADOOP_HOME/logs
通过在master节点查看,tail –f hadoop-root-namenode-hadoop-master.log 监听namenode运行日志信息,发现问题所在:
原来在hadoop配置文件中,预留磁盘大小为20G,通过df -hl 命令查看磁盘空间大小,发现hadoop-slave3 磁盘空间只剩17G,导致数据无法插入;
解决方案:增大磁盘空间或删除较大文件,达到配置预留磁盘空间即可;
由于spark配置的是standalone模式,导致每执行一个spark任务,运行日志中都会有一个运行任务所需jar包;累积下来占用磁盘空间;可定期删除,也可以配置spark-env.sh 每执行完后直接删除运行日志信息及jar包;
spark运行任务查看运行日志信息及jar包所在位置:$SPARK_HOME/work
运行完直接删除运行日志信息及jar包,在spark-env.sh中加入如下内容:
SPARK_WORKER_OPTS=”-Dspark.worker.cleanup.enabled=true”
注意官方文档中说不管程序是否已经停止,都会删除文件夹,这是不准确的,只有停止掉的程序文件夹才会被删除
附:
Hdfs-site.xml:
可以通过配置,修改配置只需停掉集群重启即可:
$HADOOP_HOME/conf/hdfs-site.xml 文件里的 dfs.datanode.du.reserved 属性来配置HDFS预留磁盘的空间大小,从而限制 data node 的磁盘使用量(单位是字节数),如以下配置会给磁盘预留20GB的空间:
<property>
<name>dfs.datanode.du.reserved</name>
<!-- reserved space in bytes -->
<value>21474836480</value>
<description>Reserved space in bytes per volume. Always leave this much space free for non dfs use.
</description>
</property>
hadoop日常维护之问题解决01的更多相关文章
- Hadoop日常维护系列——Hadoop添加删除节点
添加节点 1.修改host 和普通的datanode一样.添加namenode的ip 2.修改namenode的配置文件conf/slaves 添加新增节点的ip或host 3.在新节点的 ...
- MS SQL 日常维护管理常用脚本(二)
监控数据库运行 下面是整理.收集监控数据库运行的一些常用脚本,也是MS SQL 日常维护管理常用脚本(一)的续集,欢迎大家补充.提意见. 查看数据库登录名信息 Code Snippet SELEC ...
- Nginx日常维护操作(3)
一.简明nginx常用命令 1. 启动 Nginx /sbin/nginx service nginx start 2. 停止 Nginx /sbin/nginx -s stop /sbi ...
- SQL Server 日常维护经典应用
SQL Server日常维护常用的一些脚本整理. 1.sql server开启clr权限: GO RECONFIGURE GO ALTER DATABASE HWMESTC SET TRUSTWORT ...
- SaltStack日常维护-第七篇
练习内容 远程执行其他模块 官方模块有很多超过300+ 1.cmd.run 2.network 3.service 4.state 5.其它日常维护 演示 cmd.run模块 可以执行系统命令,超级模 ...
- oracle 容灾库日常维护 ,健康检查脚本 以及常见问题分析
select DEST_ID, APPLIED_SCN FROM v$archive_dest select * from v$dataguard_status; SELECT gvi.thread# ...
- MapReduce On Yarn的配置详解和日常维护
MapReduce On Yarn的配置详解和日常维护 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.MapReduce运维概述 MapReduce on YARN的运维主要是 ...
- MC-BE基岩版服务器搭建与日常维护
有部分内容被csdn和谐,强烈建议移步我的个人博客以获得更好的排版和阅读体验: xzajyjs.cn. 目录 环境搭建 开始部署 日常维护 服务器的白名单机制 定时备份 服务器升级 服务器模组安装 搭 ...
- ORACLE分区表梳理系列(二)- 分区表日常维护及注意事项(红字需要留意)
版权声明:本文发布于http://www.cnblogs.com/yumiko/,版权由Yumiko_sunny所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...
随机推荐
- Flutter与Android混合开发及Platform Channel的使用
相对于单独开发Flutter应用,混合开发对于线上项目更具有实际意义,可以把风险控制到最低,也可以进行实战上线.所以介绍 集成已有项目 混合开发涉及原生Native和Flutter进行通信传输,还有插 ...
- idapython 开发
调试方法 使用 pydevd 然后在需要调试处加入调试代码 GetOperandValue 作用 参数1: ea 虚拟地址 参数2: 操作数号 返回指令的操作数的被解析过的值 文档 def GetOp ...
- oracle sql 命令类别
1.数据定义语言 DDL 有 create alter drop2.数据操纵语言 DML insert select delete update3.事务控制语言 TCL commit savepoin ...
- Android组件系列----Activity的生命周期
[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/3 ...
- webpack的require是如何工作的?
https://stackoverflow.com/questions/35625593/how-does-webpacks-require-work wepback的require函数调用类似于no ...
- springboot 针对jackson是自动化配置
spring.jackson.date-format指定日期格式,比如yyyy-MM-dd HH:mm:ss,或者具体的格式化类的全限定名 spring.jackson.deserialization ...
- MyEclipse 智能提示设置
在实际的开发当中,编译器没有智能提示,确实是效率很低,下面我就给大家讲一下在MyEclipse中设置智能提示,方便大家的开发,希望能帮到大家. 方法一:首先,在MyEclipse的菜单栏中找到wind ...
- mysql安装--常见
1.安装报如下错: 分析: 你的系统太老了 Win7 \win8啥的吧 这是缺失C++ 依赖包 去MS下一个 补丁安装以后再重新执行就好了 Update for Visual C++ 2013 and ...
- Python读写oracle数据库
最近项目中需要用到Python调用oracle实现读写操作,踩过很多坑,历尽艰辛终于实现了.性能怎样先不说,有方法后面再调优嘛.现在把代码和注意点记录一下. 1. 所需Python工具库 cx_Ora ...
- 铁乐学python_day10_作业
1.继续整理函数相关知识点,写博客. 2.写函数,接收n个数字,求这些参数数字的和.(动态传参) def sum_n(*args): sum = 0 for i in args: sum += i r ...