Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google compute engine 谷歌计算引擎健康检查停止工作_Google Compute Engine_Load Balancing - Fatal编程技术网

Google compute engine 谷歌计算引擎健康检查停止工作

Google compute engine 谷歌计算引擎健康检查停止工作,google-compute-engine,load-balancing,Google Compute Engine,Load Balancing,我的开发环境在2019年全年运行良好,但当进入2020年时,我的一项服务不起作用,当查看导致失败的细节时,运行状况检查表明VM不正常 方案很简单,我的WCF服务在IIS上运行,我使用TCP负载平衡器。相同的方案被复制,以便由两个不同的IP访问,但只有一个运行状况检查失败。该服务可以从localhost获得,也可以从实例的临时IP获得,但是如果我从分配给负载平衡器的静态IP访问,它就会失败 由于它是在两个虚拟机中运行的同一个应用程序,并且所有配置都相似,因此我想验证是什么导致运行状况检查失败,使用

我的开发环境在2019年全年运行良好,但当进入2020年时,我的一项服务不起作用,当查看导致失败的细节时,运行状况检查表明VM不正常

方案很简单,我的WCF服务在IIS上运行,我使用TCP负载平衡器。相同的方案被复制,以便由两个不同的IP访问,但只有一个运行状况检查失败。该服务可以从localhost获得,也可以从实例的临时IP获得,但是如果我从分配给负载平衡器的静态IP访问,它就会失败

由于它是在两个虚拟机中运行的同一个应用程序,并且所有配置都相似,因此我想验证是什么导致运行状况检查失败,使用wireshark检查与启用端口的连接,我发现来自负载平衡器的所有连接都表示TCP重新传输,但到临时IP的连接到达得很好,并收到200 OK

考虑到去年一切都很顺利,我对这一主题的了解很少,也无法确定对解决问题有用的信息

我想看看stackdriver能给我什么信息,但由于某种原因,我在列表中找不到TCP负载平衡器


编辑:显然问题是由于谷歌计算引擎代理服务没有运行,但我看不到任何日志表明是什么导致服务停止。再次启动服务时,一切正常。

请注意,谷歌云平台提供了健康检查机制,可确定虚拟机实例是否正确响应流量。运行状况检查和负载平衡器协同工作。GCP使用每个VM的总体运行状况状态来确定其是否准备好接收来自LB的新请求

与其他负载平衡器一样,需要一个用于验证实例运行状况的实例。要允许从负载平衡器和运行状况检查器到实例的通信,需要将源IP范围配置为130.211.0.0/22和35.191.0.0/16

当您尝试通过负载平衡器前端IP访问后端实例上运行的服务时,如果没有返回200 OK响应,并且看到实例不健康,则问题可能出在客户机内部。可能的原因如下:

后端配置的端口与运行状况检查时配置的端口不同

服务未在当时配置的端口上运行

服务绑定到任何特定IP,而不是所有IP地址,即0.0.0.0/0


请注意,TCP代理全局LB不提供Stackdriver日志记录。对于调试“不健康”实例问题,查看访问日志或系统日志也可能有帮助。

Stackdriver中出现了哪些错误/警告?Stackdriver是调试的一个很好的资源。在Stackdriver中,我没有看到任何故障,VM没有出现问题,但我在列表中找不到负载平衡器,TCP负载平衡器没有出现在Stackdriver中?您使用的是哪种负载平衡器?谷歌有很多。我在postHi中包含了这些图片!,我的应用程序在windows虚拟机上运行,导致错误的原因是Google Compute Engine代理服务未运行,因此运行状况检查认为虚拟机不健康。我所要做的就是在Services中启动Google Compute Engine代理服务。谢谢你的回复!你好,里卡多,谢谢分享根本原因。这将帮助其他社区用户解决类似问题。