【问题标题】:Google VM Instance becomes unhealthy on its ownGoogle VM 实例自行变得不健康
【发布时间】:2016-02-16 12:54:03
【问题描述】:

我使用 Google Cloud 已经有一段时间了,一切正常。我使用单个 VM 实例来托管网站和 MySQL 数据库。

最近,我决定将网站移动到自动缩放,以便在流量增加的日子里,网站不会关闭。

因此,我将数据库移至 Cloud SQL 并创建了一个 VM 组,该组将托管 PHP、HTML、图像文件。然后,我设置了一个负载均衡器,将流量转移到 VM Group 下的各种 VM Instance。

问题是后端服务(负载均衡器内的 VM 组)在正常工作 5-6 小时后自行变得不健康,然后在 10-15 分钟后再次变得健康。我还看到,当我运行一个包含许多 MySQL 查询的文件时,问题可能会出现。

我检查了运行状况检查,它给出了 200 响应。在 10-15 分钟的停机期间,可以从其自己的 IP 地址访问 VM 实例。

一切都一样,我刚刚在虚拟机实例前添加了一个负载均衡器,问题就开始了。

谁能帮我解决这个问题?

【问题讨论】:

    标签: google-compute-engine google-cloud-platform


    【解决方案1】:

    听起来您的服务器在负载均衡器报告为停机期间的运行状况检查超时(阻塞?)。您可以检查几件事:

    1. 日志(我假设您使用的是 Apache?)应该包括持续时间以及日志中的请求状态。默认的健康检查超时时间是 5 秒,所以如果您的健康检查在 6 秒内返回 200,那么健康检查器将在 5 秒后超时并将主机视为已关闭。

    2. 您提到过重的 mysql 负载会导致问题。您是否查看过磁盘 I/O 统计信息和 CPU 以确保这不是与负载相关的问题?如果这与 CPU 或负载相关,您可能会考虑增加 CPU 或磁盘大小,或者将磁盘从支持主轴的存储移动到支持 SSD 的存储。

    3. 您是否检查过是否有足够的线程可用?理想情况下,您的运行状况检查会运行得相当快,但它可能会延迟(例如)如果您有 3 个线程并且所有三个线程都忙于运行其他正在数据库中等待的 PHP 脚本

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-12-09
      • 1970-01-01
      • 1970-01-01
      • 2017-08-19
      • 1970-01-01
      • 2014-10-02
      • 2020-01-26
      • 2013-01-13
      相关资源
      最近更新 更多