55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결대세는 쿠버네티스 [초급~중급]
macOS에서 UTM을 통해 실행에러 문제
혹시 저같이 실습환경을 구축하다가 헤매고 계신분들이 있을까봐 글을 등록해둡니다!필자: Apple M1 Pro / macOS Sonoma 14.2.1강사님께서 v1.27 k8s 설치 가이드에서Rocky Linux minimal version으로 링크를 달아주셨습니다! UTM을 통해 실행할때 Error가 발생하시는 분들은 CD/DVD iso 이미지를 설치하셔야 정상적으로 실행됩니다ARM64 - DVD 를 클릭하시면 됩니당
- 미해결대세는 쿠버네티스 [초급~중급]
VM을 설치하여 실습하는 환경에 대해 질문 있습니다!
안녕하세요 실습 환경을 이해하고 있습니다! VM 3대를 띄워서 실습하는 환경에 대해 질문드리고 싶습니다.VM으로 Guest OS를 띄어 Node역할, Master역할을 하는 환경을 구축하는 이유는 즉, 다른 물리적인 자원이더라도 Kubernetes Cluster를 통해 관리할 수 있음을 보여주기 위한 것이 맞나요?
- 미해결대세는 쿠버네티스 [초급~중급]
m1 mac k8s 설치하였는데, 노드 2가 연결이 제대로 되지 않은 것 같습니다.
network is not ready: container runtime network not ready: NetworkReady=false reason:NetworkPluginNotReady message:Network plugin returns error: cni plugin not initialized위와 같은 에러가 발생하였습니다. 혹시 kubeadm join이 제대로 안되었을까봐ssh root@192.168.64.32 root@192.168.64.32's password: Last login: Mon Jan 1 02:54:04 2024 from 192.168.64.1 [root@k8s-node2 ~]# kubeadm join 192.168.64.30:6443 --token cyglm6.tgemxrxcwn2875z3 --discovery-token-ca-cert-hash sha256:2a6a3ca09f975b2ee5ac538e756ca0f2e170881028001afa8cf658c3f50fcbf9 [preflight] Running pre-flight checks error execution phase preflight: [preflight] Some fatal errors occurred: [ERROR FileAvailable--etc-kubernetes-kubelet.conf]: /etc/kubernetes/kubelet.conf already exists [ERROR Port-10250]: Port 10250 is in use [ERROR FileAvailable--etc-kubernetes-pki-ca.crt]: /etc/kubernetes/pki/ca.crt already exists [preflight] If you know what you are doing, you can make a check non-fatal with `--ignore-preflight-errors=...` To see the stack trace of this error execute with --v=5 or higher다시 시도해봤는데, join은 잘 된 것 같습니다. 위와 같이 에러가 발생한 이유가 뭘까요?
- 미해결대세는 쿠버네티스 [초급~중급]
대시보드내에 curl not found , 접속 Connection refused
안녕하세요 선생님 pod1 실습중입니다.1-1) PodapiVersion: v1 kind: Pod metadata: name: pod-1 spec: containers: - name: container1 image: kubetm/p8000 ports: - containerPort: 8000 - name: container2 image: kubetm/p8080 ports: - containerPort: 8080 k8s master 에서는 잘되는것 같은데요?[root@k8s-master ~]# curl 20.111.156.73:8080containerPort : 8080[root@k8s-master ~]# [root@k8s-master ~]# k8s-master 에서는 접속이 잘되는데요? 대시보드로 접속해서 curl 로 하면 command not found 나옵니다.그래서 node1 이나 node2에서 테스트 해본결과[root@k8s-node1 ~]# curl localhost:8000curl: (7) Failed to connect to localhost port 8000: Connection refused[root@k8s-node1 ~]# refused 가 나오고 있습니다.왜 이런 현상이 일어나는지 원인을 알고 싶습니다.
- 미해결대세는 쿠버네티스 [초급~중급]
Recreate 배포 시 다운타임 없음
다음 스크립트를 실행시켜놓고 Recreate 배포 테스트를 진행하면 다운 타임 없이 교체가 진행되는 것 같습니다.앱이 워낙 가벼워서 1초 이내에 교체가 진행될 수 있는걸까요?while true curl ..; sleep 1;
- 미해결대세는 쿠버네티스 [초급~중급]
CrashLoopBackOff 이슈가 지속적으로 발생함. 원인 분석 결과 공유드립니다.
개요 컨테이너는 정상적으로 배포가 되는 것으로 확인되지만, 마스터 노드에서 curl 명령어를 실행해보면 최초 1회는 정상적으로 응답하고, 바로 에러가 발생하는 것으로 확인되었습니다. 로그 내용은 다음과 같습니다.node:_http_server:345 throw new ERR_HTTP_HEADERS_SENT('write'); ^ Error [ERR_HTTP_HEADERS_SENT]: Cannot write headers after they are sent to the client at ServerResponse.writeHead (node:_http_server:345:11) at Server.content (/main.js:4:7) at Server.emit (node:events:519:28) at parserOnIncoming (node:_http_server:1143:12) at HTTPParser.parserOnHeadersComplete (node:_http_common:119:17) { code: 'ERR_HTTP_HEADERS_SENT' }컨테이너 내부 쉘에 접근하여 port8080.js 파일을 확인해본 결과 아래 소스 코드를 얻을 수 있었습니다.var http = require('http'); var content = function(req, resp) { resp.end("containerPort : 8080" + "\n"); resp.writeHead(200); } var w = http.createServer(content); w.listen(8080); 원인해당 소스코드를 로컬환경 node16 에서 실행해본 결과, 정상적으로 동작하는 것을 확인하였습니다. 실습 준비물 이미지 환경 node21 에서 실행해본 결과, 같은 에러가 발생하는 것을 확인하였습니다.Node 버젼이 업그레이드 되면서 http 모듈에 추가적인 예외처리가 반영되었다고 판단했습니다.공식 문서에 의하면 resp.end() 함수는 해당 컨텍스트의 종료를 의미한다고 합니다. 에러 로그를 살펴보면 컨텍스트의 종료 이후 헤더에 쓰기 작업을 수행하면서 발생하는 에러일 것으로 추측할 수 있었습니다. 결론 위 코드를 다음과 같이 변경한 후 Node21 환경에서도 정상적으로 동작하는 것을 확인했습니다.var http = require('http'); var content = function(req, resp) { resp.writeHead(200); resp.end("containerPort : 8080" + "\n"); } var w = http.createServer(content); w.listen(8080);
- 미해결대세는 쿠버네티스 [초급~중급]
쿠버네티스 대시보드 토큰
1.27 버전입니다.강의 내용대로 막힘없이 진행 후대시보드를 접근 하였는데 강의 내용과 다르게SKIP 버튼이 없고 토큰값 입력란과 OR Kubeconfig 입력해야 하는데 이 상황에선 어떻게 해야하나요?
- 미해결대세는 쿠버네티스 [초급~중급]
대시보드 서버 죽은 후 접속 안됨
안녕하세요, 최근 질문을 많이 드리게 되네요!이전 말씀해주신대로, Longhorn 관련 설정 수정 작업 진행 완료 했고 StatefulSet 관련하여 Pod를 늘리고 해당 Pod 안에서 touch 명령어로 파일을 생성하던 도중에 대시보드 서버가 먹통이 되었고https://192.168.56.30:6443/ 주소로 다시 접속을 하려 하면아래와 같은 JSON 형식으로 에러가 발생하면서 접속이 되지 않습니다.] 혹시나 해서 대시보드를 삭제후 재설치를 하여도 여전히 같은 문제가 발생하는데요. 해당 대시보드를 재부팅하거나 대시보드를 다시 살릴수 있는 명령어 있을까요?혹시나 해서 master 노드의 로그도 첨부드립니다.[대시보드 삭제후 재설치 명령어]# kubetm 가이드로 Dashboard대로 설치했을 경우 아래 명령으로 삭제 kubectl delete -f https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/dashboard-2.7.0/dashboard.yaml # 다시 Dashboard (2.7.0) 설치 - <https://github.com/kubernetes/dashboard/releases/tag/v2.7.0> kubectl apply -f https://raw.githubusercontent.com/kubernetes/dashboard/v2.7.0/aio/deploy/recommended.yaml [대시보드 접속시 에러화면][해당 오류 JSON 데이터 전체 내용]{ "paths": [ "/.well-known/openid-configuration", "/api", "/api/v1", "/apis", "/apis/", "/apis/admissionregistration.k8s.io", "/apis/admissionregistration.k8s.io/v1", "/apis/apiextensions.k8s.io", "/apis/apiextensions.k8s.io/v1", "/apis/apiregistration.k8s.io", "/apis/apiregistration.k8s.io/v1", "/apis/apps", "/apis/apps/v1", "/apis/authentication.k8s.io", "/apis/authentication.k8s.io/v1", "/apis/authorization.k8s.io", "/apis/authorization.k8s.io/v1", "/apis/autoscaling", "/apis/autoscaling/v1", "/apis/autoscaling/v2", "/apis/batch", "/apis/batch/v1", "/apis/certificates.k8s.io", "/apis/certificates.k8s.io/v1", "/apis/coordination.k8s.io", "/apis/coordination.k8s.io/v1", "/apis/crd.projectcalico.org", "/apis/crd.projectcalico.org/v1", "/apis/discovery.k8s.io", "/apis/discovery.k8s.io/v1", "/apis/events.k8s.io", "/apis/events.k8s.io/v1", "/apis/flowcontrol.apiserver.k8s.io", "/apis/flowcontrol.apiserver.k8s.io/v1beta2", "/apis/flowcontrol.apiserver.k8s.io/v1beta3", "/apis/longhorn.io", "/apis/longhorn.io/v1beta1", "/apis/longhorn.io/v1beta2", "/apis/networking.k8s.io", "/apis/networking.k8s.io/v1", "/apis/node.k8s.io", "/apis/node.k8s.io/v1", "/apis/operator.tigera.io", "/apis/operator.tigera.io/v1", "/apis/policy", "/apis/policy/v1", "/apis/projectcalico.org", "/apis/projectcalico.org/v3", "/apis/rbac.authorization.k8s.io", "/apis/rbac.authorization.k8s.io/v1", "/apis/scheduling.k8s.io", "/apis/scheduling.k8s.io/v1", "/apis/storage.k8s.io", "/apis/storage.k8s.io/v1", "/healthz", "/healthz/autoregister-completion", "/healthz/etcd", "/healthz/log", "/healthz/ping", "/healthz/poststarthook/aggregator-reload-proxy-client-cert", "/healthz/poststarthook/apiservice-discovery-controller", "/healthz/poststarthook/apiservice-openapi-controller", "/healthz/poststarthook/apiservice-openapiv3-controller", "/healthz/poststarthook/apiservice-registration-controller", "/healthz/poststarthook/apiservice-status-available-controller", "/healthz/poststarthook/bootstrap-controller", "/healthz/poststarthook/crd-informer-synced", "/healthz/poststarthook/generic-apiserver-start-informers", "/healthz/poststarthook/kube-apiserver-autoregistration", "/healthz/poststarthook/priority-and-fairness-config-consumer", "/healthz/poststarthook/priority-and-fairness-config-producer", "/healthz/poststarthook/priority-and-fairness-filter", "/healthz/poststarthook/rbac/bootstrap-roles", "/healthz/poststarthook/scheduling/bootstrap-system-priority-classes", "/healthz/poststarthook/start-apiextensions-controllers", "/healthz/poststarthook/start-apiextensions-informers", "/healthz/poststarthook/start-cluster-authentication-info-controller", "/healthz/poststarthook/start-deprecated-kube-apiserver-identity-lease-garbage-collector", "/healthz/poststarthook/start-kube-aggregator-informers", "/healthz/poststarthook/start-kube-apiserver-admission-initializer", "/healthz/poststarthook/start-kube-apiserver-identity-lease-controller", "/healthz/poststarthook/start-kube-apiserver-identity-lease-garbage-collector", "/healthz/poststarthook/start-legacy-token-tracking-controller", "/healthz/poststarthook/start-system-namespaces-controller", "/healthz/poststarthook/storage-object-count-tracker-hook", "/livez", "/livez/autoregister-completion", "/livez/etcd", "/livez/log", "/livez/ping", "/livez/poststarthook/aggregator-reload-proxy-client-cert", "/livez/poststarthook/apiservice-discovery-controller", "/livez/poststarthook/apiservice-openapi-controller", "/livez/poststarthook/apiservice-openapiv3-controller", "/livez/poststarthook/apiservice-registration-controller", "/livez/poststarthook/apiservice-status-available-controller", "/livez/poststarthook/bootstrap-controller", "/livez/poststarthook/crd-informer-synced", "/livez/poststarthook/generic-apiserver-start-informers", "/livez/poststarthook/kube-apiserver-autoregistration", "/livez/poststarthook/priority-and-fairness-config-consumer", "/livez/poststarthook/priority-and-fairness-config-producer", "/livez/poststarthook/priority-and-fairness-filter", "/livez/poststarthook/rbac/bootstrap-roles", "/livez/poststarthook/scheduling/bootstrap-system-priority-classes", "/livez/poststarthook/start-apiextensions-controllers", "/livez/poststarthook/start-apiextensions-informers", "/livez/poststarthook/start-cluster-authentication-info-controller", "/livez/poststarthook/start-deprecated-kube-apiserver-identity-lease-garbage-collector", "/livez/poststarthook/start-kube-aggregator-informers", "/livez/poststarthook/start-kube-apiserver-admission-initializer", "/livez/poststarthook/start-kube-apiserver-identity-lease-controller", "/livez/poststarthook/start-kube-apiserver-identity-lease-garbage-collector", "/livez/poststarthook/start-legacy-token-tracking-controller", "/livez/poststarthook/start-system-namespaces-controller", "/livez/poststarthook/storage-object-count-tracker-hook", "/logs", "/metrics", "/metrics/slis", "/openapi/v2", "/openapi/v3", "/openapi/v3/", "/openid/v1/jwks", "/readyz", "/readyz/autoregister-completion", "/readyz/etcd", "/readyz/etcd-readiness", "/readyz/informer-sync", "/readyz/log", "/readyz/ping", "/readyz/poststarthook/aggregator-reload-proxy-client-cert", "/readyz/poststarthook/apiservice-discovery-controller", "/readyz/poststarthook/apiservice-openapi-controller", "/readyz/poststarthook/apiservice-openapiv3-controller", "/readyz/poststarthook/apiservice-registration-controller", "/readyz/poststarthook/apiservice-status-available-controller", "/readyz/poststarthook/bootstrap-controller", "/readyz/poststarthook/crd-informer-synced", "/readyz/poststarthook/generic-apiserver-start-informers", "/readyz/poststarthook/kube-apiserver-autoregistration", "/readyz/poststarthook/priority-and-fairness-config-consumer", "/readyz/poststarthook/priority-and-fairness-config-producer", "/readyz/poststarthook/priority-and-fairness-filter", "/readyz/poststarthook/rbac/bootstrap-roles", "/readyz/poststarthook/scheduling/bootstrap-system-priority-classes", "/readyz/poststarthook/start-apiextensions-controllers", "/readyz/poststarthook/start-apiextensions-informers", "/readyz/poststarthook/start-cluster-authentication-info-controller", "/readyz/poststarthook/start-deprecated-kube-apiserver-identity-lease-garbage-collector", "/readyz/poststarthook/start-kube-aggregator-informers", "/readyz/poststarthook/start-kube-apiserver-admission-initializer", "/readyz/poststarthook/start-kube-apiserver-identity-lease-controller", "/readyz/poststarthook/start-kube-apiserver-identity-lease-garbage-collector", "/readyz/poststarthook/start-legacy-token-tracking-controller", "/readyz/poststarthook/start-system-namespaces-controller", "/readyz/poststarthook/storage-object-count-tracker-hook", "/readyz/shutdown", "/version" ] }
- 미해결대세는 쿠버네티스 [초급~중급]
DaemonSet - HostPort 실습중에 에러
안녕하세요 DaemonSet - HostPort 실습중에 노드 아이피로 마스터 노드에서 진행중인데 에러가 발생해서 왜 안되는지 궁금해서 문의남깁니다!혹시 서비스가 필요가 없는건가요?? 아니면 서비스 부분이 누락이 되서그런건지 .. 포트나 방화벽도 생각해야되는건지 궁금해서 여쭤봅니다.
- 해결됨대세는 쿠버네티스 [초급~중급]
Longhorn, pvc,pv 활용하여 pod 생성 시 오류 발생
안녕하세요. 강의 너무나도 잘듣고 있는 수강생입니다.현재 Statefulset 강의를 듣고 있는 중인데요.PVC 생성까지는 문제없으나(PV도 자동생성),ReplicaSet으로 Pod를 생성하거나 혹은 직접 Pod를 생성하여 PVC, PV에 연결되어 longhorn의 볼륨에 연결이 되었을 때, 아래와 같이 해당 불륨이 생성이 되지 않으면서 에러가 납니다.(계속 attaching 상태)앞 강의에서 Volume 중급편에서 Longhorn과 연동하여 Pod 를 생성할때는 문제가 없었던 걸로 기억을 합니다.제가 그래서 혹시나 해서 PVC를 임의로 아래와 같이 하나더 만들고 pod를 만들어보니 pod 생성이 안되네요(정확히는 longhorn과 Volume 연결을 할때 문제가 생기네요)apiVersion: v1 kind: PersistentVolumeClaim metadata: name: pvc-fast1 spec: accessModes: - ReadWriteOnce resources: requests: storage: 1G storageClassName: "fast" 혹시 몰라서 아래와 같이 fast2 라는 새로운 storageclass도 만들어서 다시 pvc 생성후 replicaSet 생성하여 Pod 생성, longhorn의 volume과 연동하였으나(물론 연동작업은 자동으로 이루어지는) 문제가 해결되지 않네요ㅠ혹시 대시보드를 삭제하고 2.0으로 다시 만들면서 문제가 생긴걸까요?현상에 대해 좀더 자세히 설명드리면 아래와 같이 파드가 계속 재생성되려고하다가 생성이 안되어 다시 파드를 새로 만들어서 생성하려고 하는 현상이 지속됩니다.[Longhorn 시스템 상태][Longhorn쪽 에러]
- 미해결대세는 쿠버네티스 [초급~중급]
컨테이너 내 curl 명령어 안됨. (자료실 이미지 이름 다름)
실습 자료실에 있는 스크립트의 image 이름이 kubetm이라고 올라와있습니다.컨테이너 내에서 curl 명령어가 없는 명령어라고 해서 강의를 잘 보니 강의에 사용하는 이미지는 tmkube네요.확인 부탁드립니다.
- 미해결대세는 쿠버네티스 [초급~중급]
externalTrafficPolicy 질문입니다.
apiVersion: v1 kind: Service metadata: name: svc-2 spec: selector: app: pod ports: - port: 9000 targetPort: 8080 nodePort: 30001 type: NodePort externalTrafficPolicy: Localkind: Service apiVersion: v1 metadata: name: svc-2 namespace: default uid: fb123857-fa60-42d3-ab9c-f03a1a7b6348 resourceVersion: '814181' creationTimestamp: '2023-11-27T12:38:12Z' managedFields: - manager: dashboard operation: Update apiVersion: v1 time: '2023-11-27T12:38:12Z' fieldsType: FieldsV1 fieldsV1: f:spec: f:externalTrafficPolicy: {} f:internalTrafficPolicy: {} f:ports: .: {} k:{"port":9000,"protocol":"TCP"}: .: {} f:nodePort: {} f:port: {} f:protocol: {} f:targetPort: {} f:selector: {} f:sessionAffinity: {} f:type: {} spec: ports: - protocol: TCP port: 9000 targetPort: 8080 nodePort: 30001 selector: app: pod clusterIP: 10.100.174.243 clusterIPs: - 10.100.174.243 type: NodePort sessionAffinity: None externalTrafficPolicy: Local ipFamilies: - IPv4 ipFamilyPolicy: SingleStack internalTrafficPolicy: Cluster status: loadBalancer: {} 워커 2번 주소로 반복적으로 실험해봤는데 워커노드가 2개가 번갈아서 나오는게 정상적인건지 확인차 질문드려봅니다.워커 1번 주소로는 pod-1만 노출이 되고있습니다.워커 2번 주소도 마찬가지로 pod-2만 응답해야되는게 아닌가요?
- 미해결대세는 쿠버네티스 [초급~중급]
vagrant up 수행시 404 에러가 발생 하네요.
https://vagrantcloud.com/rockylinux/boxes/8/versions/8.0.0/providers/virtualbox/unknown/vagrant.box 해당 url에서 404오류가 발생 되어 진행이 되지 않네요.
- 미해결대세는 쿠버네티스 [초급~중급]
안녕하세요 kubetm/p8000 실습에 사용되는 이미지들
arm64 에서도 사용 가능하게 변경해주실수 있나요 ..CrashLoopBackOff이 발생하는데 CPU 아키텍처가 안맞아서 그런거 같아서요
- 미해결대세는 쿠버네티스 [초급~중급]
실습 파일 링크 위치?
안녕하세요. 예전에 동영상 아래에 수업 자료 받을 수 있는 링크 있었는데, 업데이트 됐는지 보이질 않네요. 실습할 때 보는 자료 어디서 받을 수 있나요?
- 미해결대세는 쿠버네티스 [초급~중급]
혹시 맥 M시리즈에서 쿠버네티스 로컬구성하는 방법에 대해서는 계획이 없으신가요 ??
혹시 맥 M시리즈에서 쿠버네티스 로컬구성하는 방법에 대해서는 계획이 없으신가요 ?? 강의를 듣고있는데 실습이 쉽지 않아서요
- 미해결대세는 쿠버네티스 [초급~중급]
kubernetes timezone
강사님 안녕하세요k8s 강좌로 항상 큰 도움을 받고 있습니다. 다름이 아니라 이번에는 k8s timezone 관련해서 여쭤보고 싶은 부분이 있는데요..컨테이너별로 timezone을 설정하는 내용은 확인했는데container에 timezone을 asia/seoul로 설정했더라도파드 생성 yaml 스크립트를 보면creationTime이 UTC값으로 들어있더라구요kubernetes 클러스터가 UTC값을 사용하는 것 같은데혹시 kubernetes 자체의 timezone을 확인할 수 있는 명령어라던가timezone을 UTC에서 다른 것으로 변경이 가능할까요? 항상 너무 감사드립니다.오늘도 좋은 하루 되시길 바랍니다.
- 해결됨대세는 쿠버네티스 [초급~중급]
1.27 Volume Longhorn 설치 오류
안녕하세요 강사님 Volume 강의 실습을 위해 master 노드에서 아래의 명령어 실행하였으나 에러가 발생하여 문의 드립니다.node1, node2에서는 설치가 정상적으로 되고 있습니다. yum install -y iscsi-initiator-utils
- 미해결대세는 쿠버네티스 [초급~중급]
curl 설치
안녕하세요 우선 좋은 강의 감사합니다!현재 namespace 강의를 듣고 있는 중이고,한 namespace 내 pod에서 다른 namespace의 pod ip로 curl 명령치는 테스트 실습해보고 있는데요curl 명령어를 찾을 수 없다는 에러가 뜨는데, curl을 직접 설치하고자 apt update 부터 했는데요아래와 같이 404 not found가 떠서요... 이런식으로 curl 설치하는게 아닌가요?root@pod-1:/# apt updateIgn:1 http://deb.debian.org/debian stretch InReleaseIgn:2 http://deb.debian.org/debian stretch-updates InReleaseErr:3 http://deb.debian.org/debian stretch Release 404 Not FoundErr:4 http://deb.debian.org/debian stretch-updates Release 404 Not FoundIgn:5 http://security.debian.org/debian-security stretch/updates InReleaseErr:6 http://security.debian.org/debian-security stretch/updates Release 404 Not Found [IP: 151.101.2.132 80]Reading package lists... DoneE: The repository 'http://deb.debian.org/debian stretch Release' does not have a Release file.N: Updating from such a repository can't be done securely, and is therefore disabled by default.N: See apt-secure(8) manpage for repository creation and user configuration details.E: The repository 'http://deb.debian.org/debian stretch-updates Release' does not have a Release file.N: Updating from such a repository can't be done securely, and is therefore disabled by default.N: See apt-secure(8) manpage for repository creation and user configuration details.E: The repository 'http://security.debian.org/debian-security stretch/updates Release' does not have a Release file.N: Updating from such a repository can't be done securely, and is therefore disabled by default.N: See apt-secure(8) manpage for repository creation and user configuration details.Namespace, ResourceQuota, LimitRange - Namespace, ResourceQuNamespace, ResourceQuota, LimitRange - 실습ota, LimitRange - 실습
- 해결됨대세는 쿠버네티스 [초급~중급]
vagrant halt 시 master-node 종료 불가
C:\Users\inchangson\k8s>vagrant halt ==> k8s-node2: Attempting graceful shutdown of VM... ==> k8s-node1: Attempting graceful shutdown of VM... ==> k8s-master: Attempting graceful shutdown of VM... k8s-master: Guest communication could not be established! This is usually because k8s-master: SSH is not running, the authentication information was changed, k8s-master: or some other networking issue. Vagrant will force halt, if k8s-master: capable. ==> k8s-master: Forcing shutdown of VM... vagrant 종료 시 항상 master node만 제대로 종료가 되지 않는데 어떤 식으로 해결하면 될까요?기다리다 Ctrl+C 할 시 아래와 같은 메시지가 남고이후 vagrant halt 날리면 삭제 되었는지 아무 로그가 남지 않습니다. ^C C:\Users\inchangson\k8s>==> k8s-master: Waiting for cleanup before exiting... C:\Users\inchangson\k8s>==> k8s-master: Exiting immediately, without cleanup! Traceback (most recent call last): 55: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/bin/vagrant:231:in `<main>' 54: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/environment.rb:290:in `cli' 53: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/cli.rb:67:in `execute' 52: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/commands/halt/command.rb:30:in `execute' 51: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/plugin/v2/command.rb:232:in `with_target_vms' 50: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/plugin/v2/command.rb:232:in `each' 49: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/plugin/v2/command.rb:243:in `block in with_target_vms' 48: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/commands/halt/command.rb:31:in `block in execute' 47: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/machine.rb:201:in `action' 46: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/machine.rb:201:in `call' 45: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/environment.rb:614:in `lock' 44: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/machine.rb:215:in `block in action' 43: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/machine.rb:246:in `action_raw' 42: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `run' 41: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/util/busy.rb:19:in `busy' 40: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `block in run' 39: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/builder.rb:149:in `call' 38: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 37: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/providers/virtualbox/action/check_virtualbox.rb:26:in `call' 36: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 35: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/builtin/call.rb:53:in `call' 34: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `run' 33: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/util/busy.rb:19:in `busy' 32: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `block in run' 31: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/builder.rb:149:in `call' 30: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 29: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:127:in `block in finalize_action' 28: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 27: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/providers/virtualbox/action/check_accessible.rb:18:in `call' 26: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 25: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/providers/virtualbox/action/discard_state.rb:15:in `call' 24: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 23: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/builtin/call.rb:53:in `call' 22: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `run' 21: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/util/busy.rb:19:in `busy' 20: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `block in run' 19: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/builder.rb:149:in `call' 18: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 17: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:127:in `block in finalize_action' 16: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 15: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:127:in `block in finalize_action' 14: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 13: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/builtin/call.rb:53:in `call' 12: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `run' 11: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/util/busy.rb:19:in `busy' 10: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/runner.rb:89:in `block in run' 9: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/builder.rb:149:in `call' 8: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 7: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:127:in `block in finalize_action' 6: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/action/warden.rb:48:in `call' 5: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/providers/virtualbox/action/forced_halt.rb:13:in `call' 4: from C:/HashiCorp/Vagrant/embedded/mingw64/lib/ruby/2.7.0/forwardable.rb:235:in `halt' 3: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/providers/virtualbox/driver/version_5_0.rb:416:in `halt' 2: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/providers/virtualbox/driver/base.rb:398:in `execute' 1: from C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/lib/vagrant/util/retryable.rb:17:in `retryable' C:/HashiCorp/Vagrant/embedded/gems/2.2.18/gems/vagrant-2.2.18/plugins/providers/virtualbox/driver/base.rb:440:in `block in execute': There was an error while executing `VBoxManage`, a CLI used by Vagrant (Vagrant::Errors::VBoxManageError) for controlling VirtualBox. The command and stderr is shown below. Command: ["controlvm", "91ca85fb-bd5d-4570-b664-3be7fcc7aceb", "poweroff"] Stderr: 0%...10%...20%...30%...40%...50%...60%...70%...80%...90%...100%\r