本文为您介绍如何修复EMR Kafka集群Broker节点的ECS实例存在的磁盘事件。
背景信息
当您收到提示本地磁盘硬件异常风险的邮件时,需要进行Kafka服务磁盘修复操作。
此时,您可以在ECS的控制台,查看修复磁盘事件流程。
事件处理概述
EMR Kafka Broker节点的ECS磁盘事件处理与响应和普通的ECS实例不完全相同,在ECS磁盘事件流程的不同阶段,需要穿插Kafka Broker相应的运维操作。整个流程大致可以分为磁盘下线、等待ECS磁盘修复和磁盘上线3个阶段。
本文以故障盘的设备名
/dev/vdh,目标挂载目录
/mnt/disk7为例,介绍如何运维EMR Kafka Broker节点的磁盘事件。
故障磁盘下线
- 选择合适的磁盘恢复策略并执行相关操作。
当ECS磁盘事件处于
修改配置阶段时,您需要选择合适的EMR Kafka磁盘恢复策略进行Kafka磁盘运维操作,详细的运维策略请参见
EMR Kafka磁盘故障运维。
按照Kafka磁盘恢复策略进行相关操作之后,单击ECS磁盘事件流程中修改配置中的下一步至重启阶段。如果没有重启阶段,则处理至新盘插入中阶段。
进行此步骤时,需注意以下信息:
- 相关的修复策略通常会包含隔离坏盘操作,隔离坏盘之后,重启Broker之前,您需要将坏盘目录路径移出Kafka的log.dirs配置中。
- 如果修复策略要求重启Broker,且ECS磁盘事件流程中也要求重启ECS实例,则可以将两者合并操作。
- 可选:重启ECS实例。
如果ECS修复磁盘事件流程中,要求重启ECS,则可以按照如下步骤重启:
- 在EMR控制台停止故障Broker节点服务。
- 重启故障ECS实例。
在ECS修复磁盘事件流程中,单击重启。
- 在EMR控制台启动故障Broker节点服务。
观察Broker节点状态是否处于正常状态。
当执行完ECS实例重启后,修复磁盘事件处于新盘插入中阶段。
- 等待ECS修复磁盘。
在新盘插入中阶段,单击确定。确认后请等待阿里云在所宿物理机上更换损坏的本地盘,维护操作通常在五个工作日内完成,之后您会收到恢复磁盘的事件通知。
磁盘上线
收到恢复磁盘的事件通知后,您可以进行磁盘上线操作。
- 确认磁盘当前状态。
- 使用SSH方式登录Kafka集群,详情请参见登录集群。
- 执行以下命令,确认磁盘已经插入,且磁盘大小为1 MB。
- 在ECS控制台,单击修复磁盘事件流程中的恢复磁盘,等待流程进入下一阶段。
- 可选:重启ECS实例。
如果您的引导页面出现重启阶段,则需要进行重启。请按照如下步骤重启:
- 在EMR控制台停止故障Broker节点服务。
- 重启故障ECS实例。
在修复磁盘事件流程中,单击重启。
- 在EMR控制台启动故障Broker节点服务。
观察Broker节点状态是否处于正常状态。
- 在故障节点执行以下命令,查看磁盘大小是否恢复。
- 重启完成后,在修复磁盘事件流程中,单击完成。
说明 ECS磁盘恢复流程完成后,您仍需要进行后续操作,完成Kafka Broker节点日志目录的恢复。
- 格式化磁盘和挂载磁盘。
- 执行以下命令,格式化磁盘。
which mkfs.ext4
mkfs.ext4 -m 0 /dev/***
- 执行以下命令,配置/etc/fstab文件。
echo "/dev/*** /mnt/*** ext4 defaults,noatime,nofail 0 0 " >> /etc/fstab
说明 请替换/dev/***
和/mnt/***
为您实际的设备名和挂载目录。
- 执行以下命令,确认/etc/fstab文件是否配置正确。
more /etc/fstab
根据以下回显信息,可以确认/etc/fstab文件已正确配置。
- 执行以下命令,挂载磁盘。
mount /dev/** /mnt/***
请替换设备名和挂载目录。本文示例是将/dev/vdh挂载至/mnt/disk7,所以命令为mount /dev/vdh /mnt/disk7
。
- 执行以下命令,确认磁盘是否已经挂载。
df -h
根据以下回显信息,可以确认磁盘已经挂载。
- 按照您选择的Kafka磁盘修复策略,恢复Kafka Broker节点日志目录,详情请参见EMR Kafka磁盘故障运维。
- 可选:按照您选择的Kafka磁盘修复策略,迁移Kafka分区副本至修复后的磁盘,使负载更加均衡,详情请参见EMR Kafka磁盘故障运维。