是否可以在 HTTP 代理后面运行私有 GKE 集群(私有端点和节点)?
GKE 节点需要互联网连接才能从公共存储库中提取 docker 映像。问题是,我们不想登录每个 GKE 节点并配置http_proxy
环境变量并在每次集群升级后重复此操作。
是否可以为每个节点自动设置http_proxy
环境变量,或者是否有更好的方法http_proxy
在私有 GKE 集群上进行配置?
是否可以在 HTTP 代理后面运行私有 GKE 集群(私有端点和节点)?
GKE 节点需要互联网连接才能从公共存储库中提取 docker 映像。问题是,我们不想登录每个 GKE 节点并配置http_proxy
环境变量并在每次集群升级后重复此操作。
是否可以为每个节点自动设置http_proxy
环境变量,或者是否有更好的方法http_proxy
在私有 GKE 集群上进行配置?
您可以使用DaemonSet部署需要在所有或某些节点上运行的正在进行的后台任务(自动设置 http_proxy)。例子:
kind: DaemonSet
apiVersion: extensions/v1beta1
metadata:
name: startup-script
labels:
app: startup-script
spec:
template:
metadata:
labels:
app: startup-script
spec:
hostPID: true
containers:
- name: startup-script
image: gcr.io/basic-app-with-example/startup-script:v1
imagePullPolicy: Always
securityContext:
privileged: true
env:
- name: STARTUP_SCRIPT
value: |
#! /bin/bash
list of the command that you need to execute in node
export http_proxy='http://<host>:<port>'
您可以在 GCP 中使用 Cloud NAT 来允许您的私有 GKE 集群访问公共存储库。