Kubernetes:我们需要在 apiserver 清单中设置 http_proxy 和 no_proxy 吗?
Kubernetes : do we need to set http_proxy and no_proxy in apiserver manifest?
我的集群在公司代理后面,我在三个 kubernetes 核心清单 (kube-apiserver.yaml、kube-controller-manager.yaml 和 kube-scheduler.yaml)。现在,我想用 kubeadm 升级 kubernetes。但我知道 kubeadm 会在升级时从 kubeadm-config configmap 重新生成这些清单,因此没有这些环境变量。我在 kubeadm-config configmap 中找不到 extraEnvs
键(比如 extraArgs
和 extraVolumes
)。
我真的需要在所有 kubernetes 清单中设置这些变量吗?如果没有,我认为 kubeadm 会发出警告,因为所有通信都将使用代理(我不希望那样)。
如何在升级时将这些变量传递给 kubeadm?
目前没有可用于 Kubeadm 的此类标志。您可能想要打开 github 请求该功能。
您可以使用 or here 描述的方式并导出变量:
$ export http_proxy=http://proxy-ip:port/
$ export https_proxy=http://proxy-ip:port/
$ export no_proxy=master-ip,node-ip,127.0.0.1
然后用sudo -E bash
使用当前的
$ sudo -E bash -c "kubeadm init... "
另一种方法是在命令中引用这些变量,如图所示 here:
NO_PROXY=master-ip,node-ip,127.0.0.1 HTTPS_PROXY=http://proxy-ip:port/ sudo kubeadm init --pod-network-cidr=192.168.0.0/16...
我的集群在公司代理后面,我在三个 kubernetes 核心清单 (kube-apiserver.yaml、kube-controller-manager.yaml 和 kube-scheduler.yaml)。现在,我想用 kubeadm 升级 kubernetes。但我知道 kubeadm 会在升级时从 kubeadm-config configmap 重新生成这些清单,因此没有这些环境变量。我在 kubeadm-config configmap 中找不到 extraEnvs
键(比如 extraArgs
和 extraVolumes
)。
我真的需要在所有 kubernetes 清单中设置这些变量吗?如果没有,我认为 kubeadm 会发出警告,因为所有通信都将使用代理(我不希望那样)。
如何在升级时将这些变量传递给 kubeadm?
目前没有可用于 Kubeadm 的此类标志。您可能想要打开 github 请求该功能。
您可以使用
$ export http_proxy=http://proxy-ip:port/
$ export https_proxy=http://proxy-ip:port/
$ export no_proxy=master-ip,node-ip,127.0.0.1
然后用sudo -E bash
使用当前的
$ sudo -E bash -c "kubeadm init... "
另一种方法是在命令中引用这些变量,如图所示 here:
NO_PROXY=master-ip,node-ip,127.0.0.1 HTTPS_PROXY=http://proxy-ip:port/ sudo kubeadm init --pod-network-cidr=192.168.0.0/16...