Inflearn コミュニティ Q&A
기초다지기 설치 문의드립니다.
作成
·
87
1
안녕하세요
아래와 같이 Status가 Pending으로 나와서 더 앞으로 못나가고 있습니다.
추가로 확인해야 할 부분이 있을까요?

回答 4
1
master에서 알려주신대로 삭제를 하면 아래 화면에서 안넘어 가네요(20분 정도 기다렸는데 엔터를 쳐도 엔터키만 내려감)

ctrl+c 누른다음 다시 실행하면

위와 같이 Error로 표기가 됩니다.
이상태에서 그냥 재설치를 수행을 하면


항목자체가 사라져 있네요
k8s v1.27 버전 설치 (최신, 쉬운설치 버전) - 1.22에서 변경됨 | KubeTM Blog
일단 위 순서대로 vagrant 삭제후 재설치 부터 3번 했는데 제가 처음 문의했던 현상 그대로 똑같습니다.
설치환경은 Windows11, Cpu 8core , Memory 16GB 입니다.
제가 임의로 ip를 변경하거나 다른 부분을 변경한건 없습니다.
그리고 알려주신 대로 변경하고
vagrant destroy -> vagrant up 해서 확인해 봤는데 동일하네요..

이렇게 안되는 경우는 잘 없었는데.. 일단 마지막으로 최신 버전으로 한번 더 해볼게요.
아래 스크립트를 해보시고요.
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/exam-cka/k8s-cluster-1.34/calico-3.31.1/operator-crds.yaml
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/exam-cka/k8s-cluster-1.34/calico-3.31.1/tigera-operator.yaml
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/exam-cka/k8s-cluster-1.34/calico-3.31.1/custom-resources.yaml이것도 안되시면 Calico가 아닌 다른 CNI를 설치하는 방법으로 가야 할 것 같습니다.
일단 해보시고 답변 주세요.
저도 딱 동일한 케이스를 겪었습니다.
pending 걸려있는 pod들도 같았어요. 사실 전혀 혼자서 상황을 풀 수가 없어서 gpt에게 물어봐서 해결한 과정을 알려드리겠습니다. 도움이 됐으면 좋겠네요.
먼저 calico는 강사님이 1차로 수정해주셨던 버전으로 스크립트에 넣었다는 걸 먼저 알려드립니다.
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/under-thesea/k8s-cluster-1.30/calico-3.28.2/calico.yaml
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/under-thesea/k8s-cluster-1.30/calico-3.28.2/calico-custom.yaml
$ kubectl get installation.operator.tigera.io -A
$ kubectl logs -n tigera-operator deploy/tigera-operator
두 커맨드로 calico 설치가 잘 됐는지와 로그를 확인.(이 역시 gpt의 디렉션입니다)
이 결과를 gpt에게 던졌더니 Calico IPPool CIDR과 kubeadm pod network CIDR이 서로 안 맞다고 함.(log는 굉장히 길기 때문에 직접 읽어가면서 원인 찾기는 사실상 불가능합니다. 전 그냥 다 긁어서 copy해서 gpt에게 던지니 textfile로 자동 변환되더라구요. 길더라도 그냥 다 copy/paste가 났습니다)
IPPool 20.96.0.0/12 is not within the platform's configured pod network CIDR(s) [20.96.0.0/16]그래서 operator가
waiting for enabled IP pools to be created
kubeadm 쪽 Pod CIDR:
20.96.0.0/16Calico IPPool:
20.96.0.0/12
이 둘이 일치해야 하는데 안 맞으니 Calico 안 올라옴 -> CNI 미초기화 -> 노드 NotReady -> CoreDNS: pending의 흐름.
Calico IPPool을 kubeadm의 Pod CIDR에 맞추는 방향으로 진행20.96.0.0/12가 아니라 **20.96.0.0/16
$ kubectl get installation.operator.tigera.io default -o yaml
-> spec.calicoNetwork.ipPools[].cidr 값이 20.96.0.0/12일 것.
$ kubectl edit installation.operator.tigera.io default
-> 위 커맨드로 해당 부분 수정. vi 형식이니 i 눌러서 편집 모드 하시고 수정해서 :wq로 저장하시면 됨.
그러고 다시 $ kubectl get pods -A
$ kubectl get nodes 하시면 되는데 전부 Running 및 Ready로 뜨려면 조금 걸릴 수 있음. 아니면 w 옵션까지 붙여서 진행상황 확인해보셔도 될 것 같음.


