如何使用kubeadm在集群设置中为etec local设置listen-client-urls

时间:2019-02-16 17:07:02

标签: kubernetes kubeadm

当kubeadm成功初始化集群时,

etcd本地advertise-client-urls默认为https://127.0.0.1:2379。 我如何将其更改为我的网络默认路由转接界面 像192.168.1.9这样的IP地址?

bigo@bigo-vm1:~$ kubeadm version
kubeadm version: &version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.3", GitCommit:"721bfa751924da8d1680787490c54b9179b1fed0", GitTreeState:"clean", BuildDate:"2019-02-16T15:29:34Z", GoVersion:"go1.11.5", Compiler:"gc", Platform:"linux/amd64"}
bigo@bigo-vm1:~$ cat /etc/kubernetes/manifests/etcd.yaml 
cat: /etc/kubernetes/manifests/etcd.yaml: Permission denied
bigo@bigo-vm1:~$ sudo cat /etc/kubernetes/manifests/etcd.yaml 
apiVersion: v1
kind: Pod
metadata:
  annotations:
    scheduler.alpha.kubernetes.io/critical-pod: ""
  creationTimestamp: null
  labels:
    component: etcd
    tier: control-plane
  name: etcd
  namespace: kube-system
spec:
  containers:
  - command:
    - etcd
    - --advertise-client-urls=https://127.0.0.1:2379:2379
    - --cert-file=/etc/kubernetes/pki/etcd/server.crt
    - --client-cert-auth=true
    - --data-dir=/var/lib/etcd
    - --initial-advertise-peer-urls=https://192.168.1.9:2380
    - --initial-cluster=bigo-vm1=https://192.168.1.9:2380
    - --key-file=/etc/kubernetes/pki/etcd/server.key
    - --listen-client-urls=https://127.0.0.1:2379

我试图修改kubernetes / hack / lib / etcd.sh

git diff kubernetes/hack/lib/etcd.sh
-ETCD_HOST=${ETCD_HOST:-127.0.0.1}
+ETCD_HOST=${ETCD_HOST:-192.168.1.9}

从源代码重建kubeadm,它可以工作,但是重建需要很长时间。

另一种工作方法是手动编辑涉及任何etcd客户端配置文件更改的pod清单文件。

是否有类似kubeadm config etcd --config =的内容 更改所有涉及的端点

非常感谢您的帮助

1 个答案:

答案 0 :(得分:0)

切换最新版本后,然后重新构建集群,

发现最新的kubeadm已解决此问题并使用

网络默认路由将接口IP地址作为端点。

感谢大家和kubeamd团队所做的改进