작성
·
96
1
참고:
도커 엔진은 컨테이너 런타임이 쿠버네티스와 호환되기 위한 요구 사항인CRI를 만족하지 않는다. 이러한 이유로, 추가 서비스인cri-dockerd가 설치되어야 한다. cri-dockerd는 쿠버네티스 버전 1.24부터 kubelet에서제거된 기존 내장 도커 엔진 지원을 기반으로 한 프로젝트이다.
이렇게 되어있는데 설명해주신 내용이라 하셨는데...
설명해주신 내용이랑 참고글이 조금 이해가 안되서 글 올려봅니다.
docker엔진은 dockershim이라는 cri가 있기 때문에 계속 써도 된다고 하셨던것같고 그림에도그렇게 표시되어있는데 위 참고글에는 cri를 만족하지 않는다고 하니 이부분이 일단 이해가 안가구요~ 1.23에 deprecated된다고 하더라도 dockershim 이 비록 관리나 버그가 문제라 하더라도 1.24에는 cri-dockerd라는게 내장되어 docker는 결국 계속 써도 되는거 아닌가요?
답변 2
0
docker엔진은 dockershim이라는 cri가 있기 때문에 계속 써도 된다고 하셨던것같고 그림에도그렇게 표시되어있는데 위 참고글에는 cri를 만족하지 않는다고 하니 이부분이 일단 이해가 안가구요~
계속 써도 되는 건 아니고 v1.5~v1.23 버전 까지만 사용 가능합니다. 위 [참고] 글은 1.24 버전 이상의 가이드에서 나오는 내용이라 cri를 만족하지 않는 다고 한 것 같아요.
1.23에 deprecated된다고 하더라도 dockershim 이 비록 관리나 버그가 문제라 하더라도 1.24에는 cri-dockerd라는게 내장되어 docker는 결국 계속 써도 되는거 아닌가요?
네, 1.24 버전 부터는 도커를 설치하면 cri-dockerd가 같이 설치됩니다. 그래서 계속 도커를 사용할 수 있어요. 이 내용은 [참고]에서도 말하고 있는 내용이고, 제 강의 내용과도 같은데 어떤 포인트에서 1.24부터 docker를 못 쓴다고 생각하신 걸까요?
그러셨군요.
Kubernetes 1.24에서는 dockershim이 완전히 제거되었습니다.
하지만 CRI 자체는 여전히 존재합니다. CRI는 Kubernetes가 다양한 컨테이너 런타임을 관리할 수 있도록 추상화된 인터페이스이고,
그래서 CRI는 계속해서 유지되고, dockershim만 삭제된 겁니다.
0
안녕하세요, 인프런 AI 인턴입니다. odark님!
도커 엔진과 쿠버네티스의 호환성에 대한 내용은 꽤나 혼란스러울 수 있습니다. 질문하신 부분에 대해 설명을 드리겠습니다.
도커는 쿠버네티스에서 기본으로 지원하던 것이 맞지만: 쿠버네티스 1.24에서부터는 dockershim
을 통한 Docker 지원이 제거되었기 때문에, 원래의 방식대로 도커를 사용할 수는 없게 되었습니다. dockershim
이란, Docker를 쿠버네티스와 연결하기 위한 중간 다리 역할을 하는 도구였습니다.
CRI와 Docker: CRI(Container Runtime Interface)는 쿠버네티스가 다양한 컨테이너 런타임과 상호 작용할 수 있도록 하는 표준 인터페이스입니다. Docker는 CRI를 직접적으로 지원하지 않기 때문에 Kubernetes에서 주로 사용하는 ContainerD나 CRI-O 같은 다른 런타임을 도입하게 된 것입니다.
cri-dockerd: 이는 Docker를 계속 사용하고자 하는 사용자들을 위한 방법입니다. cri-dockerd
를 사용하면 쿠버네티스 1.24 이상에서도 Docker를 사용할 수 있습니다. 이는 기본 내장된 기능은 아니지만, 곧바로 대체할 수 있는 해결책입니다.
말씀하신 것처럼, 계속 Docker를 사용하고자 한다면 cri-dockerd
를 설치하여 사용할 수 있으나, 이는 공식적인 기본 지원 방식은 아닙니다.
아래는 관련된 리소스를 참고하실 수 있는 링크입니다:
- 쿠버네티스 도커 지원 제거에 대한 배경 설명
Docker 환경에서 쿠버네티스를 운영하려면 이러한 최근 변화들을 이해하고 적절히 대처하는 것이 중요합니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
이해 했습니다^^ 못쓴다고 생각한게 아니라....재확인차 여쭤봤던거고. 결국 버전업을 하게 되면 1.23에서 .124로 넘어가면 container orchestration에 있는 CRI은 구현부는 그대로 남아있나요? 사라지고 아예 런타임으로 바로 받을수 있게 바뀐건가요? 아니면 CRI는 존재하고 dockershim만 빠진건가요??