참고로 전 VirtualBox 7.1.16, Vagrant는 현 시점 최신 2.4.9로 진행했고 강사님이 가이드하신 virtualbox, vagrant 버전으로 시도했을 땐 virtualbox가 계속 설치 시 fatal error가 나서 포기했고, 각각 최신 버전으로 시도했을 땐 vagrant up에서 ssh Timed out 때문에 고생 좀 했습니다.
FAQ에는 이 두 소프트웨어의 버전은 크게 영향 안 받는다고 하셔서 저도 배제했었다가 이쪽이 문제가 될 거라 생각을 바꾸고 버전 조합을 좀 달리했더니 vagrant up은 다행히 넘어갔고 산을 하나 넘으니 또 질문자님과 같은 상황의 산을 만났었는데 다행히 클러스터 구성까지 성공했습니다. 꼭 성공하시길 바라겠습니다!
캡쳐를 잘 올려주셔서 상황 파악이 잘 되네요.
제가 드린 Calico 최신 스크립트는 앞에서 해보신 대로 Vagrantfile에 반영 해서 설치해야 합니다.
로그를 보니 기존 설치 완료 후에 이전 버전의 Calico가 설치되어 있는 상태에서 추가로 새 버전을 덮어씌우신 것 같아요.
다른 CNI인 Flannel 설치 스크립트입니다.
Vagrantfile에서 Calico 설치 스크립트 부분을 삭제하고 아래 명령어로 대체하시면 되세요.
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/flannel-0.28.2/kube-flannel.yml[조회 결과]

