๋ฒ๊ทธ ๋ณด๊ณ ์
kubeadm ๋ฒ์ ( kubeadm version
) :
[root@k8s-211 ~]# kubeadm version
kubeadm version: &version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:02:01Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
ํ๊ฒฝ :
kubectl version
) :[root@k8s-211 ~]# kubectl version
Client Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T21:04:45Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"13", GitVersion:"v1.13.0", GitCommit:"ddf47ac13c1a9483ea035a79cd7c10005ff21a6d", GitTreeState:"clean", BuildDate:"2018-12-03T20:56:12Z", GoVersion:"go1.11.2", Compiler:"gc", Platform:"linux/amd64"}
NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"
CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"
uname -a
) :Linux k8s-lixin-211 3.10.0-693.el7.x86_64 #1 SMP Tue Aug 22 21:09:27 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
์ด ์ปจํธ๋กค ํ๋ ์ธ ๋
ธ๋๋ฅผ ์ฌ์ค์ ํ๊ธฐ ์ํด kubeadm reset -f
๋ฅผ ์ฌ์ฉํ๋ฉด ๋ช
๋ น์ด ์ฑ๊ณต์ ์ผ๋ก ์คํ๋ฉ๋๋ค. ํ์ง๋ง kubeadm-config
ConfigMap์ ๋ณด๋ฉด ์ด๋ฏธ ClusterStatus์์ด ๋
ธ๋ IP๊ฐ์๋ ๊ฒ์
๋๋ค.
์ฌ์ ํ ์ง๋ฌธ์ด ์์ต๋๋ค. ์ kubeadm reset
์ด ๋
ธ๋๋ฅผ ํด๋ฌ์คํฐ์์ ์ง์ ์ญ์ ํ์ง ์์ต๋๊น? ๋์ kubectl delete node <node name>
์๋์ผ๋ก ์คํํ์ญ์์ค.
kubeadm-config
ConfigMap์์ด ๋
ธ๋ IP๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
kubeadm init --config=kubeadm.yml
.kubeadm join --experimental-control-plane --config=kubeadm.yml
.kubeadm reset -f
.kubectl -n kube-system get cm kubeadm-config -oyaml
์ด๋ฏธ ClusterStatus์์๋ ๋ ๋ฒ์งธ ๋
ธ๋ IP๋ฅผ ์ฐพ์ต๋๋ค.kubeadm-config configMap yaml :
apiVersion: v1
data:
ClusterConfiguration: |
apiServer:
extraArgs:
authorization-mode: Node,RBAC
timeoutForControlPlane: 4m0s
apiVersion: kubeadm.k8s.io/v1beta1
certificatesDir: /etc/kubernetes/pki
clusterName: kubernetes
controlPlaneEndpoint: 192.168.46.117:6443
controllerManager: {}
dns:
type: CoreDNS
etcd:
local:
dataDir: /var/lib/etcd
extraArgs:
cipher-suites: TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
serverCertSANs:
- 192.168.46.117
imageRepository: k8s.gcr.io
kind: ClusterConfiguration
kubernetesVersion: v1.13.0
networking:
dnsDomain: cluster.local
podSubnet: 10.244.0.0/16
serviceSubnet: 10.96.0.0/12
scheduler: {}
ClusterStatus: |
apiEndpoints:
k8s-211:
advertiseAddress: 192.168.46.211
bindPort: 6443
k8s-212:
advertiseAddress: 192.168.46.212
bindPort: 6443
apiVersion: kubeadm.k8s.io/v1beta1
kind: ClusterStatus
kind: ConfigMap
metadata:
creationTimestamp: "2018-12-04T14:17:38Z"
name: kubeadm-config
namespace: kube-system
resourceVersion: "103402"
selfLink: /api/v1/namespaces/kube-system/configmaps/kubeadm-config
uid: 5a9320c1-f7cf-11e8-868d-0050568863b3
cc @fabriziopandini
์ด์์ ์ผ๋ก๋ ClusterStatus๋ฅผ "์๋ก ๊ณ ์นจ"ํ๋ ๋ฐฉ๋ฒ์ด ์์ต๋๋ค. ํผ๋ ํ
์คํธ๋ฅผ ํตํด ํด๋ฌ์คํฐ๋ฅผ ์คํํฉ๋๋ค. ์ ์ด ํ๋ ์ธ ๋
ธ๋๊ฐ ๊ฒฝ๊ณ ์์ด ์ข
๋ฃ๋๊ณ kubeadm reset
๋ฅผ ์คํํ ๊ธฐํ์์ด ์์ ํ ์ข
๋ฃ ๋ ์ ์์ต๋๋ค. ์ด์์ ์ผ๋ก๋ ํด๋ฌ์คํฐ์ ๋ ์ด์ ์กด์ฌํ์ง ์๋ ์ ์ด ํ๋ ์ธ ๋
ธ๋๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ํด ClusterStatus๋ฅผ ๋ช
์ ์ ์ผ๋ก ์
๋ฐ์ดํธํ๋ ๊นจ๋ํ ๋ฐฉ๋ฒ์ด์์ ๊ฒ์
๋๋ค. ์ด๊ฒ์ kubeadm join --control-plane ...
๋ฅผ ์คํํ๊ธฐ ์ ์ ์ํ ํ ์์
์
๋๊น? ์๋๋ฉด ๋ด์ฅ๋์ด ์์ต๋๊น?
์ฌ๊ธฐ์ ๋ช ๊ฐ์ง ์๊ฒฌ์ด ์์ต๋๋ค.
kubeadm-config ConfigMap์์ด ๋ ธ๋ ip๋ฅผ ์ ๊ฑฐํฉ๋๋ค.
@pytimer ํด๋ฌ์คํฐ ์ํ์ ๋ ธ๋ API ์ฃผ์๋ฅผ ๋จ๊ฒจ ๋๋ ๊ฒ์ด ์ด์์ ์ด์ง
์ฌ์ ํ ์ง๋ฌธ์ด ์์ต๋๋ค. ์ kubeadm reset์ด์ด ๋ ธ๋๋ฅผ ํด๋ฌ์คํฐ์์ ์ง์ ์ญ์ ํ์ง ์์ต๋๊น? ๋์ kubectl delete node๋ฅผ ์คํํ์ญ์์ค.
์๋์ผ๋ก.
@luxas ๋ ์ฝ๊ฐ์ ์ญ์ฌ์ ๋งฅ๋ฝ์ด ๋์์ด ๋ ์ ์์ต๋๋ค.
๋ด ์๊ฐ ์ ๋
ธ๋๊ฐ ์ค์ค๋ก ์ญ์ ํ ๊ถํ์ด ์๋ค๋ ๊ฒ์
๋๋ค (๊ทธ๋ฌ๋ ์ด๊ฒ์ ์ ์ด ํ๋ ์ธ ๋
ธ๋๊ฐ ์๋ ์์
์ ๋
ธ๋์ ์ ์ฉ๋ฉ๋๋ค ...)
์ด์์ ์ผ๋ก๋ ClusterStatus๋ฅผ "์๋ก ๊ณ ์นจ"ํ๋ ๋ฐฉ๋ฒ์ด์์ ๊ฒ์ ๋๋ค. / ClusterStatus๋ฅผ ๋ช ์ ์ ์ผ๋ก ์ ๋ฐ์ดํธํ๋ ๊นจ๋ํ ๋ฐฉ๋ฒ์ด์์ ๊ฒ์ ๋๋ค.
@danbeaulieu ์ข์ ์ง์ ์
๋๋ค. ํด๋ฌ์คํฐ ์ํ๋ฅผ ๋๊ธฐํํ๊ธฐ์ํ ๋ช
์ ์ ๋ช
๋ น์ด ์๊ฑฐ๋ kubeadm์ด ์คํ๋ ๋ ์๋ ๋๊ธฐํ๋ฅผ ์ํํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ทธ๋ฌ๋ ์ ์ด ๋ฃจํ๋ฅผ ์ง์์ ์ผ๋ก ์คํํ์ง ์๋ kubeadm์ด๋ฏ๋ก ClusterStatus๊ฐ ๋๊ธฐํ๋์ง ์์ ๊ฐ๋ฅ์ฑ์ด ํญ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
์ด๊ฒ์ ๋ฌธ์ ๊ฐ๋์ง ์์์ผํฉ๋๋ค. ๋๋ ๋ ์ด์ ์กด์ฌํ์ง ์๋ ๋
ธ๋์ ๋ํด ํนํ ๋
ธ๋ IP๋ฅผ ๊ฐ๋ ๊ฒฝ์ฐ (์ ๋ฆฌ ๋ถ์กฑ) ๋ฌธ์ ๊ฐ๋์ง ์์์ผํฉ๋๋ค.
๋์ ๋
ธ๋๊ฐ ์๊ณ ํด๋น ๋
ธ๋ IP๊ฐ ClusterStatus์์ ๋๋ฝ ๋ ๊ฒฝ์ฐ (์๋ชป๋ ์ด๊ธฐํ) ์
๋ฐ์ดํธ์ ๊ฐ์ ๋ฌธ์ ๊ฐ ๋ฐ์ํ ์ ์์ต๋๋ค.
์์ ๊ฐ์ ์ด ํผ๋ ํ ์คํธ๋ฅผ ํตํด ํ์ธ๋๋ฉด ์น์ ํ๊ฒ๋ณด๊ณ ํด ์ฃผ์๊ฒ ์ต๋๊น? ์ด๋ค ํผ๋๋ฐฑ์ด๋ผ๋ ์ ๋ง ๊ฐ์ฌ ํ ๊ฒ์ ๋๋ค.
@fabriziopandini ๋์ผํ ์ปจํธ๋กค ํ๋ ์ธ ๋ ธ๋์ ๊ฐ์
๋ด ๊ฐ์ ๋จ๊ณ :
๋ ๋ฒ์งธ ์ ์ด ํ๋ฉด ๋
ธ๋ ip๋ 192.168.46.212
์
๋๋ค.
kubectl delete node k8s-212
kubeadm reset -f
.kubeadm join --experimental-control-plane --config kubeadm.yaml -v 5
๋ค์ ์คํํ์ญ์์ค.kubeadm ๊ฐ์ ๋ก๊ทธ :
...
[etcd] Checking Etcd cluster health
I1207 17:57:18.109993 8541 local.go:66] creating etcd client that connects to etcd pods
I1207 17:57:18.110000 8541 etcd.go:134] checking etcd manifest
I1207 17:57:18.119797 8541 etcd.go:181] etcd endpoints read from pods: https://192.168.46.211:2379,https://192.168.46.212:2379
I1207 17:57:18.131111 8541 etcd.go:221] etcd endpoints read from etcd: https://192.168.46.211:2379
etcd cluster is not healthy: context deadline exceeded
kubeadm ์ฝ๋๋ฅผ๋ณด๊ณ ์ด ๋ฌธ์ ๊ฐ kubeadm-config
ConfigMap์ ๋จ์์๋ 192.168.46.212๋ก ์ธํด ๋ฐ์ํ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.
Kubeadm์ ์ ์ด ํ๋ฉด ๋
ธ๋์ ๊ฐ์
ํ ๋ kubeadm-config
ConfigMap์์ api ์๋ ํฌ์ธํธ๋ฅผ ๊ฐ์ ธ์ค๊ณ etcd ์๋ ํฌ์ธํธ๋ api ์๋ ํฌ์ธํธ์ ๋์ผํฉ๋๋ค. ๊ทธ๋ฌ๋ 912.168.46.212
์ ์ด ํ๋ ์ธ ๋
ธ๋๊ฐ ์ ๊ฑฐ๋์๊ณ ์์ง ๊ฐ์
๋์ง ์์์ผ๋ฏ๋ก etcd ํด๋ฌ์คํฐ ์ํ๋ฅผ ์๋ชป ํ์ธํ์ญ์์ค.
kubeadm-config
ConfigMap์์ 192.168.46.212
api ์๋ ํฌ์ธํธ๋ฅผ ์ ๊ฑฐํ๊ณ ์ด ์ปจํธ๋กค ํ๋ ์ธ ๋
ธ๋์ ๋ค์ ๊ฐ์
ํ๋ฉด ์ฑ๊ณตํฉ๋๋ค.
@pytimer ๊ฐ์ฌํฉ๋๋ค!
์ด๊ฒ์ ์กฐ์ฌ๋์ด์ผํฉ๋๋ค. ์์๋๋ etcd ๋์ ๋ชฉ๋ก์ ์ค์ etcd ๋ชฉ๋ก ๋์ ๊ณผ ๋๊ธฐํํ๋ ค๋ ๋
ผ๋ฆฌ๊ฐ ์ด๋ฏธ ์์ง๋ง ์ ๋๋ก ์๋ํ์ง ์๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ ์ด๊ฒ์ ๋ฒ๊ทธ์ฒ๋ผ ๋ณด์
๋๋ค. 3 ๋
ธ๋ ์ปจํธ๋กค ํ๋ ์ธ ASG๊ฐ ์์ต๋๋ค. ์ธ์คํด์ค๋ฅผ ์ข
๋ฃํ๋ฉด ASG ๊ท์น์ ๋ฐ๋ผ ์ ์ธ์คํด์ค๊ฐ ์์ฑ๋ฉ๋๋ค. ์ด ์๊ฐ ๋์ ์ข
๋ฃ ๋ ๋
ธ๋๋ etcd์ ๊ตฌ์ฑ์ ๋ชฉ๋ก์์ ๋น์ ์์ผ๋ก ๋์ด๋ฉ๋๋ค. ์ ์ธ์คํด์ค๊ฐ ๋ํ๋๋ฉด kubeadm join...
๋ฅผ ์คํํ๊ธฐ ์ ์ etcd์์ ๋น์ ์ ๋ฉค๋ฒ๋ฅผ ์ ๊ฑฐํฉ๋๋ค. kubeadm join...
์คํํ ๋ etcd์ ๋ฐ๋ผ 2 ๊ฐ์ ๋
ธ๋๊ฐ์๋ etcd ํด๋ฌ์คํฐ๋ ์ ์์
๋๋ค. ๊ทธ๋ฌ๋ kubeadm์ ClusterStatus๋ฅผ ์ง์ค์ ์์ค๋ก ์ฌ์ฉํ๋ฉฐ ์ฌ์ ํ ์ด์ ์ธ์คํด์ค๊ฐ ๋์ด๋์ด ์์ต๋๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ์ etcd ๋ฉค๋ฒ์ญ ๊ด๋ฆฌ๋ฅผ ์ํ ํ ์งํ์ ํด๋ฌ์คํฐ์ ์ง์ค๋ก kubeadm-config ConfigMap์ ์
๋ฐ์ดํธ ํ ๋ค์ kubeadm join...
๋ฅผ ์คํํ๋ ๊ฒ์
๋๋ค.
์ด์์ ์ผ๋ก kubeadm join...
๋ etcd๋ฅผ ์ง์ค์ ์์ค๋ก ์ฌ์ฉํ๊ณ ๊ทธ์ ๋ฐ๋ผ kubeadm-config ConfigMap์ ์
๋ฐ์ดํธํฉ๋๋ค.
@fabianofranz ์๋ง๋์ด ๋ฌธ์ ์ ์์ธ์ ์ฐพ์์ ๊ฒ์ ๋๋ค.
etcd ์๋ ํฌ์ธํธ๋ฅผ ์ค์ etcd ์๋ ํฌ์ธํธ ๋ชฉ๋ก๊ณผ ๋๊ธฐํํ๋ฉด ๋๊ธฐํ๊ฐ ์ฑ๊ณตํฉ๋๋ค. ๊ทธ๋ฌ๋ ์ค์ etcd ์๋ ํฌ์ธํธ๋ฅผ etcd ํด๋ผ์ด์ธํธ Endpoints
ํ ๋นํ๋ฉด์ด ํด๋ผ์ด์ธํธ ๋ณ์๋ ํฌ์ธํฐ๊ฐ ์๋๋ฏ๋ก ๋ค๋ฅธ ์ฝ๋์์ ํด๋ผ์ด์ธํธ๋ฅผ ์ฌ์ฉํ ๋์ด ํด๋ผ์ด์ธํธ ์๋ ํฌ์ธํธ๋ ๋๊ธฐํ ํ ์ค์ ์๋ ํฌ์ธํธ๊ฐ ์๋๋ผ ์ฌ์ ํ ์ค๋๋ ์๋ ํฌ์ธํธ์
๋๋ค.
๋ด ํฌํฌ ๋ฆฌํฌ์งํ ๋ฆฌ ์์์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ์ต๋๋ค . ์ด PR . ๊ทธ๋ฆฌ๊ณ ์ ๋ join the same control-plane node
์ฌ์ฉ์ ์ฌ๋ก๋ฅผ ํ
์คํธํ๊ณ ์ฑ๊ณตํ์ต๋๋ค.
@pytimer ๋ฉ์ง๋ค์ ! ์ ๋ฐ๊ฒฌ๋์์ต๋๋ค!
PR์ ๋ณด๋ด ์ฃผ์๊ฒ ์ต๋๊น? IMO ์ด๊ฒ์ ์ฒด๋ฆฌ ๋ฐ๊ธฐ์ ์ ํฉํฉ๋๋ค.
@ neolit123 @timothysc ^^^
@fabianofranz ์ฒซ ๋ฒ์งธ PR์ด ์๋ชป๋์์ต๋๋ค. CLA ํ์ธ์ ์์ด ๋ฒ๋ ธ์ต๋๋ค.
์ด PR https://github.com/kubernetes/kubernetes/pull/71945 ํ์ธํ์ค ์ ์์ต๋๋ค. ์๋ชป๋ ์ ์ด ์์ผ๋ฉด ์ง์ ํ์ญ์์ค.
@fabriziopandini ๋์ผํ ์ปจํธ๋กค ํ๋ ์ธ ๋ ธ๋์ ๊ฐ์
๋ด ๊ฐ์ ๋จ๊ณ :
๋ ๋ฒ์งธ ์ ์ด ํ๋ฉด ๋ ธ๋ ip๋
192.168.46.212
์ ๋๋ค.
- etcd ํด๋ฌ์คํฐ์์ 192.168.46.212 ๋ ธ๋ etcd ๊ตฌ์ฑ์์ ์ ๊ฑฐํ์ญ์์ค.
kubectl delete node k8s-212
- ์ด ์ปจํธ๋กค ํ๋ ์ธ ๋ ธ๋์
kubeadm reset -f
.kubeadm join --experimental-control-plane --config kubeadm.yaml -v 5
๋ค์ ์คํํ์ญ์์ค.kubeadm ๊ฐ์ ๋ก๊ทธ :
... [etcd] Checking Etcd cluster health I1207 17:57:18.109993 8541 local.go:66] creating etcd client that connects to etcd pods I1207 17:57:18.110000 8541 etcd.go:134] checking etcd manifest I1207 17:57:18.119797 8541 etcd.go:181] etcd endpoints read from pods: https://192.168.46.211:2379,https://192.168.46.212:2379 I1207 17:57:18.131111 8541 etcd.go:221] etcd endpoints read from etcd: https://192.168.46.211:2379 etcd cluster is not healthy: context deadline exceeded
kubeadm ์ฝ๋๋ฅผ๋ณด๊ณ ์ด ๋ฌธ์ ๊ฐ
kubeadm-config
ConfigMap์ ๋จ์์๋ 192.168.46.212๋ก ์ธํด ๋ฐ์ํ ์ ์๋ค๊ณ ์๊ฐํฉ๋๋ค.Kubeadm์ ์ ์ด ํ๋ฉด ๋ ธ๋์ ๊ฐ์ ํ ๋
kubeadm-config
ConfigMap์์ api ์๋ ํฌ์ธํธ๋ฅผ ๊ฐ์ ธ์ค๊ณ etcd ์๋ ํฌ์ธํธ๋ api ์๋ ํฌ์ธํธ์ ๋์ผํฉ๋๋ค. ๊ทธ๋ฌ๋912.168.46.212
์ ์ด ํ๋ ์ธ ๋ ธ๋๊ฐ ์ ๊ฑฐ๋์๊ณ ์์ง ๊ฐ์ ๋์ง ์์์ผ๋ฏ๋ก etcd ํด๋ฌ์คํฐ ์ํ๋ฅผ ์๋ชป ํ์ธํ์ญ์์ค.
kubeadm-config
ConfigMap์์192.168.46.212
api ์๋ ํฌ์ธํธ๋ฅผ ์ ๊ฑฐํ๊ณ ์ด ์ปจํธ๋กค ํ๋ ์ธ ๋ ธ๋์ ๋ค์ ๊ฐ์ ํ๋ฉด ์ฑ๊ณตํฉ๋๋ค.
kubeadm ๋ฒ์ 1.13.2์์ ๋์ผํ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค. ์๋์ผ๋ก ๋ ธ๋๋ฅผ ์ ๊ฑฐํ๊ณ kubeadm-config๋ฅผ ์ ๋ฐ์ดํธํ๋ ค๊ณ ํ์ง๋ง ์๋ํ์ง ์์ต๋๋ค. ๋๋จธ์ง etcd ๋ ธ๋๋ ์ ๊ฑฐ ๋ ๋ ธ๋๋ฅผ ์ฐ๊ฒฐํ๋ ค๊ณ ํฉ๋๋ค.
kubeadm-config
ConfigMap์์192.168.46.212
api ์๋ ํฌ์ธํธ๋ฅผ ์ ๊ฑฐํ๊ณ ์ด ์ ์ด ํ๋ ์ธ ๋ ธ๋์ ๋ค์ ๊ฐ์ ํ๋ฉด ์ฑ๊ณตํฉ๋๋ค.
@pytimer ์ด์ api-server๋ฅผ ์๋์ผ๋ก ์ ๊ฑฐํ๋ ๋ฐฉ๋ฒ์ ๋ํด ์์ธํ ์ค๋ช ํด ์ฃผ์๊ฒ ์ต๋๊น?
1.13.3์ ์คํํ๊ณ ์์ต๋๋ค. ๋ค์์ ํตํด ์๋์ผ๋ก ์ด์ ์๋ฒ ์ ๊ฑฐ :
1. kubectl -n kube-system get cm kubeadm-config -o yaml > /tmp/conf.yml
2. manually edit /tmp/conf.yml to remove the old server
3. kubectl -n kube-system apply -f /tmp/conf.yml
์ค๋ฅ๋ก ์ธํด ์ฌ์ ํ ํด๋ฌ์คํฐ์ ์ฐธ์ฌํ ์ ์์ต๋๋ค.
[etcd] Checking etcd cluster health
etcd cluster is not healthy: context deadline exceeded
๊ทธ๋ฐ ๋ค์ api pod์ etcd pod (๊ฐ๊ฐ 2 ๊ฐ)๋ฅผ ์ฃฝ์์ต๋๋ค.
๊ทธ๋ค์ ๋ค์ ์์ฑ๋์ง๋ง ์ถ๊ฐ ๋ ธ๋๋ฅผ ์ฐ๊ฒฐํ๋ ค๊ณ ํ ๋ ์ฌ์ ํ ๋์ผํ ์ค๋ฅ๊ฐ ๋ฐ์ํฉ๋๋ค.
1.13.3์์ ๋์ผํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค (HA ํด๋ฌ์คํฐ ์ค์ : ๋ง์คํฐ ๋ ธ๋ 3 ๊ฐ + ์์ ์ 3 ๊ฐ). ๋ค์ ๋จ๊ณ ํ์ ๋ง โโ๋ง์คํฐ ๋ ธ๋๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๊ต์ฒดํ์ต๋๋ค.
ํด๋ฌ์คํฐ์์ ๋ ธ๋ ์ญ์
kubectl delete node master03
etcdctl ๋ค์ด๋ก๋ (์ : master01)
mkdir /opt/tools && cd /opt/tools
wget https://github.com/etcd-io/etcd/releases/download/v3.3.12/etcd-v3.3.12-linux-arm64.tar.gz
tar xfz etcd-v3.3.12-linux-arm64.tar.gz
etcd์์ ๋ง์คํฐ ๋ ธ๋ ์ ๊ฑฐ
cd /opt/tools/etcd-v3.3.12-linux-arm64
./etcdctl --endpoints https://192.168.0.11:2379 --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/server.crt --key-file /etc/kubernetes/pki/etcd/server.key member list
./etcdctl --endpoints https://192.168.0.11:2379 --ca-file /etc/kubernetes/pki/etcd/ca.crt --cert-file /etc/kubernetes/pki/etcd/server.crt --key-file /etc/kubernetes/pki/etcd/server.key member remove 28a9dabfcfbca673
kubeadm-config์์ ์ ๊ฑฐ
kubectl -n kube-system get cm kubeadm-config -o yaml > /tmp/conf.yml
manually edit /tmp/conf.yml to remove the old server
kubectl -n kube-system apply -f /tmp/conf.yml
@zhangyelong ์ด์ kubeadm reset์ด etcd ๊ตฌ์ฑ์์ ์ ๊ฑฐ ํ ์ ์์ผ๋ฏ๋ก etcd ํด๋ฌ์คํฐ๊ฐ ์ ๊ฑฐ ๋ etcd ๋ ธ๋์ ์ฌ์ ํ ์ฐ๊ฒฐ๋์ด ์์์ ๋ฐ๊ฒฌํ์ต๋๋ค. ์ง๊ธ etcdctl์ ์ฌ์ฉํ์ฌ etcd ๊ตฌ์ฑ์์ ์๋์ผ๋ก ์ ๊ฑฐํด์ผํฉ๋๋ค.
์ฌ์ค์ ์ etcd ๋ ธ๋๋ฅผ ์ ๊ฑฐํ๊ธฐ ์ํด PR์ ๋ณด๋ด๋ฉด ์ ์ ์์ต๋๋ค. https://github.com/kubernetes/kubernetes/pull/74112
@lvangool @Halytskyi ๋จ๊ณ๋ฅผ ๋ฐ๋ฅผ ์ ์์ต๋๋ค. PR : https://github.com/kubernetes/kubernetes/pull/71945 ์์ ์ ์ปจํธ๋กค ํ๋ ์ธ ๋ ธ๋์ ๊ฐ์ ํ ๋ etcd ๋์ ์ ๋๊ธฐํํ๊ณ etcd ๊ตฌ์ฑ์์ ์ ๊ฑฐ ํ ์ ์์ต๋๋ค.
์ฌ์ค์ ์ etcd ํด๋ฌ์คํฐ์์ etcd ๊ตฌ์ฑ์์ ์ ๊ฑฐํ์ญ์์ค. kubernetes / kubernetes # 74112๋ฅผ ๋ณผ ์ ์์ต๋๋ค.
์ด๊ฒ์ ์ฌ์ ํ โโ1.13.4์ ๋ฒ๊ทธ ์ธ ๊ฒ ๊ฐ์ต๋๋ค.
์ฌ์ ํ kubeadm ๊ตฌ์ฑ ๋งต ala https://github.com/kubernetes/kubeadm/issues/1300#issuecomment-463374200์ ์๋์ผ๋ก ์ ๋ฐ์ดํธํด์ผํฉ๋๋ค.
๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์ง ์์ ๊ฒฝ์ฐ
kubernetes / kubernetes # 71945๋ etcd ํด๋ฌ์คํฐ ๋ฉค๋ฒ์ญ์ ํด๋ฌ์คํฐ ๋ฉค๋ฒ์ ์ง์ค ์์ค๋ก ์ฌ์ฉํฉ๋๊น? ๊ทธ๋ ์ง ์๋ค๋ฉด ๊ทธ PR์ด ์ ํํ ๋ฌด์์ ์์ ํ์ต๋๊น?
์ง๋๋ฅผ ํตํด ๋ฒ์๋ฅผ golang์ ์๊ธฐ ๋๋ฌธ์ ํฅ๋ฏธ๋กญ๊ฒ๋์ด ์ฐ๋ฐ์ ์ผ๋ก ์๋ ClusterStatus์ฒ๋ผ , ๋น ๊ฒฐ์ ์ ์ด๋ค . ๋ฐ๋ผ์ ๋ฐ๊ฒฌ ๋ ์ฒซ ๋ฒ์งธ ์๋ ํฌ์ธํธ๊ฐ ๋ ์ด์ ์กด์ฌํ์ง ์๋ ์ด์ ์๋ ํฌ์ธํธ์์ ์จ ๊ฒ์ด๋ฉด ์คํจํฉ๋๋ค. ์ ์ ์๋ ํฌ์ธํธ๋ฅผ ์ฐพ์ผ๋ฉด etcd ๋๊ธฐํ์์ ClusterStatus๋ฅผ ์ ๋ฐ์ดํธํฉ๋๋ค.
์ด ๋ฌธ์ ์ ๊ทผ๋ณธ ์์ธ์ etcd clientv3์ ๋ฒ๊ทธ๋ผ๊ณ ์๊ฐํฉ๋๋ค. ์ฌ๊ธฐ์ ๋ฒ๊ทธ๋ก ์ธํด ์ฒซ ๋ฒ์งธ ์๋ ํฌ์ธํธ๊ฐ https://github.com/etcd-io/etcd/issues/9949์ ์คํจํ๋ฉด ํด๋ผ์ด์ธํธ๊ฐ ๋ค๋ฅธ ์๋ ํฌ์ธํธ๋ฅผ ๋ค์ ์๋ํ์ง ์์ต๋๋ค.
์ฌ์ค์ ๊ฐ์ ์ฌํญ์ ์ถ์ ํ๋ ค๋ฉด ๋ค์ ๋ฌธ์ ๋ฅผ ์ฌ์ฉํ์ญ์์ค.
@fabriziopandini ์ฌ๊ธฐ์ kubeadm reset
์ ๊ด๋ จ์ด์๋ ๋ค๋ฅธ ๋ฌธ์ ๊ฐ ํ๋ ์ด์ ์์ต๋๋ค.
kubeadm ์ฌ์ค์ ์ ์ํ ํ ๊ธฐํ์์ด ๋
ธ๋๊ฐ ์คํจํ๋ ๊ฒฝ์ฐ (์ธ์คํด์ค ์ข
๋ฃ, ํ๋์จ์ด ์คํจ ๋ฑ)
ํด๋ฌ์คํฐ๋ ClusterStatus.apiEndpoints๊ฐ ๋ ์ด์ ํด๋ฌ์คํฐ์์๋ ๋
ธ๋๋ฅผ ๊ณ์ ๋์ดํ๋ ์ํ๋ก ๋จ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด์๋ kubeadm join
๋ฅผ ์ํํ๊ธฐ ์ ์ ๊ตฌ์ฑ ๋งต์ ์ฝ๊ณ ํธ์งํ๊ณ ์
๋ฐ์ดํธํ๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ํ์ํฉ๋๋ค. Kubeadm์๋ ์๋ง๋ ๋ ๊ฐ์ง ์ต์
์ด ์์ต๋๋ค.
1) ๋ค์ด์ผ์ด ์คํจํ๋ฉด etcd ํด๋ผ์ด์ธํธ ์ฌ์๋ ๊ตฌํ
2) go-grpc ๋ฒ๊ทธ๊ฐ ์์ ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฐ ๋ค์ ์์ ์ด etcd ํด๋ผ์ด์ธํธ์ ์ ์ฉ๋ ๋๊น์ง ๊ธฐ๋ค๋ฆฝ๋๋ค.
์ด ๋ฌธ์ ๋ ์ด๋ฌํ ์ต์ ์ค ํ๋๋ฅผ ์ถ์ ํ๋ ๋ฐ ์ฌ์ฉํ ์์๋ ์ข์ ๋ฌธ์ ์ผ ์ ์์ต๋๋ค.
kubeadm ์ฌ์ค์ ์ ์ํ ํ ๊ธฐํ์์ด ๋ ธ๋๊ฐ ์คํจํ๋ ๊ฒฝ์ฐ (์ธ์คํด์ค ์ข ๋ฃ, ํ๋์จ์ด ์คํจ ๋ฑ)
ํด๋ฌ์คํฐ๋ ClusterStatus.apiEndpoints๊ฐ ๋ ์ด์ ํด๋ฌ์คํฐ์์๋ ๋ ธ๋๋ฅผ ๊ณ์ ๋์ดํ๋ ์ํ๋ก ๋จ์ ์์ต๋๋ค. ์ด๋ฅผ ์ํด์๋kubeadm join
๋ฅผ ์ํํ๊ธฐ ์ ์ ๊ตฌ์ฑ ๋งต์ ์ฝ๊ณ ํธ์งํ๊ณ ์ ๋ฐ์ดํธํ๋ ํด๊ฒฐ ๋ฐฉ๋ฒ์ด ํ์ํฉ๋๋ค.
์ฆ, reset์ ํธ์ถํ์ง ์๊ณ ClusterStatus๋ฅผ ์๋์ผ๋ก ์
๋ฐ์ดํธํด์ผํฉ๋๋ค.
๊ทธ๋ ๊ฒํ๋ ๋ช
๋ น์ด ์์ต๋๋ค. ์ด๊ฒ์ด kubeadm์ด ์ง์ํด์ผํ๋ ๊ธฐ๋ฅ์ด๋ผ๊ณ ์๊ฐ๋๋ฉด ๋ณ๋์ ํฐ์ผ์ ์ ์ถํ์ญ์์ค.
์ค๋ 1.14.1์์ ์ด๊ฒ์ ๊ฒฝํํ์ต๋๋ค.
๋ด ๋ง์คํฐ ๋ ธ๋ ์ค ํ๋๋ฅผ ์คํํ๋ ์ธ์คํด์ค๊ฐ ์คํจํ์ฌ ์ ์์ ์ผ๋ก ์ ๊ฑฐ๋์ง ์์์ต๋๋ค. ์ ๋ ธ๋๊ฐ ๋ค์ด ์ค๋ ค๊ณ ํ ๋์ด ํฐ์ผ์ ์ค๋ช ๋ ์ค๋ฅ๋ก ์ธํด ์ฐธ์ฌํ์ง ๋ชปํ์ต๋๋ค.
etcdctl์ ํตํด etcd ๋ฉค๋ฒ๋ฅผ ์๋์ผ๋ก ์ ๊ฑฐํด์ผํ๊ณ ์ ๋ ธ๋์ ์ฐธ์ฌํ ์์์์ต๋๋ค. ๋ํ kubeadm-config ConfigMap์์ ๋ ธ๋๋ฅผ ์๋์ผ๋ก ์ ๊ฑฐํ์ง๋ง ์ด๊ฒ์ด ํ์ํ์ง ํ์คํ์ง ์์ต๋๋ค.
@Halytskyi ๊ฐ์ฌํฉ๋๋ค etcdctl ์น์ ์ด ๋๋ฅผ ์ํด ๋์์ .......
์ค๋ 1.15.5์์ ์ด๊ฒ์ ๊ฒฝํํ์ต๋๋ค.
์ ๊ฒฝ์ฐ์๋ 1.16 ๋ฒ์ ์ผ๋ก ํด๋ฌ์คํฐ์ ๊ฐ์
ํ์ต๋๋ค. ๊ทธ๋ฐ ๋ค์์ด ๋
ธ๋ kubectl delete node
์ ์ญ์ ํ๊ณ 15.5.5๋ก ๋ค์ด ๊ทธ๋ ์ด๋ํ๊ณ ๋ค์ ๊ฐ์
(๋์ผํ ip, ๋์ผํ ํธ์คํธ ์ด๋ฆ, ๋ค๋ฅธ ๋ฒ์ )์ ์๋ํ๊ณ etcd ๋น์ ์ ์ค๋ฅ๊ฐ ๋ฐ์ํ์ต๋๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ ( @Halytskyi ๋ต๋ณ์ ๊ธฐ๋ฐ์ผ๋กํ์ง๋ง ์ ๋ฐ์ดํธ ๋ etcdctl ํฌํจ) :
>: kubectl edit configmap kubeadm-config -n kube-system
configmap/kubeadm-config edited
kubeadm reset -f ๋ฌธ์ ๊ฐ์๋ ๋ ธ๋ && iptables -t -f -X ๋ฑ๋ฑ.
etcd ๋ฉค๋ฒ ์ญ์ (ํค) :
root@k8s-nebula-m-115-2:wget https://github.com/etcd-io/etcd/releases/download/v3.4.3/etcd-v3.4.3-linux-amd64.tar.gz
root@k8s-nebula-m-115-2:tar xfz etcd-v3.4.3-linux-amd64.tar.gz
```์
root @ k8s-nebula-m-115-2 : ~ / etcdctl / etcd-v3.4.3-linux-amd64 # ./etcdctl --endpoints https://127.0.0.1:2379 --cacert / etc / kubernetes / pki /etcd/ca.crt --cert /etc/kubernetes/pki/etcd/server.crt --key /etc/kubernetes/pki/etcd/server.key ๊ตฌ์ฑ์ ๋ชฉ๋ก
289ed62da3c6e9e5, ์์๋จ, k8s-nebula-m-115-1, https://10.205.30.2 : 2380, https://10.205.30.2 : 2379, false
917e16b9e790c427, ์์๋จ, k8s-nebula-m-115-0, https://10.205.30.1 : 2380, https://10.205.30.1 : 2379, false
ad6b76d968b18085, ์์๋จ, k8s-nebula-m-115-2, https://10.205.30.0 : 2380, https://10.205.30.0 : 2379, false
```shell
root@k8s-nebula-m-115-2:~/etcdctl/etcd-v3.4.3-linux-amd64# ./etcdctl --endpoints https://127.0.0.1:2379 --cacert /etc/kubernetes/pki/etcd/ca.crt --cert /etc/kubernetes/pki/etcd/server.crt --key /etc/kubernetes/pki/etcd/server.key member remove 289ed62da3c6e9e5
Member 289ed62da3c6e9e5 removed from cluster d4913a539ea2384e
๊ทธ๋ฐ ๋ค์ ์ํ์ ๋ค์ ์ฐธ์ฌํ์ญ์์ค.
kubeadm reset
์ด ์ค๋จ๋๊ณ kubeadm CM์์ ๋
ธ๋๋ฅผ ์ญ์ ํ ์์๋ ๊ฒฝ์ฐ ์ด๋ฌํ ์ํฉ์ด ๋ฐ์ํ ์ ์์ต๋๋ค.
์ด๋ฌํ ๊ฒฝ์ฐ kubeadm CM์์ ์๋์ผ๋ก ์ญ์ ํด์ผํฉ๋๋ค.
๋ฐ๋ผ์ kubectl delete node foobar
๋
ธ๋๋ฅผ ์ญ์ ํ๋ฉด
etcd ํ์์์ ์ญ์ ํ์๊ฒ ์ต๋๊น? ํ์ง๋ง ๋ด๊ฐ ์ํ๋ ๋
ธ๋์์ kubeadm reset
ํ๋ฉด
์ญ์ ํ๋ ค๋ฉด ์ด๋ป๊ฒํฉ๋๊น? ๐
์์์ผ, 30 Oct 2019, 13:27 Lubomir I. Ivanov, [email protected]
์ผ๋ค :
์ด๊ฒ์ kubeadm reset์ด ์ค๋จ๋๊ณ ์ญ์ ํ ์์๋ ๊ฒฝ์ฐ์ ๋ฐ์ํ ์ ์์ต๋๋ค.
kubeadm CM์ ๋ ธ๋.
์ด๋ฌํ ๊ฒฝ์ฐ kubeadm CM์์ ์๋์ผ๋ก ์ญ์ ํด์ผํฉ๋๋ค.โ
๋๊ธ์ ๋ฌ์ ๊ธฐ ๋๋ฌธ์ ์์ ํ ๊ฒ์ ๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/kubernetes/kubeadm/issues/1300?email_source=notifications&email_token=AF7BZL3Q4E2FMPZYKYNOV53QRF4SXA5CNFSM4GIIZTPKYY3PNVWWK3TUL52HS4DFVREXG43VMVQJKTDN547877054 BPW63LNMVXHJKW63LNMVXH
๋๋ ๊ตฌ๋ ์ทจ์
https://github.com/notifications/unsubscribe-auth/AF7BZL4EOZV7GQYNQOM3773QRF4SXANCNFSM4GIIZTPA
.
"kubeadm reset"์ kubeadm CM์์ ์ญ์ ํด์ผํ์ง๋ง ๋ ธ๋ API ๊ฐ์ฒด๋ฅผ ์ญ์ ํ๋ "kubectl delete node"๋ ํธ์ถํด์ผํฉ๋๋ค.
์ ๊ฒฝ์ฐ์๋ de configmap์์ ๋
ธ๋๋ฅผ ์ญ์ ํด๋ ์ญ์ ๋์ง ์์์ต๋๋ค.
etcd ํด๋ฌ์คํฐ๋ ์๋์ผ๋ก etcdctl delete member
.
2019 ๋
10 ์ 31 ์ผ ๋ชฉ์์ผ 16:28, Lubomir I. Ivanov [email protected]
์ผ๋ค :
"kubeadm reset"์ kubeadm CM์์ ์ญ์ ํด์ผํ์ง๋ง "kubectl
๋ ธ๋ API ๊ฐ์ฒด๋ฅผ ์ญ์ ํ๋ ๋ ธ๋ ์ญ์ "๋ ํ์ํฉ๋๋ค.โ
๋๊ธ์ ๋ฌ์ ๊ธฐ ๋๋ฌธ์ ์์ ํ ๊ฒ์ ๋๋ค.
์ด ์ด๋ฉ์ผ์ ์ง์ ๋ต์ฅํ๊ณ GitHub์์ ํ์ธํ์ธ์.
https://github.com/kubernetes/kubeadm/issues/1300?email_source=notifications&email_token=AF7BZLZVF7FFVA3LWINJZW3QRL2TLA5CNFSM4GIIZTPKYY3PNVWWK3TUL52HS4DFWSVREXG43GIVMVORP963,issueLNMVXHJK963
๋๋ ๊ตฌ๋ ์ทจ์
https://github.com/notifications/unsubscribe-auth/AF7BZL2KB3GVLTFKQTJTYXLQRL2TLANCNFSM4GIIZTPA
.
kubeadm reset์ ๋ํ etcd ํด๋ฌ์คํฐ์์ etcd ๊ตฌ์ฑ์์ ์ ๊ฑฐํด์ผํฉ๋๋ค.
์๋ฅผ ๋ค์ด --v = 5๋ก ์คํํ๊ณ ๊ทธ๊ฒ์ด ๋ฌด์์ํ๋์ง๋ณด์ญ์์ค.
๊ทธ๋ฌ๋ kubeadm reset์ ์ต์ ์ ๋ช ๋ น์ด๋ฏ๋ก ์ด๋ค ์ด์ ๋ก ์คํจํ๋ฉด ๊ฒฝ๊ณ ๋ง ์ธ์ ํ ์ ์์ต๋๋ค.
๋ฐ๋ผ์ kubectl delete node
์ etcd์์ ์ญ์ ํ์ง ์์ต๋๋ค. ๋์ kubeadm reset
๋
ธ๋์์ ์คํํ๋ฉด๋ฉ๋๋ค.
๋์๊ฒ ๊นจ์ง ์๋ฆฌ, ๋๋ kubectl delete node
๊ทธ๊ฒ์ etcd์์ ์ญ์ ํด์ผํ๋ค๊ณ ์๊ฐํฉ๋๋ค. ์๋๋ฉด ๋ถ๋ช
ํ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๋์น๊ณ ์์ต๋๊น?
๊ฑฐ๊ธฐ์์๋ ์ญ์ ํด์ผํ๋์ง ๋ฌผ์ด ๋ณผ๊น์?
์ด์จ๋ @ neolit123 ์ค๋ช
์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค. ๋จผ์ ์ ์ด ํ๋ฉด์์ ์ญ์ ํ ๋ค์ ์ฌ์ค์ ์ ์ํํ์ต๋๋ค. etcd์์ ์์ ์ ์ญ์ ํ๊ธฐ์๋ ๋๋ฌด ๋ฆ์๋ค ๊ณ ์๊ฐํฉ๋๋ค.
๊ทธ๋์ ๋ค๋ฅธ ์ฑ
์์ด ์์ต๋๋ค.
kubectl delete node๋ Node API ๊ฐ์ฒด๋ฅผ ์ญ์ ํฉ๋๋ค. ๋
ธ๋๊ฐ ๋ ์ด์ ํ์ํ์ง ์๋ค๊ณ ํ์ ํ ๋์ด ์์
์ ์ํํด์ผํฉ๋๋ค.
๊ทธ ์ ์ ํด๋น ๋
ธ๋์์ kubeadm reset์ ํธ์ถํด์ผํฉ๋๋ค. ๋ด๊ฐํ๋ ์ผ์ ๋์คํฌ์ ์ํ๋ฅผ ์ ๋ฆฌํ๊ณ etcd ๋ฉค๋ฒ๋ ์ ๊ฑฐํ๋ ๊ฒ์
๋๋ค (์ ์ด ํ๋ ์ธ ๋
ธ๋์ด๊ณ etcd ์ธ์คํด์ค๊ฐ ์ ์ด ํ๋ ์ธ ๋
ธ๋๋ณ๋ก ์คํ๋๋ ๊ธฐ๋ณธ ์ต์
์ ์ฌ์ฉํ๋ ๊ฒฝ์ฐ)
kubeadm reset์ ๋ ธ๋๋ฅผ ์ฌ์ค์ ํ์ง๋ง ๋ค์๊ณผ ๊ฐ์ ๋ช ๊ฐ์ง ์ด์ ๋ก Node ๊ฐ์ฒด๋ฅผ ์ญ์ ํ์ง ์์ต๋๋ค.
kubeadm reset์ ์ต์ ์ ๋ช ๋ น์ ๋๋ค.
์ด์ ๊ด๋ จํ์ฌ : kubeadm reset
๊ฐ ์ด๋ค ์ด์ ๋ก ๋ ์๋ฃ๋์ง ์๋ ๊ฒฝ์ฐ (kubeadm ์ฌ์ค์ ์ด ์ฒ์์ ์คํ๋์ง ์๋๋ก ๊ธฐ๋ณธ ์๋ฒ์ ํ๋ ์คํจ ํฌํจ) ์๋ ํธ์ง ์ธ์ ์ํ๋ฅผ ์๋์ผ๋ก ์กฐ์ ํ๋ ์ต์
์ด ์์ต๋๋ค. kubeadm-config configmap ๊ฐ์ฒด๋ฅผ ์ ๊ฑฐํ๊ณ ๋
ธ๋๋ฅผ ์ ๊ฑฐ ํ์๊ฒ ์ต๋๊น?
๋
ธ๋๊ฐ ํ๋ ์คํจํ์ฌ kubeadm reset์ ํธ์ถ ํ ์์๋ ๊ฒฝ์ฐ ์๋ ๋จ๊ณ๊ฐ ํ์ํฉ๋๋ค. ๋ค์์ ์ํํด์ผํฉ๋๋ค.
1) kubeadm-config CM ClusterStatus์์ ์ ์ด ํ๋ ์ธ IP ์ ๊ฑฐ
2) etcdctl์ ์ฌ์ฉํ์ฌ etcd ๋ฉค๋ฒ ์ ๊ฑฐ
3) kubectl์ ์ฌ์ฉํ์ฌ Node ๊ฐ์ฒด๋ฅผ ์ญ์ ํฉ๋๋ค (๋
ธ๋๋ฅผ ๋ ์ด์ ์ฃผ๋ณ์๋๊ณ ์ถ์ง ์์ ๊ฒฝ์ฐ).
1๊ณผ 2๋ ์ ์ด ํ๋ ์ธ ๋ ธ๋์๋ง ์ ์ฉ๋ฉ๋๋ค.
kubeadm reset์ ์คํํ ์์๋ ๊ฒฝ์ฐ์ด ์ฅ์ ์กฐ์น๋ฅผ ์๋ํ ํ ์์๋ ๋ฐฉ๋ฒ์ด ์์ต๋๊น?
1.9์์ ๋์ผํ ๋ฌธ์ . ์๋ฃจ์ ์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค.
๊ฐ์ฅ ์ ์ฉํ ๋๊ธ
1.13.3์์ ๋์ผํ ๋ฌธ์ ๊ฐ ๋ฐ์ํ์ต๋๋ค (HA ํด๋ฌ์คํฐ ์ค์ : ๋ง์คํฐ ๋ ธ๋ 3 ๊ฐ + ์์ ์ 3 ๊ฐ). ๋ค์ ๋จ๊ณ ํ์ ๋ง โโ๋ง์คํฐ ๋ ธ๋๋ฅผ ์ฑ๊ณต์ ์ผ๋ก ๊ต์ฒดํ์ต๋๋ค.
ํด๋ฌ์คํฐ์์ ๋ ธ๋ ์ญ์
etcdctl ๋ค์ด๋ก๋ (์ : master01)
etcd์์ ๋ง์คํฐ ๋ ธ๋ ์ ๊ฑฐ
kubeadm-config์์ ์ ๊ฑฐ