인프런 커뮤니티 질문&답변

배고플땐물마셔요님의 프로필 이미지

작성한 질문수

그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}

2.13.자주 쓰이는 kubectl 옵션 명령어(-o yaml, --dry-run=client) 1부

kubesystem에서 컨트롤러 부분이 crashloopbackoff관련 질문

작성

·

1.8K

0

안녕하세요 강사님 

강의 열심히 시청중인 수강생입니다

kube-system쪽에서

kube-controller-manager-m-k8s,

kube-scheduler-m-k8s 

이 두 부분이 crashloopbackoff가 나서 질문드립니다.

중간 중간에 계속 접속이 멈춰서 강의 따라가고 싶은데 멈춰서 스트레스 받네요 ㅠㅠ 어떤 문제인지 꼭 알고 싶습니다

답변 2

0

vagrant 말고..강사님이 공유주신 이미지(m-k8s-1.24.0(github_SysNet4Admin))로 구성테스트 하고 있습니다.

질문자와 유사하게 "CrashLoopBackOff" 가 발생하여 원인 파악이 너무 힘들었습니다. ㅠㅠ..

[root@m-k8s ~]# k get pod -n kube-system
NAME                                      READY   STATUS             RESTARTS        AGE
calico-kube-controllers-56747d8f6-bs9bb   1/1     Running            3 (29m ago)     354d
calico-node-864sj                         1/1     Running            3 (29m ago)     354d
calico-node-9qdqz                         1/1     Running            3 (29m ago)     354d
calico-node-qxdwb                         0/1     CrashLoopBackOff   1 (4s ago)      9s

위와 같은 오류가 발생했구요.

master node에서 뭔가 해줘야하나..하고 뒤적거리다가..

https://github.com/sysnet4admin/IaC/tree/master/manifests

의 172.16_net_calico_v3.24.5.yaml 를 적용하고 정상으로 변경되었습니다.

뭔가 수정된 내용이 있을까요..?

[root@m-k8s ~]# k get pod -n kube-system
NAME                                       READY   STATUS              RESTARTS      AGE
calico-kube-controllers-84c476996d-68q8p   0/1     ContainerCreating   0             9s
calico-node-864sj                          1/1     Running             3 (45m ago)   354d
calico-node-9rffx                          0/1     Init:0/3            0             12s
calico-node-sxmvt                          0/1     Init:0/3            0             12s
calico-node-xftbj                          1/1     Running             2 (46m ago)   354d
coredns-6d4b75cb6d-9xgpp                   1/1     Running             2 (46m ago)   354d
coredns-6d4b75cb6d-k5hlk                   1/1     Running             2 (46m ago)   354d

위와 같이 init이 진행되다가 정상이 되었습니다.

[root@m-k8s ~]# k get pod -n kube-system
NAME                                       READY   STATUS    RESTARTS        AGE
calico-kube-controllers-84c476996d-68q8p   1/1     Running   1 (6m44s ago)   8m6s
calico-node-9rffx                          1/1     Running   0               8m9s
calico-node-9tpx4                          1/1     Running   0               5m15s
calico-node-dzfgx                          1/1     Running   0               6m38s
calico-node-sxmvt                          1/1     Running   0               8m9s
coredns-6d4b75cb6d-9xgpp                   1/1     Running   2 (54m ago)     354d
coredns-6d4b75cb6d-k5hlk                   1/1     Running   2 (54m ago)     354d

master_node.sh의

# raw_address for gitcontent
raw_git="raw.githubusercontent.com/sysnet4admin/IaC/master/manifests" 

# config for kubernetes's network 
kubectl apply -f https://$raw_git/172.16_net_calico_v1.yaml

의 부분이 수정이 되어야할까..싶기도 합니다.

어떤 부분이 수정이 있었을까요..^^;;

 

여튼..이력관리 차원으로 남겨둡니다.! 강의 잘 듣고 있습니다!

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

calico가 버전이 업데이트 되면서, 내부적으로 token관련한 이슈가 발생하고 있는데요.

그래서 v3.24.5로 가려고 하다가 다시 v1(v3.17.1)으로 모두 원복하였습니다.

관련 내용은 아래에서 확인하실 수 있을 것 같아요.

https://github.com/projectcalico/calico/issues/7220#issuecomment-1436177860

쿠버 1.24.0에서는 테스트해보진 않았지만, 아마 calico 버전을 올리시면 동일한 경험을 하실 수도 있을꺼 같아요. 참고 하시면 좋으실 것 같습니다.

0

조훈(Hoon Jo)님의 프로필 이미지
조훈(Hoon Jo)
지식공유자

안녕하세요 

저러기 쉽지 않은데..아마 지금 노드를 제가 확인할순 없는데, calico-node-rknld 있잖나요. 

그게 아마 마스터 노드의 CNI 일꺼에요. 

그게 restart 되면서 관련성 있는 애들이 restart 되는걸로 의심이 되거든요. 

 

제일 쉬운 방법은

1. 마스터 노드를 끄고 다시 키는거 

2. 좀 이걸로 해결이 안된다 싶으면 모든 노드를 다 끄고 다시 키는거 추천합니다. 

CNI쪽이 어떤 것으로 인해서 그렇게 되었는지 찾으려면 찾을 수도 있지만(현재 상태에서 못 찾을 가능성도 높음), 그걸 위해서는 봐야할 것들이 많고 복구를 위해서는 위의 방법 자체가 나으실꺼에요. 

 

위의 2가지 방법으로도 해결 안되면 다시 말씀 부탁드려요!