You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

从AMI重建EC2实例后单项可达性健康检查失败,无法登录怎么办?

解决从AMI重建EC2实例后健康检查失败、无法SSH/SSM登录的问题

从AMI重新创建EC2实例后,碰到两个棘手问题:

  • 两项可达性健康检查有一项未通过
  • 既没法用密钥SSH登录,也用不了SSM会话管理器登录

唯一能进去的方式是EC2串行控制台(操作路径:EC2控制台选中目标实例 → 点「连接」按钮 → 选右侧最后一个串行控制台选项)。结合实际排查经验,以下是具体解决步骤:

排查与修复步骤

1. 核对网络配置

  • 检查实例所属安全组:
    • 入方向要放开SSH(22端口)、SSM通信(443端口)
    • 出方向至少允许到SSM服务的443端口(直接开全出站更省心)
  • 确认实例有公网IP(如果需要公网SSH访问);私有子网里的实例要配置VPC终端节点供SSM通信
  • 检查路由表,确保正确指向互联网网关或NAT网关(需公网访问时)

2. 修复SSH服务(通过串行控制台操作)

  • 登录后先查SSH服务状态:
    sudo systemctl status sshd  # Amazon Linux 2、Ubuntu等systemd系统
    # 老系统用这个
    sudo service ssh status
    
  • 服务没启动的话,启动并设置开机自启:
    sudo systemctl start sshd && sudo systemctl enable sshd
    
  • 检查/etc/ssh/sshd_config配置,确保:
    • PubkeyAuthentication yes(开启密钥登录)
    • PasswordAuthentication no(禁用密码登录,按需调整)
    • PermitRootLogin no(禁止root直接登录,更安全)
  • 修改配置后重启服务:
    sudo systemctl restart sshd
    

3. 修复SSM Agent(通过串行控制台操作)

  • 检查SSM Agent状态:
    sudo systemctl status amazon-ssm-agent  # Amazon Linux 2
    # Ubuntu用这个
    sudo systemctl status snap.amazon-ssm-agent.amazon-ssm-agent.service
    
  • 没装的话,按系统版本安装(以Amazon Linux 2为例):
    sudo yum install -y amazon-ssm-agent
    sudo systemctl start amazon-ssm-agent && sudo systemctl enable amazon-ssm-agent
    
  • 确认实例的IAM角色有AmazonSSMManagedInstanceCore权限,没有就给实例附加这个权限的角色

4. 检查磁盘与系统完整性

  • 查磁盘使用情况,避免根分区满了导致服务异常:
    df -h
    
  • 根分区满的话,清理日志和临时文件:
    sudo journalctl --vacuum-time=7d  # 清理7天前的系统日志
    sudo rm -rf /tmp/*
    
  • 检查系统文件是否损坏(Amazon Linux 2示例):
    sudo rpm -Va
    
    有损坏就重装对应包

5. 恢复可达性健康检查

  • 解决上述问题后,等5-10分钟再看健康检查状态,一般会自动恢复
  • 还不行就重启实例:
    sudo reboot
    

内容的提问来源于stack exchange,提问作者ETisREAL

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 09:01:32