제 설치 스크립트에 쿠버네티스 Pod의 cidr은 20.96.0.0/12 로 세팅을 하고 있습니다.
그래서 Calico의 cidr도 그렇게 세팅이 되어 있고요.
/12 대역으로 세팅을 했지만 쿠버네티스에서는 적용이 안되는 문제가 있는 건지는 확인을 해보겠습니다.
여튼 canon님 몇일 동안 고생하셨고요, henney님께도 자세한 도움 주셔서 다시한번 감사드립니다.
0
오늘 같은 케이스의 문의가 있어서 어디서 잘못된 건지 알 수가 있었네요.
해당 강의 영상은 쿠버네티스 예전 버전이고요. 실습을 위한 자료실에서는 계속 업데이트가 되고 있습니다.
아마 영상에 있는 URL을 직접 입력해서 설치 자료실로 들어가신 것 같은데요. 그 설치 자료실은 현재 유지보수가 안되는 곳이고. 해당 강의의 자료실은 이 링크입니다.
(혼란 방지를 위해 이전에 들어가신 자료실은 폐쇄하였어요.)
각 영상 하단 [수업 노트 보기]에 강의별 자료실 링크가 걸려 있습니다.
henney님께서도 같은 방법으로 설치하신 듯 하네요.
같은 문제가 최대한 발생하지 않도록 자료실 변경에 대해서 좀 더 강조를 해 놓겠습니다.
0
tigera로 시작하는 pod가 칼리코 네트워크라고 해서 여러게의 pod가 추가 설치 되어야 하는데 하나만 running 상태네요.
그래서 네트워크가 정상적이지 않아 다른 pod들도 제대로 설치가 안되고 있는 상태고요.
간혹 칼리코 설치시 이런 현상이 발샐하곤 합니다.
한번 아래 명령대로 삭제 후 재설치를 해보시겠어요?
안되면 클러스터 재설치도 해보세요.
삭제
kubectl delete -f https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/calico-3.26.4/calico.yaml
kubectl delete -f https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/calico-3.26.4/calico-custom.yaml
재설치
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/calico-3.26.4/calico.yaml
kubectl create -f https://raw.githubusercontent.com/k8s-1pro/install/main/ground/k8s-1.27/calico-3.26.4/calico-custom.yaml
0
안녕하세요, 인프런 AI 인턴입니다. mizh님.
쿠버네티스에서 파드의 상태가 Pending으로 나타나는 경우는 여러 가지 원인이 있을 수 있습니다. 일반적으로 네트워크 플러그인 문제, 노드의 리소스 부족, 또는 올바르지 않은 설정 등이 주요 원인입니다.
해결 방법:
- 네트워크 플러그인 확인:
- 네임스페이스에서
calico또는flannel등의 네트워크 플러그인이 제대로 설치되어 있는지 확인해 보세요. 종종 네트워크 플러그인이 누락되거나 올바르게 설정되지 않으면 파드가Pending상태로 남아 있습니다.
- 네임스페이스에서
kubectl get pods -n kube-system
- 네트워크와 관련된 문제가 발생할 경우에는 Paul Berg님의 대쉬보드 관련 문제와 쿠버네티스 설치 및 설정 관련 에러 질문에서 유사한 사례의 솔루션을 참고할 수 있습니다.
- 리소스 체크:
- 노드에 충분한 리소스(CPU와 메모리)가 있는지 확인하세요. 자원이 부족하면 파드가 스케줄되지 않습니다.
- 노드에 충분한 리소스(CPU와 메모리)가 있는지 확인하세요. 자원이 부족하면 파드가 스케줄되지 않습니다.
kubectl describe nodes
- 파드 이벤트 및 로그 확인:
- 보다 구체적인 오류 메시지를 찾기 위해 해당 파드의 이벤트 및 로그를 확인하세요.
- 보다 구체적인 오류 메시지를 찾기 위해 해당 파드의 이벤트 및 로그를 확인하세요.
kubectl describe pod <POD_NAME> -n <NAMESPACE>
kubectl logs <POD_NAME> -n <NAMESPACE>
- 네트워크 설정 확인:
UTM,Docker등의 네트워크 설정을 다시 한 번 점검해 보시기 바랍니다. 때로는 네트워크 브리짓 설정 오류 때문에 문제가 생길 수 있습니다.
위의 방법들이 도움이 되지 않을 경우, 해당 문제는 추가적인 배경에서 나올 수 있는 복잡한 설정 문제일 수 있습니다. 따라서 좀 더 정확한 문제 해결을 위해 질문 내용에 대한 로그나 구체적인 에러 메시지를 제공해 주시면 더 많은 도움을 드릴 수 있습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.








자세한 캡쳐 감사합니다.
3번이나 해보셨으면, 다른 방법이 필요하겠네요.
쿠버네티스를 제대로 시작하기 전에 설치 부터 장애 처리부터 하시게 되서 어려움이 많으실 텐데요.
일단 calico가 정상적으로 삭제되지 않은 이유는 알기 힘들지만, 그 이후 다시 Calico 설치가 안된 이유는 calico에 대한 네임스페이스라는 리소스가 삭제되지 않아서 그럴 거고요. 해결 방법은 카페 자료실 이 링크를 보시면 됩니다. 근데 이건 나중에 쿠버네티스를 좀더 공부한 후에 같은 문제가 발생하면 해보시는 게 좋고요.
여러번 설치를 해봐도 Calico가 정상적으로 설치 되지 않는다면 여러가지 환경적인 문제가 있을 텐데,
먼저, 쿠버네티스 설치시 다운로드한 Vagrantfile에 192.168.56.30 IP에 대해서 변경이 있으셨을까요? calico 설치시 해당 IP가 Fix되어 있는 부분이 있기 때문에, IP를 변경하면 calico-custom.yaml의 내용도 수정을 해줘야 하는 부분이 있습니다.
아니라면, Calico의 버전을 높여 보는 게 좋은데, 다운로드 받은 Vagrantfile을 수정해서
스크립트 하단쪽에 calico 설치 부분을 아래 스크립트 변경해 보시겠어요?