企业生产环境服务故障排障思路心得总结
起因:
这周在部署某企业内部防火墙时,因为没有与企业内部网络运维工程师进行及时有效的沟通,导致业务迟迟没有上线。服务始终无法发布到公网上。在经过多次测试与排障之后,终于将业务顺利上线。
总结:
经过长时间在生产环境担任运维工作,本人也总结了一些排障思路希望可以帮助到苦于排障但又没有思路的小伙伴们。
1.首先你得有故障,即发现问题。比如说经常会有的什么服务又没有起得来,又是什么服务报错,服务器之间迟迟无法连通等等。
2.针对这些故障如果可以找到报错,我们首先需要分析报错的内容。因为如果可以正确理解为什么会报错,就可以找到故障出现在哪里。这比你一个一个去排查故障要来的快得多。比如说,经常会有的配置文件写错、某些服务没开启、端口冲突等等。
3.还有一些故障是由于业务环境所导致的。有可能是硬件方面的,也有软件方面的。比如说某某公司用的都是比较老旧的服务器和操作系统,但是公司内部的工程师并不明白便部署了最新的软件在非常老旧的硬件和操作系统上,导致不兼容。或者有些地方在部署操作系统时并没有最小化安装,导致其中一些服务成为网络黑客攻击的对象,等等。
4.当我们无法从报错和业务环境中找出故障答案时,可以通过比对相关配置文件的方式进行快速的检查。我们可以从一些运行良好的服务器上复制一份配置文件与其进行内容对比,基本上就可以断定问题是否出在配置文件上。
5.再者,我们也需要检查一下服务是否开启,或者修改过配置文件却忘了重载一下配置文件。这种问题经常是一些刚入门的运维放的错误。再者可能某些端口没有放通,我们可以使用telnet + 端口号的方式去检查服务是否起来,或者对外端口是否方通。
6.当然如果之前一切都没有问题,我们也需要考虑是否是生产环境内部的防火墙的规则没有做,所导致业务无法正常上线。这时候我们就需要增加或者删掉一些防火墙的规则。
7.我们在排查网络故障时,也可以使用一些命令去排查故障点。就比如说我们经常用到的ping命令,我们可以从ping可以判断主机之间是否连通或者丢包。当然我们也可以因traceroute的命令去跟踪数据包的动向。
8.除了以上的思路,运维工程师怎么能很少的了检查日志文件呢。我们一般会通过一些软件去定时的收集一些日志文件。这样也会为运维工程师提供解决故障的思路。
有些没有日志文件的服务,我们也可以监控其端口的mac地址对其链路进行跟踪查看是否故障。
9.一般在小的企业中,如果出现了小面积的网络问题也有可能是交换机出现了故障。如果是出现了大面积的业务故障就非常有可能是核心交换机等重要的网络设备出现了问题。
10.最后如果当前服务器非常繁忙,业务量增长导致服务器资源不够用。这样经常会出现有些服务突然挂掉,甚至整个服务器出现了宕机的情形。
小结
这时我在成产环境排障或者遇到故障的情形,希望可以帮助到正在被故障所苦恼的运维小伙伴们。