博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Hadoop运维记录系列(八)
阅读量:6656 次
发布时间:2019-06-25

本文共 1227 字,大约阅读时间需要 4 分钟。

新部署了几个接收服务器,因为以前的老业务都是nginx接收的,没法迁移到scribe或者fluentd上。所以,只能在这些服务器上部署hadoop的client,用fs -put的方法把nginx生成的NCSA日志定时放到HDFS里。也就是在nginx服务器上需要部署hadoop的client。

hadoop部署好了之后交给别人做日志的put脚本,然后一会报告我,put失败。而且是一会成功一会失败,不定。看了一下,主要是报了一个Java的TCP错误,No buffer space available。尝试ping了一下内网的机器,也是报这个故障,无法发送ICMP包,根本ping不通。考虑到这台服务器在担任hadoop client的同时还担负nginx的任务,应该是属于ARP表满的问题。OPS在新做机器的时候,都用了默认配置,没有做内核参数的优化才导致了这样的问题。

echo 512 > /proc/sys/net/ipv4/neigh/default/gc_thresh1echo 2048 > /proc/sys/net/ipv4/neigh/default/gc_thresh2echo 10240 > /proc/sys/net/ipv4/neigh/default/gc_thresh3

以root身份执行上述操作,问题解决。就是apr表超过了缓存大小了,可能是因为网络问题,没有及时进行连接的关闭,所以无法进行垃圾回收。

下面是关于这些参数的说明,以下内容摘自网络

gc_stale_time决定检查一次相邻层记录的有效性的周期。当相邻层记录失效时,将在给它发送数据前,再解析一次。缺省值是60秒。gc_thresh1存在于ARP高速缓存中的最少层数,如果少于这个数,垃圾收集器将不会运行。缺省值是128。gc_thresh2保存在 ARP 高速缓存中的最多的记录软限制。垃圾收集器在开始收集前,允许记录数超过这个数字 5 秒。缺省值是 512。gc_thresh3保存在 ARP 高速缓存中的最多记录的硬限制,一旦高速缓存中的数目高于此,垃圾收集器将马上运行。缺省值是1024。

说到这里,又忍不住要吐槽了,这次季度的KPI考核,我们数据部门被别人打了不及格的分数。这事不吐不行,上面一边说数据是重中之重,一边把数据划归公司末流的支撑性部门,比行政还不如,对我来说这就跟一贪官在台上大谈廉政为民的感觉是一样的。nginx单台并发最高暴过80万,平时基本就是二三十万的并发,php并发最高到过8000/秒。别问我怎么做到的,我的确已经尽力了。就这样都死活不给加服务器,让我不丢数,臣妾做不到啊。算了一下,淘宝每天15万任务,4500台服务器,平均每一万任务需要300台服务器。现在我们一天将近一万个数据任务,跑在40台服务器上,让我保证任务无失败,臣妾做不到啊。臣妾多想把数据的基础平台搞好啊,可是啥东西都不给,臣妾真的做不到啊。

转载地址:http://izqto.baihongyu.com/

你可能感兴趣的文章
emacs之配置4,颜色插件
查看>>
emmet语法
查看>>
[效率提升]工作中的那些命令行
查看>>
citus 多租户应用开发(来自官方文档)
查看>>
java鼠标双击和右键事件处理
查看>>
hash算法
查看>>
聊聊.net程序设计——浅谈使用VS2010建模拓展(上)[转]
查看>>
Archlinux下给T43添加Win键(Super键)
查看>>
Objective-C——消息、Category和Protocol
查看>>
Python 3.x中maketrans和translate用法
查看>>
关于抽象类中构造函数的一些学习
查看>>
CoffeeScript及相关文本标记语言
查看>>
Foundation框架中的NSNumber对象详解
查看>>
Jquery获取下拉选择节点名称值赋给textbox文本框 获取 父节点的栏目名称编号
查看>>
[037] 微信公众帐号开发教程第13篇-图文消息全攻略
查看>>
磁珠的作用
查看>>
DiskFileUpload类别
查看>>
获取缓存大小和清除缓存功能
查看>>
java创建文件和目录
查看>>
【mysql】关于乐观锁
查看>>