如何为 kubernetes (v1.11.2) 集群设置代理设置(http_proxy 变量)?

2023-11-27

我设置了一个 Kubernetes 集群,但由于组织政策的原因,该集群无法连接互联网。现在有一些服务需要通过互联网进行通信。为了解决这个问题,我设置了一个位于 K8s 集群外部的转发代理 (Squid)。我的 K8s 集群的所有节点都可以使用正向代理访问“google.com”。但我无法让我的 Pod 通过该代理进行通信。

我在所有主节点和工作节点上设置了以下变量:

export http_proxy="http://10.x.x.x:3128"
export https_proxy="https://10.x.x.x:3128"

我能够从主节点和工作节点卷曲 google.com。但是当我附加到容器中时,我注意到没有变量 http_proxy 和 https_proxy。并且它无法执行成功的卷曲。

我的 Pod 和服务网络与我的 VM 网络不同

pod-network-cidr=192.167.0.0/16 
service-cidr 192.168.0.0/16 

我的虚拟机网络如下:

Master  -> 10.2.2.40
Worker1 -> 10.2.2.41
Worker2 -> 10.2.2.42
Worker3 -> 10.2.2.43

我的转发代理运行在

Forward Proxy: 10.5.2.30

我使用的是 kubernetes 版本 v1.11.2。这里是否有任何帮助,例如我应该将 kubernetes 集群的 http_proxy 设置放在哪里,以使其对所有 Pod 和服务有效?


所以我发现要为特定容器设置代理,请在 Dockerfile 中设置 env 变量。

ENV HTTP_PROXY http://10.x.x.x:PORT
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何为 kubernetes (v1.11.2) 集群设置代理设置(http_proxy 变量)? 的相关文章

随机推荐