本文介绍如何通过ECS控制台、阿里云CLI查询和响应ECS系统事件。
背景信息
除了通过ECS控制台等方式查询和响应ECS系统事件外,您还可以通过云监控查询包括ECS在内的多款产品的系统事件,并为关注的系统事件设置事件通知。具体操作,请参见查询系统事件和订阅ECS系统事件通知。
查询和响应系统事件
通过ECS控制台查询和响应系统事件
在ECS控制台的事件页面可以查询所有实例相关的系统事件。
登录ECS管理控制台。
在左侧导航栏,单击事件。
查询待处理的系统事件。
显示数字的分类代表有待处理的系统事件。不同的系统事件会推荐相应的响应方式,例如实例到期事件推荐续费、本地盘损坏事件推荐修复磁盘等。您可以按控制台的操作指引自行完成操作,或者等待系统自动执行。
如果响应事件时,需要重启实例或重新部署实例,您必须通过控制台或OpenAPI重启实例,此操作才能生效。
具体操作,请参见重启实例或RebootInstance。
说明在系统内部通过reboot重启实例不会生效。
通过阿里云CLI查询和响应系统事件
请确保您已经为ECS实例安装了阿里云CLI,在不同操作系统中安装CLI的方式请参见:
以下命令中的<TheRegionId>请替换成实际的RegionId。
调用DescribeInstances获取实例ID。
aliyun ecs DescribeInstances --RegionId <TheRegionId> --output cols=InstanceId,InstanceName rows=Instances.Instance[]
调用DescribeInstanceHistoryEvents查询实例相关的系统事件。
查询已计划(Scheduled)状态的系统事件:
aliyun ecs DescribeInstanceHistoryEvents --RegionId <TheRegionId> --InstanceId <YourInstanceId> --InstanceEventCycleStatus.1 Scheduled --output cols=EventId,EventTypeName rows=rows=InstanceSystemEventSet.InstanceSystemEventType[]
查询全部(Scheduled、Inquiring、Executing、Executed、Avoided、Canceled、Failed)状态的系统事件:
aliyun ecs DescribeInstanceHistoryEvents --RegionId <TheRegionId> --InstanceId <YourInstanceId> --InstanceEventCycleStatus.1 Scheduled --InstanceEventCycleStatus.2 Inquiring --InstanceEventCycleStatus.3 Executing --InstanceEventCycleStatus.4 Executed --InstanceEventCycleStatus.5 Canceled --InstanceEventCycleStatus.6 Avoided --InstanceEventCycleStatus.7 Failed --output cols=EventId,EventTypeName rows=rows=InstanceSystemEventSet.InstanceSystemEventType[]
查询已完结(Executed、Avoided、Canceled、Failed)状态的系统事件:
aliyun ecs DescribeInstanceHistoryEvents --RegionId <TheRegionId> --InstanceId <YourInstanceId> --InstanceEventCycleStatus.1 Executed --InstanceEventCycleStatus.2 Avoided --InstanceEventCycleStatus.3 Canceled --InstanceEventCycleStatus.4 Failed --output cols=EventId,EventTypeName rows=rows=InstanceSystemEventSet.InstanceSystemEventType[]
查询未完结(Scheduled、Inquiring、Executing)的系统事件:
aliyun ecs DescribeInstanceHistoryEvents --RegionId <TheRegionId> --InstanceId <YourInstanceId> --InstanceEventCycleStatus.1 Scheduled --InstanceEventCycleStatus.2 Inquiring --InstanceEventCycleStatus.3 Executing --output cols=EventId,EventTypeName rows=rows=InstanceSystemEventSet.InstanceSystemEventType[]
按需选择响应方式并调用相关的API。
例如:
对问询中(Inquiring)状态的系统事件,调用AcceptInquiredSystemEvent授权阿里云执行,或者忽略该通知,不授权执行。
对计划重新部署实例的系统事件,自行调用RedeployInstance重新部署实例,或者等待系统自动执行。
对提醒包年包月实例到期的系统事件,调用RenewInstance续费实例,或者等待系统自动停机并释放实例。
如果响应事件时,需要重启实例或重新部署实例,您必须通过控制台或OpenAPI重启实例,此操作才能生效。
具体操作,请参见重启实例或RebootInstance。
说明在系统内部通过reboot重启实例不会生效。
允许接收ECS相关消息
如果希望通过站内信、邮箱、短信接收事件通知,您需要在消息中心允许接收ECS到期通知、产品运维通知、ECS故障通知等相关的消息。
登录ECS管理控制台。
在页面右上角,将鼠标悬浮至图标,然后单击消息接收管理。
在基本接收管理页面,找到关心的消息类型,根据需要在站内信、邮箱、短信列选中复选框。
例如ECS系统事件相关的ECS到期通知、产品运维通知、ECS故障通知等消息类型。
相关文档
调用DescribeInstancesFullStatus接口查询一台或多台ECS实例的全状态信息。全状态信息包括实例状态和实例系统事件状态,其中,实例状态为实例的生命周期状态,实例系统事件为维护事件的健康状态。
调用DescribeInstanceHistoryEvents接口,并可以指定InstanceId、EventType等参数,查询指定实例系统事件信息,默认查询处于非活跃状态的历史系统事件。