inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

쿠버네티스 어나더 클래스-Sprint 1, 2 (#실무기초 #설치 #배포 #Jenkins #Helm #ArgoCD)

쿠버네티스 환경 설정 관련 질문 드립니다.

277

whdtn2007

작성한 질문수 2

1

cafe: https://cafe.naver.com/kubeops

안녕하세요

현재 일프로님의 Sprint 1 과정 중 쿠버 설치를 진행하고 있는 상황입니다.

가상화 환경은 vmware exsi로 가상 인스턴스를 올리고 있는 상황이고 os는 rocky 8.6으로 설치하여서 진행중에 있습니다.

현재 아래와 같은 명령어를 사용할 때 다음과 같은 이슈가 발생하는데 해당 이슈를 위해 조언을 주실만한 부분이 있으신가하여 문의를 드립니다.

(주로 사용하는 OS 버전이 8.6버전이라서 릴리즈를 8.6으로 고정하는 명령어(dnf versionlock add rocky-release-8.6*)로 8.6으로 맞추어 놓은 상황인데 혹시 버전 이슈일까요???)

[root@101-k8s-master ~]# !132

kubeadm init --ignore-preflight-errors=Hostname,CRI --pod-network-cidr=20.96.0.0/16 --apiserver-advertise-address=192.16.80.101 --node-name=101-k8s-master

I1211 21:11:32.530029 2327 version.go:256] remote version is much newer: v1.31.4; falling back to: stable-1.27

[init] Using Kubernetes version: v1.27.16

[preflight] Running pre-flight checks

[WARNING CRI]: container runtime is not running: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 runtime API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.RuntimeService"

, error: exit status 1

[preflight] Pulling images required for setting up a Kubernetes cluster

[preflight] This might take a minute or two, depending on the speed of your internet connection

[preflight] You can also perform this action in beforehand using 'kubeadm config images pull'

error execution phase preflight: [preflight] Some fatal errors occurred:

[ERROR ImagePull]: failed to pull image registry.k8s.io/kube-apiserver:v1.27.16: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 image API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService"

, error: exit status 1

[ERROR ImagePull]: failed to pull image registry.k8s.io/kube-controller-manager:v1.27.16: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 image API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService"

, error: exit status 1

[ERROR ImagePull]: failed to pull image registry.k8s.io/kube-scheduler:v1.27.16: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 image API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService"

, error: exit status 1

[ERROR ImagePull]: failed to pull image registry.k8s.io/kube-proxy:v1.27.16: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 image API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService"

, error: exit status 1

[ERROR ImagePull]: failed to pull image registry.k8s.io/pause:3.9: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 image API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService"

, error: exit status 1

[ERROR ImagePull]: failed to pull image registry.k8s.io/etcd:3.5.12-0: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 image API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService"

, error: exit status 1

[ERROR ImagePull]: failed to pull image registry.k8s.io/coredns/coredns:v1.10.1: output: time="2024-12-11T21:11:33+09:00" level=fatal msg="validate service connection: validate CRI v1 image API for endpoint \"unix:///var/run/containerd/containerd.sock\": rpc error: code = Unimplemented desc = unknown service runtime.v1.ImageService"

, error: exit status 1

