在日常的维护中遇到过几次设备负载较高的情况,集中在老设备或者低端型号AC-1300及以下。常见的现象有以下几种: 1.打开控制台加载慢、反应慢。443等其他端口通,但控制台无法登陆,需要重启设备或者httpd进程才能恢复; 2.CPU频繁跑到90~100%的者黄色条,内存一直处于较高水平,通过SNMP监控等发现经常取不到监控值;
3.出现漏审或者数据中心频繁报错,外置数据中心无法同步。(外置数据中心同步进程较耗cpu,系统CPU超过30%会暂停同步)。
现对遇到的一些设备负载较高的情况和处理经验某公司,先扔个砖头。
1.选型失误,客户带宽和用户数超过设备实际所能承载的性能。
这种情况一般没有好办法解决,所以建议在前期了解清楚现有带宽和用户数,并考虑设备生命周期内的带宽和用户的增长量。如果确实预算有限,呃,巧工难为无米之炊,尽可能选高的吧。如果带宽和用户比例差别较大,建议以大的来选或者折中。
2.内网有并发量大的服务器或者内网中毒大量发包导致设备CPU负载高。
这种情况排查设备连接数,开启防DoS攻击,看看是否是大量并发数据包导致的。检测到告警后结合客户实际应用情况判断是否是中毒或者是正常应用,在讨论优化办法。
3.内置数据中心日志量大,导致设备CPU负载高,内存占用率高。
随着设备内置数据中心日志量的逐渐增大,对设备负载的压力也越来越大,不仅仅只是占磁盘空间,由于对日志的统计及附件修复等动作对CPU和内存的利用率都会增加。就个人感觉来说:2014年新硬件平台更新之前的设备,低端型号设备内置数据中心日志量建议不要超过30%或50G,超过100G对设备压力有较明显的影响。另外一点就是日志就是3.X、4.X这些版本日志量大了后数据中心很容易崩溃,不过这点5.X版本后有了不少的改善。如果对日志要求较高,建议使用外置数据中心且定期备份外置数据中心,在确认数据完整的前提下,清空内置数据中心,降低设备负载。
4.部分版本路由配置不当导致设备负载较高。
最近遇到一个售后问题,一台AC-5.5R1,透明模式串在防火墙和三层交换机之间,但默认路由丢给3层交换机。最佳实践是默认路由丢给防火墙LAN口,到内网的回包丢给三层交换机,之前也没事,最近发现下班后仍有稳定在50Mbps/S的流量,达到这台AC1300流量的负载上限。且看不到哪个源IP这么高。排查非内网其他原因后将路由按最佳实践的方式改后恢复正常。这个原因目前还未最终确定,但初步怀疑是设备某些版本处理机制的问题,对拦截的数据包进行重定向或者发reset的时候来回路由不一致导致的。
其他就是一些奇葩的原因了,如AC4.X版本发货设备就是512M,加个电单机直连设备资源都消耗了一大半,最后加返厂内存了事。随着版本的不断升级更新,对设备的硬件性能要求也越来越高,一般来说硬件性能不满足或者刚好满足都不建议升级到太高版本。如果有设备刚好满足升级条件升级后内存占用较高的可以打一个swap补丁包,在硬盘分一块作为虚拟内存交换区使用,也可以作为缓解或者优化的手段。 |