监控服务器非常重要,无论是在部署或调试生产服务器时,及时在测试环境中发现问题。这些需要管理员访问服务器上的内容,以便能够辨识出错的地方。如果您使用了香港服务器,不可能在现场可以及时查看到服务器进行运维,所以对香港服务器进行维护和监控就非常必要了。
在更早的时候,监视服务器是一个非常困难的过程,依赖于人来靠手工检查问题,包括有哪些人登录到服务器,打开日志,运行单个命令,查看上述任何一个的输出是否产生预期的结果。幸运的是,工具发展到今天,让这个过程变得简便和集中化,但我们仍然需要弄清楚需要收集哪些服务器的信息。
虽然可以直接潜入并检查服务器的每次故障,但为了自己的时间价值与故障排除能力,退后一步制定希望获得的信息。以下是一些较重要的汇总:
了解应用程序
在设置应用程序时,应该确保对所期望的行为有一个非常好的了解。具体来说,当内存,CPU,磁盘或其他系统资源变少时,你应该非常清楚应用程序的执行方式。它会变慢吗?它会变得迟钝吗?它会不加载吗?这些行为的阈值是什么?“blip”(如CPU峰值)和真正的问题之间有什么区别?
这些都不是容易回答的问题,但是我们需要知道期望什么以及防止过敏的警报系统。
贴着地面跑
当我们监控*nix服务器时,通常会查看以下之内容:
CPU使用率:检查CPU使用情况,查看正在处理器使用的百分比。根据具体需求,你可能需要了解CPU总体使用情况以及按流程或用户划分的细节,查看流程和用户的额外颗粒度,在问题出现时更容易进行故障排除。
内存使用情况:总共用了多少内存以及单个进程和用户进和。根据需要,可以按百分比和/或GB/MB监控内存之使用情况。
磁盘使用情况:
使用了多少磁盘空间。与内存使用情况类似,可以按百分比或空间来监控磁盘使用情况。还应该跟踪inode的使用情况,Inode用于存储*ix系统中文件系统对象的信息。耗尽inode不常见,但还是要检查一下,如果你碰巧知道服务器上运行的应用程序往往有很多小文件,就像一些CI/CD工具那样。
正常运行时间:
对于虚拟服务器,正常运行时间是服务器运行的时间。监控主要是为了查看服务器是否经历了意外重启。
网络活动:监控网络流量需要哪些度,取决于服务器托管的内容。在通常情况下,即使运行静态站点但未主动访问的服务器也会看到运行在其上的其他进程的I/O,服务器网络不应该降到0。
使用命令行
经常在管理服务器时,除了使用的任何监视警报工具之外,更多时候要使用命令行。需要注意的是,并非所有命令都安装在所有Linux发行版中,你可能需要使用软件包安装程序或源代码来安装,具体取决于你用的Linux发行版本。