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所有,欢迎转载.转载时,请在文章明显位置注明原文链接.若在未经作者同意的情况下,将本文内 ...
随机推荐
- Flex Box 简单弹性布局
弹性盒子模型有两种规范:早起的display:box 和后期的display:flex.它可以轻易的实现均分.浮动.居中等灵活布局,在移动端只考虑webkit内核时很实用. 一.display:box ...
- SpringBoot 之HelloController
1.搭建环境 1.1 新建一个maven项目,一路下一步 1.2 打开pom 文件,首先增加<parent></parent>标签: <parent> <gr ...
- SQL Server的优点与缺点
一般来说索引会加快查询速度,但会影响插入,修改,删除的数据,且占用物理空间;所以我们应该合理的创建索引,而且应该先创建聚合索引,再创建非聚合索引.要在经常进行查询的列上创建索引,而且如果表列较少的话要 ...
- python匿名函数 高阶函数 内置函数 文件操作
1.匿名函数 匿名就是没有名字 def func(x,y,z=1): return x+y+z 匿名 lambda x,y,z=1:x+y+z #与函数有相同的作用域,但是匿名意味着引用计数为0,使用 ...
- Android Authenticator使用(转)
出处:http://blog.udinic.com/2013/04/24/write-your-own-android-authenticator/ 这篇文章个人觉得讲的非常好,比官方文档还要清晰,将 ...
- LeetCode题解之Add Strings
1.题目描述 2.问题分析 直接按照加法运算规则运算即可,注意进位问题. 3.代码 string addStrings(string num1, string num2) { if( num1.emp ...
- alwayson监控
最近大体自己写了点alwayson相关的监控,是通过存储过程的方法,做个笔记如下: --alwayson启用状态 declare @isenabled sql_variant SELECT @isen ...
- [转] iOS 动画库 Pop 和 Canvas 各自的优势和劣势是什么?
iOS 动画库 Pop 和 Canvas 各自的优势和劣势是什么? http://www.zhihu.com/question/23654895/answer/25541037 拿 Canvas 来和 ...
- [C++] 用Xcode来写C++程序[4] 函数
用Xcode来写C++程序[4] 函数 此节包括引用函数,内联函数,防止修改函数入参,函数自身带有默认值. 引用函数:防止复制对象,减少系统开销 内联函数:编译的时候根据具体情形将代码嵌入进去,成不成 ...
- [C++] 用Xcode来写C++程序[2] 操作变量
用Xcode来写C++程序[2] 操作变量 此节讲解包括变量的初始化的几种方式,以及泛型编程的两种变量赋值方式. 最基本的变量赋值以及操作: // operating with variables # ...