无法 ssh 到 Azure 虚拟机

无法 ssh 到 Azure 虚拟机

关于此问题的简要说明-

我时不时会遇到 VM 重启的情况。因此,无论我们连接了什么磁盘,都会自动卸载。因此,根据建议,我们在 fstab 中添加了带有 uuid 的磁盘安装。我们通过重新启动 VM 来测试更改,每次安装磁盘都工作正常。我们在 Azure 上使用的所有 VM 中都进行了此更改。昨天,我们发现我们的一个 VM(xxxxxxxxxxxxxxxx.cloudapp.net)出现了问题,当我们通过 ssh 进入时,我们无法使用“df -h”看到已安装的磁盘,而且 OS 磁盘已满,使用“fdisk -l”我可以看到未安装的磁盘。然后我尝试了一些方法

  • 我尝试重新启动 VM,以为通过 make fstab 运行重新启动 VM 并自动挂载磁盘。但这并没有发生,但直到那时我们才能够成功 ssh。
  • 然后我们尝试重置虚拟机的密码,大约一个小时后,我们看到门户显示失败消息。之后当我们执行“ssh”[电子邮件保护]“我们得到这个“ssh:连接到主机 xxxxxxxxxxxxxxxx.cloudapp.net 端口 22:连接被拒绝”查看审计日志我们发现了这个错误

    操作名称 Microsoft.Resources/deployments/write
    状态 失败
    级别 错误

    操作名称 Microsoft.ClassicCompute/virtualMachines/extensions/write
    状态 失败
    级别 错误
    属性 statusCode:RequestTimeout statusMessage:{"error":{"code":"ResourceDeploymentFailure","message":" 资源提供操作未在允许的超时期限内完成。请参阅http://aka.ms/arm-deploy 了解使用详情。"}}

我在虚拟机中启用了启动诊断选项,然后尝试重新启动,现在我可以在启动诊断中看到错误日志。看到这个错误,我发现是因为磁盘已满,操作系统无法启动。

Traceback (most recent call last):
  File "/usr/bin/cloud-init", line 618, in <module>
    sys.exit(main())
  File "/usr/bin/cloud-init", line 614, in main
    get_uptime=True, func=functor, args=(name, args))
  File "/usr/lib/python2.7/dist-packages/cloudinit/util.py", line 1875, in log_time
    ret = func(*args, **kwargs)
  File "/usr/bin/cloud-init", lne 489, in stats_wrapper
    atomic_write_json(status_path, status)
  File "/usr/bin/cloud-init", line 434, in atomic_write_json
    raise e
IOError: [Errno28] No space left on device 
  • 我们还尝试使用我们在出现此问题后创建的 VM 映像来创建 VM。使用映像创建 VM 工作正常,但我们也无法通过 ssh 连接到该映像。

相关内容