opsnull / follow-me-install-kubernetes-cluster

和我一步步部署 kubernetes 集群
Other
7.39k stars 2.9k forks source link

ERROR:向 etcd 写入集群 Pod 网段 #599

Open CSi-CJ opened 4 years ago

CSi-CJ commented 4 years ago

文档版本 说明你查看的是哪个 branch 的文档,即 K8S 版本,如 v1.8、v1.12。 master节点 现象描述 描述问题的现象。 在部署flannel网络的时候,操作到向 etcd 写入集群 Pod 网段信息对于${FLANNEL_ETCD_PREFIX}不存在表示疑惑,并且etcd3.4.3版本的指令参数设置已经有所改变,类似于 --cacert="" --cert="" --key="" ,并且我报的错误Error: unknown command "mk" for "etcdctl"

gdw1986 commented 3 years ago

我也遇到mk这个问题了

shuish0071 commented 2 years ago

同样遇到这两个问题了,希望一起讨论下:

  1. ${FLANNEL_ETCD_PREFIX} 压根不存在
  2. 执行 etcdctl 的时候提示 mk 不存在,使用 【ETCDCTL_API=2 etcdctl + 后续命令】也不好使
shuish0071 commented 2 years ago
  1. 爬了一下问题记录,找到了#558,需要所有 etcd 节点都修改 /etc/systemd/system/etcd.service,并重启 etcd 服务即可执行后续设置命令
  2. FLANNEL_ETCD_PREFIX 估计是作者漏写了,可以随便写一个,也可以在 environment.sh 加入下面一条: export FLANNEL_ETCD_PREFIX="/kubernetes/network"

具体文件内容: cat /etc/systemd/system/etcd.service [Unit] Description=Etcd Server After=network.target After=network-online.target Wants=network-online.target Documentation=https://github.com/coreos

[Service] Type=notify WorkingDirectory=/data/k8s/etcd/data ExecStart=/opt/k8s/bin/etcd \ --data-dir=/data/k8s/etcd/data \ --wal-dir=/data/k8s/etcd/wal \ --name=master01 \ --cert-file=/etc/etcd/cert/etcd.pem \ --key-file=/etc/etcd/cert/etcd-key.pem \ --trusted-ca-file=/etc/kubernetes/cert/ca.pem \ --peer-cert-file=/etc/etcd/cert/etcd.pem \ --peer-key-file=/etc/etcd/cert/etcd-key.pem \ --peer-trusted-ca-file=/etc/kubernetes/cert/ca.pem \ --peer-client-cert-auth \ --client-cert-auth \ --listen-peer-urls=https://10.19.1.99:2380 \ --initial-advertise-peer-urls=https://10.19.1.99:2380 \ --listen-client-urls=https://10.19.1.99:2379,http://127.0.0.1:2379 \ --advertise-client-urls=https://10.19.1.99:2379 \ --initial-cluster-token=etcd-cluster-0 \ --initial-cluster=master01=https://10.19.1.99:2380,master02=https://10.19.1.100:2380,master03=https://10.18.1.62:2380 \ --initial-cluster-state=new \ --auto-compaction-mode=periodic \ --auto-compaction-retention=1 \ --max-request-bytes=33554432 \ --quota-backend-bytes=6442450944 \ --heartbeat-interval=250 \ --election-timeout=2000 \ # 修改下面,新增支持 etcd v2 --enable-v2=true Restart=on-failure RestartSec=5 LimitNOFILE=65536

[Install] WantedBy=multi-user.target

重启服务: systemctl daemon-reload systemctl restart etcd.service