摘要:
核心概念 hdfs checkpoint 机制对于 namenode 元数据的保护至关重要, 是否正常完成检查点是评估 hdfs 集群健康度和风险的重要指标 editslog : 对 hdfs 操作的事务记录,类似于 wal ,edit log文件以 edits_ 开头,后面跟一个txid范围段,并 阅读全文
摘要:
flink jobmanager 终止任务失败问题 现象 用户 flink 任务提交客户端侧抛出请求错误,经排查发现是客户端主动 cancle 的.接着排查 yarn app 日志,发现本质错误是 jm 退出了,接着看 jm 日志,jm 退出是由于失去了 leadership 导致的 排查过程 了解 阅读全文
摘要:
我们从动态的角度来看 hdfs 先从场景出发,我们知道 hdfs 的写文件的流程是这样的: 数据以 pipeline 的方式写入 hdfs ,然后对于读取操作,客户端选择其中一个保存块副本的 DataNode 来读数据.考虑这样两个场景: hbase rs 在写 wal log 的时候.如果一个 r 阅读全文
摘要:
问题现象 用户迁移到新集群后,反馈他们开发平台大量 flink 任务提交失败了,当时集群的 yarn 资源是足够的 排查过程 用户是在他们的开发平台上提交的,查看他们失败的任务,发现是他们提交端主动 Kill 的,接着沟通发现他们提交平台有个逻辑就是提交到 yarn 的 flink 任务,如果在 2 阅读全文
摘要:
现象 用户反馈 hs2 打开的文件描述符的数量一直在涨,但是当前 hs2 的连接只有个位数。 排查过程 首先找到 hs2 进程持有了哪些文件描述符,通过 lsof 命令 lsof -p $pid ,看到 hs2 进程确实在 /data/emr/hive/tmp/operation_logs/ 目录下 阅读全文
摘要:
tcp mem 相关 net.ipv4.tcp_rmem = 4096 131072 6291456 读取缓冲区,单位字节 net.ipv4.tcp_wmem = 4096 16384 4194304 发送缓冲区,单位字节 net.ipv4.tcp_mem = 760707 1014278 1521 阅读全文
摘要:
报错截图: 从报错信息看是 distcp 起的map 任务在写 hdfs 的 pipline 失败了,并且重试了5次没有成功,所以这个 task 直接抛出错误失败被 kill 了. 先说解决办法: 清空了 hdfs 所以节点的 iptables 防火墙规则 加了参数 -Dmapreduce.map. 阅读全文
摘要:
当报一些很奇怪的错,比如报错多了一个空格,但 vim 看打开没有,比如: 或者肉眼看上去路径正常,但却报路径不存在: 这种时候要使用 dos2unix 工具,把这个列表文件转换一下: 阅读全文
摘要:
共涉及三个参数: dfs.namenode.replication.max-streams 30 ⇒ 70 dfs.namenode.replication.max-streams-hard-limit 40 ⇒ 90 dfs.namenode.replication.work.multiplier 阅读全文
摘要:
当 datanode 上新写完一个块,默认会立即汇报给 namenode。在一个大规模 Hadoop 集群上,每时每刻都在写数据,datanode 上随时都会有写完数据块然后汇报给 namenode 的情况。因此 namenode 会频繁处理 datanode 这种快汇报请求,会频繁地持有锁,其实非 阅读全文