[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

 

kubernetes infrastructure container

답변 2

0

일프로

설치 중인 전체 명령어를 올려주시면 확인에 도움이 될 것 같아요.

특히 쿠버네티스 설치 전에 containerd 설치가 잘 된 건지 확인이 필요하겠네요.

0

whdtn2007

안녕하세요 일프로님

우선 OS를 8.6에서 8.10으로 커널 버전을 올린 후 동일한 작업을 해보았을때는 아래의 이슈가 발생하지 않아서 개인적인 추측으로 os의 버전과 해당 버전의 지원되는 rpm 파일들간의 충돌이 발생한게 아닌가로 추측을 하고는 있습니다.

 

다만 요청주신 kubernetes의 버전과 containerd의 정보를 공유를 드리오니 혹시 짐작가시는 부분이 있으시다면 의견 부탁드립니다.

 

[root@101-k8s-master ~]# kubeadm version

kubeadm version: &version.Info{Major:"1", Minor:"27", GitVersion:"v1.27.2", GitCommit:"7f6f68fdabc4df88cfea2dcf9a19b2b830f1e647", GitTreeState:"clean", BuildDate:"2023-05-17T14:18:49Z", GoVersion:"go1.20.4", Compiler:"gc", Platform:"linux/amd64"}

[root@101-k8s-master ~]# kubelet --version

Kubernetes v1.27.2

[root@101-k8s-master ~]# kubectl version --client --short

Flag --short has been deprecated, and will be removed in the future. The --short output will become the default.

Client Version: v1.27.2

Kustomize Version: v5.0.1

[root@101-k8s-master ~]# containerd --version

containerd containerd.io 1.6.21 3dce8eb055cbb6872793272b4f20ed16117344f8

[root@101-k8s-master ~]# systemctl status containerd

● containerd.service - containerd container runtime

Loaded: loaded (/usr/lib/systemd/system/containerd.service; enabled; vendor preset: disabled)

Active: active (running) since Thu 2024-12-12 09:18:47 KST; 2h 24min ago

Docs: https://containerd.io

Process: 962 ExecStartPre=/sbin/modprobe overlay (code=exited, status=0/SUCCESS)

Main PID: 968 (containerd)

Tasks: 81

Memory: 171.1M

CGroup: /system.slice/containerd.service

├─ 968 /usr/bin/containerd

├─2380 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id 4911bde59d8693494c4f327f9e9a9ccda83bde9d36dc475e974ea64e0f5d1e76 -address /run/containerd/containerd.sock

├─2420 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id c00fedc725aba5c8a9e15f9ca6080c0dd5c8837b704b040441ef89f3283c1fcd -address /run/containerd/containerd.sock

├─2477 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id 1d9543007e111a2cf28c1d14d1e7b117936c23f3d4f6c73e06f0319acf6acdff -address /run/containerd/containerd.sock

├─2505 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id acd3e8cb38a5b02d0061910addcf07b27bf71fdeca5f65325efe5b510ff7b760 -address /run/containerd/containerd.sock

└─5612 /usr/bin/containerd-shim-runc-v2 -namespace k8s.io -id 6c5cdcc9b551f6ffac56ce17cf593da599beb74fb18c72c7ed29e6d04a436bd8 -address /run/containerd/containerd.sock

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.707263038+09:00" level=info msg="RunPodSandbox for &PodSandboxMetadata{Name:kube-proxy-ns949,Uid:567acce4-8a3a-4761-ba3f-61411ffdf9>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.736025283+09:00" level=info msg="loading plugin \"io.containerd.event.v1.publisher\"..." runtime=io.containerd.runc.v2 type=io.cont>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.736079037+09:00" level=info msg="loading plugin \"io.containerd.internal.v1.shutdown\"..." runtime=io.containerd.runc.v2 type=io.co>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.736085642+09:00" level=info msg="loading plugin \"io.containerd.ttrpc.v1.task\"..." runtime=io.containerd.runc.v2 type=io.container>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.736150538+09:00" level=info msg="starting signal loop" namespace=k8s.io path=/run/containerd/io.containerd.runtime.v2.task/k8s.io/6>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.817974324+09:00" level=info msg="RunPodSandbox for &PodSandboxMetadata{Name:kube-proxy-ns949,Uid:567acce4-8a3a-4761-ba3f-61411ffdf9>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.820762213+09:00" level=info msg="CreateContainer within sandbox \"6c5cdcc9b551f6ffac56ce17cf593da599beb74fb18c72c7ed29e6d04a436bd8\>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.844398655+09:00" level=info msg="CreateContainer within sandbox \"6c5cdcc9b551f6ffac56ce17cf593da599beb74fb18c72c7ed29e6d04a436bd8\>

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.844863321+09:00" level=info msg="StartContainer for \"4a9397a17915b7c131905b77b81fed4dc44d9ec7381674a96d24dc6bb5a55ac7\""

Dec 12 09:18:53 101-k8s-master containerd[968]: time="2024-12-12T09:18:53.949385652+09:00" level=info msg="StartContainer for \"4a9397a17915b7c131905b77b81fed4dc44d9ec7381674a96d24dc6bb5a55ac7\" returns su>

[root@101-k8s-master ~]#

 

1

일프로

네, 잘 하셨네요.

아무래도 8.6 버전은 너무 오래된 버전이라 최소 8.8 이상에서 하시면 됩니다.

수고 많으셨어요 :)

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

whdtn2007님, 쿠버네티스 설치 시 발생하는 에러에 대해 안내 드리겠습니다. 현재 받으신 에러 메시지는 컨테이너 런타임(containerd)이 제대로 설정되지 않아서 이미지 풀링에 실패하고 있는 상황을 나타냅니다. 몇 가지 해결 방법을 제시드리겠습니다:

  1. Container Runtime 설정 확인: 해당 에러는 containerd(또는 다른 컨테이너 런타임)가 제대로 구동되지 않아 발생할 수 있습니다. systemctl status containerd 명령어로 런타임이 정상적으로 작동 중인지 확인해보세요. 만약 구동 중이지 않다면 systemctl start containerd로 시작해 보시고, 오류 메시지가 발생할 경우 구체적인 오류를 기반으로 문제를 해결해야 합니다.

  2. containerd 설정 파일 확인: containerd의 설정 파일(/etc/containerd/config.toml)이 올바르게 구성되어 있는지 확인하세요. 특히, systemd_cgroup 옵션이 Kubernetes 구성을 지원하도록 설정되어 있어야 합니다.

  3. Kubernetes 버전 호환성 확인: kubeadm에서 받는 원격 버전에 대한 메시지가 있었습니다. 사용 중인 Kubernetes 버전(v1.27.16)과 설치된 containerd의 호환성을 다시 한 번 확인해보세요. 최신 릴리즈 노트나 Kubernetes 문서에서 지원되는 버전을 참조할 수 있습니다.

  4. 네트워크 조건 확인: kubeadm 실행 시 스피드에 따라 이미지 다운로드가 실패할 수도 있습니다. 네트워크 연결 상태를 확인하고, 미리 이미지를 다운로드 받는 것도 고려해보세요.

유사한 문제를 해결하는 또 다른 사례로는 “kubeadm init 오류”에서 해결 방법을 찾을 수 있습니다. 해당 링크는 Port 문제 및 쿠버네티스의 초기화 관련 오류 해결에 대한 방향을 제시합니다.

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

젠킨스버전과 플러그인설치

1

35

2

강의자료 원본 애니메이션처리가 되어 있을까요?

1

87

1

get pods 했을 때 connection refused가 뜹니다.

1

92

3

베이그란트 플러그인 설치 실패

1

86

1

실습겸 미니pc사보려는데 이정도면 괜찮을까요?

0

95

2

Image updater 1.0 이후 CRD 기반 변경 시 적용 방법 공유합니다.

1

85

1

기본 values 파일과 service name에 대한 질문이 있습니다.

0

73

2

Sprint 2 강의에서 yaml 파일들 경로에 대해 궁금한게 있어요.

1

64

2

Selector의 속성에 대해 질문 드립니다.

1

60

1

인스턴스 스펙

1

70

2

Container 기술 관련해서 질문드립니다.

1

84

3

Jenkins 빌드 UI 설정 관련 질문드립니다.

1

86

3

Jenkins 빌드 진행 UI 설정

0

70

1

cicd 서버 올린 후 기존 마스터 노드 기동 시 네트워크 에러

1

80

2

HPA - Auto Scaling 실습 관련 에러 해결 공유.

1

66

1

Loki-Stack 실습 관련 질문

1

74

2

Self-Healing 테스트 중 문의사항

1

73

2

영상 내용과 강의 자료가 상이해서 강의 듣기가 짜증납니다.

0

108

2

젠킨스 구축 9단계 오류

1

89

3

실습환경 네트워크 끊김 및 느린 속도 관련 질문

1

86

2

온프레미스 환경에 쿠버네티스도입

1

102

1

SealedSecret 관련 궁금증.

1

53

1

vagrant up 사용 시 The SSH connection was unexpectedly closed by the remote end

1

90

2

젠킨스 배포 질문

1

60

2