我在硬件上进行了 Kubernetes 的定制安装,并将其成功安装在 Hyper V 中的 2 节点集群上(1 个主 1 个工作人员),一切正常,但是有这件事让我摸不着头脑,我想知道是否有人可以给我洞察为什么会发生。
etcdctl --help
给了我 etcd v2 版本的帮助,它还给了我以下警告。
警告:未设置环境变量 ETCDCTL_API;默认为 etcdctl v2。设置环境变量 ETCDCTL_API=3 以使用 v3 API 或 ETCDCTL_API=2 以使用 v2 API。
如果我设置环境变量并再次运行命令,它将被忽略:
ETCDCTL_API=3
etcdctl --help
但如果我这样做
ETCDCTL_API=3 etcdctl --help
然后它给了我 etcd v3 版本的帮助,我还需要将 ETCDCTL_API=3 放在 etcdctl 快照保存的前面,以便将其识别为有效命令。
ETCDCTL_API=3 etcdctl snapshot save ~/etcd.backup \
--endpoints=https://127.0.0.1:2379 \
--cacert=/etc/etcd/ca.pem \
--cert=/etc/etcd/kubernetes.pem \
--key=/etc/etcd/kubernetes-key.pem
为什么是这样?