ECS运维:操作系统有异常?诊断日志来帮忙!

简介: 操作系统配置不当或程序过载可能会造成ECS系统内核崩溃,这将导致夯机、异常重启或无法正常启动等问题。为了分析根本原因,运维人员通常要查看系统日志,但此时也许实例已经无法正常远程连接,使得分析诊断非常困难。阿里云提供了一键查看系统日志和屏幕截图功能,为运维人员提供一个方便的工具,支持系统故障的分析。
云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。阿里云使用严格的IDC标准、服务器准入标准以及运维标准,保证云计算整个基础框架的高可用性、数据的可靠性以及云服务器ECS的高可用性。但在使用ECS实例的过程中,仍然有可能会出现由于操作系统配置不当或程序过载等原因导致系统内核崩溃的情况,这将导致系统夯机、异常重启或无法正常启动等问题。为了分析根本原因而避免问题反复发生,运维人员通常依靠查看系统日志来做分析诊断,然而此时也许实例已经无法正常SSH远程连接,让定位故障原因的过程变得非常困难。现在阿里云提供了一键查看系统日志和屏幕截屏的功能,为运维人员提供了一个方便的工具,给系统异常故障的分析诊断提供更多的支持。

为什么需要系统串口日志

当ECS实例发生了夯机、异常重启、或者无法正常启动时,运维人员需要定位导致问题发生的根本原因,及时解决问题并且避免该问题反复发生。

