【问题标题】:How to use external proxy for a web scraper deployed on gke cluster?如何为部署在 gke 集群上的网络爬虫使用外部代理?
【发布时间】:2021-12-07 17:03:48
【问题描述】:

我有一个 Web 抓取应用程序,它部署在 GCP 上的 kubernetes 集群上,该应用程序使用代理连接到多个浏览器。所以我需要分配一个静态IP地址,这样代理才能完成它的工作,但这里的问题是我无法弄清楚要给代理服务器哪个地址。我试图提供入口和出口静态地址,但它总是显示“代理拒绝连接”错误。

PS:代理在我的本地机器上就像魔术一样工作,因为我正在使用 dns 服务器来修复动态 IP 地址的情况。

当环境实际上在 GKE 上时,我应该如何做同样的事情。

【问题讨论】:

    标签: web-scraping google-cloud-platform proxy dns google-kubernetes-engine


    【解决方案1】:

    当您的流量从单点进入集群时,您应该将流量从单点转移,这也是出口点。

    我不确定您所说的出口是什么意思,但如果您默认运行 GKE,它将主要是节点 IP。

    Kubernetes 使用节点 IP 作为调度 POD 的传出 IP。

    我建议在 GKE 集群前设置 NAT gateway。因此,您的所有流量都来自一个点,您可以将此 IP 列入您的代理白名单,它会起作用。

    现在,如果您对 GKE 和 NAT 不太了解,只需设置这个 Terraform,它将为您完成所有工作。 Terraform 将设置 NAT 网关。

    Terraform NAT GKE:https://registry.terraform.io/modules/GoogleCloudPlatform/nat-gateway/google/latest/examples/gke-nat-gateway

    Github 仓库:https://github.com/GoogleCloudPlatform/terraform-google-nat-gateway/tree/v1.2.3

    【讨论】:

      猜你喜欢
      • 2020-01-13
      • 1970-01-01
      • 1970-01-01
      • 2021-04-13
      • 2019-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-04
      相关资源
      最近更新 更多