azure - VM 无响应后 Azure Ubuntu VM 服务中的未知磁盘读取字节和磁盘操作

标签 azure virtual-machine ubuntu-16.04 azure-storage azure-disk

每周大约有两到三次,azure vm 停止响应。当这种情况发生时,磁盘读取字节数急剧增加,我不知道为什么。我的应用程序没有读取磁盘功能(仅写入日志)。 如图所示,读取字节数和磁盘操作数暂时增加,导致服务器卡住。我必须重新启动虚拟机,并且需要将近 15 分钟才能再次可用。

Azure Ubuntu VM Stats

我使用的是 Azure Ubuntu 16.04 VM,大小为标准 B1(1 个 vcpu、1 GiB 内存)。

我已经检查过这些条件

  • 我的应用程序可能存在内存泄漏
  • 观察应用程序的所有源代码是否存在磁盘读取功能(我的应用程序没有任何磁盘就绪操作)
  • 我已将 ubuntu %60 的默认虚拟内存大小更改为 %1
  • 我正在使用 docker 来运行我的应用程序,并且我在虚拟机上仅使用 1 个 docker 镜像实例
  • 我删除了所有虚拟机并再次创建了它(包括所有资源,即磁盘/网络等)

我想知道为什么会发生这种情况以及如何调查导致此问题的原因。当它发生时,我没有在 ubuntu 上看到任何可疑的运行进程。

最佳答案

此问题已由 Azure 技术支持工程师解决(感谢 Micah_MSFT)

Azure VM 似乎内存不足。当发生这种情况时,VM 表现不稳定,因此磁盘操作迅速增加,VM 卡住(他们正在调查问题的详细信息并向 Linux 技术人员报告)。

As clarified by Azure Technical Support Engineer, There is a feature named Swap Space which helps the saver to reserve storage space as processing memory.

这是配置

  1. 打开位于 /etc/waagent.conf 下的文件,找到这些变量并进行相应修改:
# Format if unformatted. If 'n', resource disk will not be mounted.​
ResourceDisk.Format=n​   /// change this parameter to "y"

# Create and use swapfile on resource disk.​
ResourceDisk.EnableSwap=n​   /// change this parameter to "y"
​
# Size of the swapfile.​
ResourceDisk.SwapSizeMB=0​   /// change this parameter to "1024"
  • 重新启动服务以应用更改
  • sudo systemctl restart walinuxagent.service

    That's it

    我认为,内存不足限制导致磁盘使用量不必要的增加将导致 Azure VM 性能下降。

    关于azure - VM 无响应后 Azure Ubuntu VM 服务中的未知磁盘读取字节和磁盘操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57014220/

    相关文章:

    matlab - 通过 Matab 系统连接 AWS 时遇到问题

    linux - 未找到 Ubuntu Xenial upstart 服务

    php - 由于没有可用的匹配包,无法将 PHP 升级到 7.3

    azure - 无需客户端 ID 和客户端 key 即可对 Azure 应用程序资源管理进行授权

    ssh - 无法通过 SSH 连接到 bluemix 英国地区的虚拟机

    azure - 在已安装文件存储的 Azure 应用程序服务中,Firefox 中的文件下载失败

    azure - 实现 Azure 执行模拟软件的策略建议

    linux - 将变量中的内容附加到日志文件

    c# - Azure 媒体服务区域属性在哪里?

    azure - 如何向 ID token 添加其他声明 - Azure 政府门户