컨테이너 런타임파드가 노드에서 실행될 수 있도록 클러스터의 각 노드에 컨테이너 런타임을 설치해야 한다. 이 페이지에서는 관련된 항목을 설명하고 노드 설정 관련 작업을 설명한다. Show 쿠버네티스 1.25에서는 컨테이너 런타임 인터페이스(CRI) 요구사항을 만족하는 런타임을 사용해야 한다. 더 자세한 정보는 CRI 버전 지원을 참조한다. 이 페이지는 쿠버네티스에서 여러 공통 컨테이너 런타임을 사용하는 방법에 대한 개요를 제공한다.
필수 요소들 설치 및 구성하기다음 단계에서는 리눅스의 쿠버네티스 노드를 위한 일반적인 설정들을 적용한다. 만약 필요하지 않다고 생각한다면 몇몇 설정들은 넘어가도 무방하다. 더 자세한 정보는, 네트워크 플러그인 요구사항이나 각자 사용 중인 컨테이너 런타임에 해당하는 문서를 확인한다. IPv4를 포워딩하여 iptables가 브리지된 트래픽을 보게 하기
명시적으로 로드하려면, 리눅스 노드의 iptables가 브리지된 트래픽을 올바르게 보기 위한 요구 사항으로,
cgroup 드라이버리눅스에서, control group은 프로세스에 할당된 리소스를 제한하는데 사용된다. 리눅스 배포판의 init 시스템이 systemd인 경우, init 프로세스는 root control group( 단일 cgroup 관리자는 할당되는 리소스가 무엇인지를 단순화하고, 기본적으로 사용할 수 있는 리소스와 사용 중인 리소스를 일관성있게 볼 수 있다. 시스템에 두 개의 cgroup 관리자가 있으면, 이런 리소스도 두 개의 관점에서 보게 된다. 현장에서 사람들은 kubelet과 도커에 컨테이너 런타임과 kubelet이 Cgroup 버전 2cgroup v2는 cgroup Linux API의 다음 버전이다. cgroup v1과는 다르게 각 컨트롤러마다 다른 계층 대신 단일 계층이 있다. 새 버전은 cgroup v1에 비해 몇 가지 향상된 기능을 제공하며, 개선 사항 중 일부는 다음과 같다.
일부 컨트롤러는 cgroup v1에 의해 관리되고 다른 컨트롤러는 cgroup v2에 의해 관리되는 하이브리드 구성을 지원하더라도, 쿠버네티스는 모든 컨트롤러를 관리하기 위해 동일한 cgroup 버전만 지원한다. systemd가 기본적으로 cgroup v2를 사용하지 않는 경우, 커널 명령줄에
커널이 사용하는 커맨드 라인을 업데이트하려면, 변경 사항을 적용하기 위해 노드를 재시작해야 한다. cgroup v2로 전환할 때 사용자가 노드 또는 컨테이너 내에서 cgroup 파일 시스템에 직접 접근하지 않는 한 사용자 경험에 현저한 차이가 없어야 한다. cgroup v2를 사용하려면 CRI 런타임에서도 cgroup v2를 지원해야 한다. kubeadm으로 생성한 클러스터의 드라이버를 systemd로 변경하기기존에 kubeadm으로 생성한 클러스터의 cgroup 드라이버를 CRI 버전 지원사용할 컨테이너 런타임이 적어도 CRI의 v1alpha2 이상을 지원해야 한다. 쿠버네티스 1.25 버전에서는 기본적으로 CRI API 중 v1을 사용한다. 컨테이너 런타임이 v1 API를 지원하지 않으면, kubelet은 대신 (사용 중단된) v1alpha2 API를 사용하도록 설정된다. 컨테이너 런타임containerd이 섹션에는 containerd를 CRI 런타임으로 사용하는 데 필요한 단계를 간략하게 설명한다. 다음 명령을 사용하여 시스템에 containerd를 설치한다. containerd 시작하기의
지침에 따라, 유효한 환경 설정 파일(
`C:\Program Files\containerd\config.toml` 경로에서 파일을 찾을 수 있음. 리눅스에서,
containerd를 위한 기본 CRI 소켓은
|