강의

멘토링

커뮤니티

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

2romade님의 프로필 이미지
2romade

작성한 질문수

쉽게 시작하는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}

3.3.파드와 디플로이먼트(Deployment) 차이

deployment 관련 문의

작성

·

9

0

질문 답변을 제공하지만, 강의 비용에는 Q&A는 포함되어 있지 않습니다.
다만 실습이 안되거나, 잘못된 내용의 경우는 알려주시면 가능한 빠르게 조치하겠습니다!

[질문 전 답변]
1. 강의에서 다룬 내용과 관련된 질문인가요? [예 | 아니요]
2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 | 아니요]
3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요]
(https://inf.run/DvsRD)
4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
5. vagrant up 에서 발생하는 문제는 주로 호스트 시스템(Windows, MacOS)과 연관된 다양한 조건에 의해 발생합니다. 따라서 이를 모두 제가 파악할 수 없어서 해결이 어렵습니다. vagrant up으로 진행이 어렵다면 제공해 드리는 가상 머신(VM) 이미지를 import해서 진행하시기 바랍니다.
(https://inf.run/Ljaer)

[질문 하기]

안녕하세요. 얼마전에 OVA 인증서 관련하여 질문드렸었고, 해당 부분 수정조치를 통해서 해결했고 지금은 잘 수강중인 수강생입니다.

이번엔 조금 다른 인증 문제로 추측되는 부분이 보여 문의드리고자 합니다.

 

지금 발생한 문제는 Deployment로 생성한 nginx Pod가 ContainerCreating 상태에서 멈춰 있고,

아무리 기다려도 컨테이너가 뜨지 않는 현상입니다.

Pod는 w2-k8s 노드로 정상 배치되었지만, 컨테이너 실행 직전 단계에서 계속 실패하는 중이며 직접적인 에러는 Pod sandbox 생성 실패로 보입니다.

FailedCreatePodSandBox 이벤트와 함께, Calico CNI가 Pod 네트워크를 구성하는 과정에서 kube-apiserver 접근 권한이 거부되고 있는게 맞나 모르겠습니다만 이런저런 검색을 통해 확인해본 결과
Calico 자체가 죽어 있거나 미배포된 문제는 아닌 것 같습니다.


calico-node와 calico-kube-controllers Pod는 전 노드에서 모두 Running 상태였고,

프로세스는 살아 있어 보이는데 클러스터 인증이 정상이지 않은 것은 아닌가.. 하여 문의드립니다.

Calico의 API 요청이 현재 kube-apiserver 인증 정보와 맞지 않아 거부되고 있는건지 맞다면 이것도 지난번 인증문제의 연장선인지 궁금합니다.

 

 

root@cp-k8s:~# kubectl create deployment deploy-nginx --image=nginx                       

deployment.apps/deploy-nginx created

 

oot@cp-k8s:~# kubectl get pods                                                           

NAME READY STATUS RESTARTS AGE

chk-info 1/1 Running 1 (2d23h ago) 3d21h

deploy-nginx-74d7d6d848-qfm9t 0/1 ContainerCreating 0 9m2s

nginx 1/1 Running 1 (2d23h ago) 3d21h

 

deployment 배포 시 계속 creating 중인것을 확인하여 이것저것 확인해보았습니다.

 

root@cp-k8s:~# kubectl describe pod deploy-nginx-74d7d6d848-qfm9t                         

Name: deploy-nginx-74d7d6d848-qfm9t

Namespace: default

Priority: 0

Service Account: default

Node: w2-k8s/192.168.1.102

Start Time: Sat, 10 Jan 2026 19:55:18 +0900

Labels: app=deploy-nginx

pod-template-hash=74d7d6d848

Annotations:

Status: Pending

IP:

IPs:

Controlled By: ReplicaSet/deploy-nginx-74d7d6d848

Containers:

nginx:

Container ID:

Image: nginx

Image ID:

Port:

Host Port:

State: Waiting

Reason: ContainerCreating

Ready: False

Restart Count: 0

Environment:

Mounts:

/var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-8xmt6 (ro)

Conditions:

Type Status

PodReadyToStartContainers False

Initialized True

Ready False

ContainersReady False

PodScheduled True

Volumes:

kube-api-access-8xmt6:

Type: Projected (a volume that contains injected data from multiple

sources)

TokenExpirationSeconds: 3607

ConfigMapName: kube-root-ca.crt

ConfigMapOptional:

DownwardAPI: true

QoS Class: BestEffort

Node-Selectors:

Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s

node.kubernetes.io/unreachable:NoExecute op=Exists for 300s

Events:

Type Reason Age From Message

---- ------ ---- ---- -------

Normal Scheduled 9m42s default-scheduler Successfully

assigned default/deploy-nginx-74d7d6d848-qfm9t to w2-k8s

Warning FailedCreatePodSandBox 9m41s kubelet Failed to cr

eate pod sandbox: rpc error: code = Unknown desc = failed to setup network for sandbox "00

b664464bf90cf3b54ba9fc929062889571285e8bf0c25021b3a66691fd3f7f": plugin type="calico" fail

ed (add): error getting ClusterInformation: connection is unauthorized: Unauthorized

Normal SandboxChanged 4m30s (x25 over 9m41s) kubelet Pod sandbox

changed, it will be killed and re-created.


root@cp-k8s:~# kubectl get pods -n kube-system | grep calico

calico-kube-controllers-546f76d588-pft8d 1/1 Running 2 (2d23h ago) 11d

calico-node-98wj4 1/1 Running 2 (2d23h ago) 11d

calico-node-99qnn 1/1 Running 2 (2d23h ago) 11d

calico-node-mpfgs 1/1 Running 2 (2d23h ago) 11d

calico-node-qtflz 1/1 Running 1 (2d23h ago) 11d



답변 1

0

안녕하세요, 인프런 AI 인턴입니다. 2romade님께서 질문해주신 내용에 대해 해결 방안을 찾기 위해 답변을 드리겠습니다.

Pod가 ContainerCreating 상태에서 진행되지 않고 있는 환경을 잘 설명해 주셨습니다. Pod 생성이 중단되는 문제는 대개 네트워크 관련된 오류, 특히 CNI 플러그인과 관련이 깊은데, 질문에서 Calico와 관련된 설정 문제가 의심되고 있다는 점에서도 정확히 그런 경우로 보입니다. 아래와 같이 확인해보세요:

  1. Calico 설정 점검: Calico의 설정이 제대로 되어 있지 않으면 Kubernetes 클러스터 내부에서 네트워크 연결이 원활하지 않을 수 있습니다. 특히, kubectl 명령어로 Calico의 설정이나 로그 (kubectl logs -n kube-system <calico-node-pod>)에서 에러가 보이는지 확인해 보세요.

  2. 쿠버네티스 인증 설정 확인: “connection is unauthorized: Unauthorized”라는 메세지는 인증 정보가 맞지 않을 수 있음을 시사합니다. Kubernetes apiserver에 대해 올바른 인증 정보(kubeconfig 파일 등)를 사용하고 있는지 확인하세요. 기본적으로, kubelet이나 kubectl 명령어가 사용할 인증서, 인증 정보의 유효성을 재확인하세요.

  3. kube-apiserver 접근 확인: kubectl get events -n default 명령어로 발생한 이벤트를 확인하고, 특히 FailedCreatePodSandBox와 관련된 추가적인 정보를 찾을 수 있는지 확인하세요. 이 과정에서 이슈가 명확히 드러날 수 있습니다.

  4. 재부팅 검사: 모든 노드를 재부팅한 후, 문제가 지속되는지 확인하세요. 간혹 시스템 부트 과정에서 문제의 원인이 사라질 수 있습니다.

참고할 수 있는 기존의 유사한 질문들입니다:

현재로서는 로그 및 설정 파일을 통해 문제의 원인을 더 구체적으로 찾는 것이 중요합니다. 위의 과정을 통해 문제를 해결할 수 없으면, 추가적인 로그 정보나 설정 내용 등을 공유해 주시면 좀 더 구체적인 도움을 드릴 수 있을 것 같습니다.

저는 질문자님의 이해를 돕고자 기존의 유사한 사례를 바탕으로 해결 방법을 제시합니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

2romade님의 프로필 이미지
2romade

작성한 질문수

질문하기