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
目录
相关文章
|
2月前
|
缓存 监控 网络安全
因服务器时间不同步引起的异常
因服务器时间不同步引起的异常
153 1
|
2月前
|
运维 Prometheus 监控
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
如何在测试环境中保持操作系统、浏览器版本和服务器配置的稳定性和一致性?
|
20小时前
|
人工智能 弹性计算 运维
操作系统控制台,让运维更简单!
操作系统控制台初体验,运维智能666!
65 36
操作系统控制台,让运维更简单!
|
1天前
|
人工智能 弹性计算 运维
云端问道7期方案教学-使用操作系统智能助手OS Copilot轻松运维与编程
本文介绍了阿里云基础软件团队推出的操作系统智能助手 OS Copilot,旨在解决 Linux 开发与运维中的痛点。OS Copilot 基于大模型和操作系统领域知识构建,支持自然语言问答、命令辅助执行、系统运维优化及代码生成等功能,极大降低了学习成本和工作量。文章详细阐述了其产品架构、典型应用场景以及实验反馈渠道,帮助用户更高效地进行系统管理和编程。目前该产品处于公测阶段,免费提供给阿里云 ECS 实例和 Alinux 3 系统用户使用。
|
13天前
|
存储 弹性计算 运维
云端问道 7 期实践教学-使用操作系统智能助手 OS Copilot 轻松运维与编程
使用操作系统智能助手 OS Copilot 轻松运维与编程
40 14
|
26天前
|
弹性计算 运维 监控
云产品评测:云服务诊断 — ECS实例健康状态与诊断功能体验
作为一名运维工程师,我日常管理和维护云资源,确保服务稳定运行。阿里云的云服务诊断功能提供了便捷的方式实时了解和优化ECS实例的健康状态。通过健康状态功能,我能够查看CPU、内存等指标,及时发现并解决性能瓶颈,提升了约30%的工作效率。诊断功能则帮助我快速定位复杂问题,减少了40%的诊断时间,并提供详细的优化建议。尽管功能已很强大,但仍建议进一步细化诊断结果和增加自定义告警选项,以提升使用体验。我非常推荐此工具给其他运维人员。
66 22
|
2月前
|
测试技术 开发工具 git
写了BUG还想跑——闲鱼异常日志问题自动追踪-定位-分发机制
为了高效地发现、定位和解决预发问题,闲鱼团队研发了一套异常日志问题自动追踪-定位-分发机制。这套机制通过自动化手段,实现了异常日志的定时扫描、精准定位和自动分发,显著降低了开发和测试的成本,提高了问题解决的效率。
134 15
写了BUG还想跑——闲鱼异常日志问题自动追踪-定位-分发机制
|
22小时前
|
弹性计算 人工智能 运维
新手训练营——使用操作系统智能助手OS Copilot轻松运维与编程
本文摘自阿里云操作系统团队的林演(林生)关于操作系统智能助手创新产品的分享,围绕“OS Copilot的高效运维与编程”展开,主要包括以下几方面的内容: 1. 行业痛点击及背景 2. 产品与架构 3. 典型应用场景 4. 实验及反馈渠道
|
1月前
|
弹性计算 运维 Serverless
产品测评 | ECS的健康保障新助手——云服务诊断
本文评测了阿里云的云服务诊断工具,该工具旨在帮助运维工程师和开发者快速定位和解决云资源问题。工具提供了“健康状态”和“诊断”两大核心功能,能够实时监控云资源状态,排查如网站无法访问、ECS故障等多种问题,并给出修复建议。该工具显著提升了排障效率,但在文档清晰度、功能描述准确性及部分功能实现上仍有改进空间。总体而言,该工具值得推荐给其他用户或团队使用。
|
1月前
|
弹性计算 运维 开发者
关于ECS 健康状态 诊断功能评测
这是一位开发兼运维工程师的观点,认为云资源的健康状态和诊断功能作用有限,因为大多数问题根源在于代码质量,而这些工具无法改善低下的代码质量导致的资源异常。

热门文章

最新文章

相关产品

  • 云服务器 ECS