ECS实例运行的稳定性会受多方面影响,概括来说会存在于两个层面,一方面是承载ECS实例运行的基础设施硬件和软件环境,另一方面是ECS实例操作系统内部的运行环境。如果实例的异常状态是由于承载其运行的基础设施硬件或软件出现故障而导致的,阿里云会向用户提供系统事件信息,便于您了解这方面问题对实例运行的影响;如果实例的异常状态是由于操作系统内部内核bug、系统配置不当或程序过载等原因而导致的,就需要查看操作系统层面的日志信息来诊断问题了。
(如果您希望了解更多ECS系统事件的信息,可以查看 帮助文档和云栖博客 让运维更高效:关于ECS系统事件

在Linux操作系统层面,经过设置后,启动日志和异常故障等信息会通过服务器的串口(串行端口,Serial Port)打印输出。如果是物理服务器,运维人员通常会通过IPMI带外接口获得操作系统通过串口打印输出的日志信息。对于云服务器,运维人员同样需要这方面的日志信息帮助对异常故障做诊断分析,因此,云服务器的系统串口日志是运维诊断的重要一环。

系统串口日志会包含什么信息

系统通过串口打印输出的日志会包含两种类型的信息,一类是系统启动开机时的日志内容,另一类是系统内核故障或异常时的日志内容。

1. Linux操作系统启动开机时,默认会将开机过程产生的日志信息输出到串口。开机信息会被系统内核存储在ring buffer中,会显示系统架构、CPU、RAM、挂载的硬件以及软件启动相关的系统信息。这类信息帮助系统管理员了解系统是否正常启动,检查预先设定的应用程序是否随系统启动等情况。

2. 内核故障或异常错误发生时,系统会按照配置的日志级别(由内核参数kernel.printk决定,默认级别为4 - KERN_WARNING)将对应信息输出到串口。内核错误(Kernel panic)是指操作系统在监测到内部的致命错误,并无法安全处理此错误时采取的动作。操作系统内核中处理Kernel panic的子程序通常被设计用来向串口控制台输出错误信息,以便用于故障的调试,然后等待系统被手动重新引导,或自动重新引导。该程序提供的技术性信息通常是用来帮助系统管理员或者软件开发者诊断问题的。

附:内核日志级别:
日志级别 对应名称 说明
0 KERN_EMERG The system is unusable.
1 KERN_ALERT Actions that must be taken care of immediately.
2 KERN_CRIT Critical conditions.
3 KERN_ERR Noncritical error conditions.
4 KERN_WARNING Warning conditions that should be taken care of.
5 KERN_NOTICE Normal, but significant events.
6 KERN_INFO Informational messages that require no action.
7 KERN_DEBUG Kernel debugging messages, output by the kernel if the developer enabled

如何使用系统串口日志

使用ECS控制台时,对于状态为“运行中”的ECS实例,您可以通过实例列表或实例详情的操作菜单,获取实例系统日志。

控制台操作
  1. 登录 ECS管理控制台。
  2. 单击左侧导航栏中的 实例
  3. 选择 地域
  4. 找到需要排查异常故障的实例的 操作 菜单。
  5. 单击 更多 > 运维和诊断 > 获取实例系统日志 查看日志。
  6. 也可以选中需要排查异常故障的实例,单击实例进入 实例详情页,点击 更多 > 获取实例系统日志 查看日志。

如下图所示,当系统正常启动时,会显示启动过程中的相关日志内容:


当系统出现内核错误时,会显示相关错误信息:


结合日志中所显示的内容,可以帮助运维人员检查系统启动是否正常,以及诊断操作系统层面发生的异常故障。

此外,在某些时刻系统也会将异常信息输出到显示器(比如Windows系统“蓝屏”),由于云服务器没有连接物理显示器,因此可以使用获取实例屏幕截图的功能查看异常状态下输出到屏幕的信息,为问题分析提供辅助。

使用OpenAPI时,您可以使用 GetInstanceConsoleOutput ,获得通过Base64编码输出的日志内容。使用 GetInstanceScreenshot ,获得通过Base64编码输出的屏幕内容。

请注意,目前只有在 运行中 状态的实例可以查看系统日志和屏幕截屏。

写在最后

让ECS更好用是我们持续追求的目标。ECS主动运维和系统事件机制,可以提前发现基础设施层面对ECS运行的影响,并通过事件让运维人员及时感知并采取预防性措施,避免对在行业务的影响;而今天介绍的诊断日志功能,可以帮助运维人员在面对实例个体由于操作系统内部原因出现异常的情况下,分析原因避免同样的问题反复发生威胁业务连续性。后续我们会推出更多的运维工具和能力,让您使用ECS的过程更放心、更透明。敬请期待!
相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1天前
|
弹性计算 运维 开发者
关于ECS 健康状态 诊断功能评测
这是一位开发兼运维工程师的观点,认为云资源的健康状态和诊断功能作用有限,因为大多数问题根源在于代码质量,而这些工具无法改善低下的代码质量导致的资源异常。
|
1天前
|
弹性计算 运维 Serverless
产品测评 | ECS的健康保障新助手——云服务诊断
本文评测了阿里云的云服务诊断工具,该工具旨在帮助运维工程师和开发者快速定位和解决云资源问题。工具提供了“健康状态”和“诊断”两大核心功能,能够实时监控云资源状态,排查如网站无法访问、ECS故障等多种问题,并给出修复建议。该工具显著提升了排障效率,但在文档清晰度、功能描述准确性及部分功能实现上仍有改进空间。总体而言,该工具值得推荐给其他用户或团队使用。
|
3月前
|
弹性计算 Linux 网络安全
阿里云ECS健康诊断产品详解
介绍阿里云ECS健康诊断产品详情和使用案例,包括各个产品概念、控制、OpenAPI、SDK等。
|
7月前
|
监控 测试技术
【亮剑】理解CPU负载对服务器稳定性的重要性,并提供了诊断和解决CPU负载过高问题的步骤
【4月更文挑战第30天】本文阐述了理解CPU负载对服务器稳定性的重要性,并提供了诊断和解决CPU负载过高问题的步骤:1) 使用监控工具分析CPU使用率和系统负载;2) 深入排查运行队列、进程占用、系统调用和硬件状态;3) 根据排查结果进行代码优化、调整进程优先级或限制CPU使用率,必要时升级硬件。建议建立监控体系,定期性能测试,并持续优化以保证服务器高效运行。
239 1
|
7月前
|
存储 设计模式 监控
如何诊断处理生产环境服务器变慢
在当今的高科技环境下,生产环境服务器的性能问题可能是一个复杂且棘手的问题。当服务器变慢时,可能会对企业的运营产生重大影响,包括客户满意度下降,工作效率降低,甚至可能导致整个系统崩溃。为了解决这些问题,我们需要深入了解生产环境服务器变慢的原因,并掌握有效的诊断和处理方法。本文将详细介绍如何诊断和处理生产环境服务器变慢的问题。通过深入探讨服务器的硬件和软件配置,网络环境,以及可能影响服务器性能的各种因素,我们将提供一系列实用的诊断和解决方案。
108 1
|
Java Linux
第二季:9.生产环境服务器变慢,诊断思路和性能评估谈谈?【Java面试题】
第二季:9.生产环境服务器变慢,诊断思路和性能评估谈谈?【Java面试题】
98 0
|
缓存 运维 监控
如何通过一系列步骤来诊断和解决服务器CPU负载过高问题?
如何通过一系列步骤来诊断和解决服务器CPU负载过高问题?
958 0
|
Java Linux
理论:第十四章:生产环境服务器变慢如何诊断,性能评估
理论:第十四章:生产环境服务器变慢如何诊断,性能评估
280 0
理论:第十四章:生产环境服务器变慢如何诊断,性能评估
|
弹性计算 安全 API
通过ECS诊断服务自助解决实例、安全组等相关操作行为审计问题
用户在使用ECS云服务器时,有时会出现各种各样关于资源操作的疑惑,不知何时发生的这些操作。如果用户自己没有完善的日志审计,就很容易不知所措,此时只能提交工单由阿里云的人工服务帮助排查,因提交工单排查需要一定的时间和人力资源投入,所以用户需要等待一段时间,因而一定程度上会降低问题解决的效率,阿里云ECS团队推出用户操作记录的日志行为回溯功能,帮助用户快速自主查询和解决问题,提高工作效率。
通过ECS诊断服务自助解决实例、安全组等相关操作行为审计问题
|
弹性计算 Linux 数据安全/隐私保护
通过ECS诊断服务自助解决实例启动的问题(二)
之前的文章《通过ECS诊断服务自助解决实例启动的问题(一)》介绍了通过诊断服务对ECS的启动问题进行诊断的方法。在2022年11月,ECS发布了新一版的实例启动诊断功能,扩充了原有的诊断能力,并增加了新的实例截屏诊断功能,可以更全方面的进行诊断。
通过ECS诊断服务自助解决实例启动的问题(二)

热门文章

最新文章

相关产品

  • 云服务器 ECS