Cloud Monitoring 正常运行时间检查允许用户向资源发送请求以查看它是否响应。
由于检查是在 Google Cloud 基础架构之外执行的,因此需要一个外部 ip。
有没有办法对没有公共 IP 的网站(http 请求)实施正常运行时间检查?
Cloud Monitoring 正常运行时间检查允许用户向资源发送请求以查看它是否响应。
由于检查是在 Google Cloud 基础架构之外执行的,因此需要一个外部 ip。
有没有办法对没有公共 IP 的网站(http 请求)实施正常运行时间检查?
TL;DR:是的,通过使用具有外部 IP 的堡垒主机可以查询到达内部站点并使用代理(NGINX、SquidProxy 等)将您的健康检查请求从外部服务传递到您的内部站点。
你需要什么:
过程:
如果您想跳过安装过程,您可以选择使用NGINX PLUS并使用Google Cloud MarketPlace进行安装
你也可以使用NGINX Docker 容器来完成这个任务。
关于如何配置 nginx 的一些提示和技巧
当您按照 NGINX 的说明安装 NGINX 时,您将在该过程结束时获得功能正常的 NGINX。但是您可能需要额外的配置才能实现目标。
/etc/nginx/conf.d/default.conf
以响应任何不包含有效 HOST 标头的请求的 404:/etc/nginx/conf.d/
在目录下为您要监控的每个站点创建一个配置文件。即/etc/nginx/conf.d/finance-sites.conf
。不要忘记 .conf 终止。为您要监控的每个站点设置一个虚假主机,并且不要忘记在Stackdriver Monitoring中设置主机标头。
每次更改配置时不要忘记检查语法
nginx -t
并重新加载配置。nginx -s reload