Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

22.6. 노드 적용

노드는 구성된 할당 가능 값을 기반으로 Pod에서 사용할 수 있는 총 리소스 양을 제한할 수 있습니다. 이 기능을 사용하면 컨테이너 런타임 및 노드 에이전트와 같은 시스템 서비스에 필요한 CPU 및 메모리 리소스를 Pod에서 사용하지 못하도록 하여 노드의 안정성이 크게 향상됩니다. 관리자는 노드 안정성을 개선하기 위해 리소스 사용량 목표에 따라 리소스를 예약해야 합니다.

노드는 서비스 품질을 적용하는 새 cgroup 계층 구조를 사용하여 리소스 제약 조건을 적용합니다. 모든 Pod는 시스템 데몬과는 별도의 전용 cgroup 계층에서 시작됩니다.

노드 적용을 구성하려면 적절한 노드 구성 맵 에서 다음 매개 변수를 사용합니다.

예 22.2. 노드 Cgroup 설정

kubeletArguments:
  cgroups-per-qos:
    - "true" 1
  cgroup-driver:
    - "systemd" 2
  enforce-node-allocatable:
    - "pods" 3
1
각 서비스 품질에 대해 cgroup 계층 구조를 활성화하거나 비활성화합니다. cgroup은 노드에서 관리합니다. 이 설정을 변경하려면 노드를 완전히 드레이닝해야 합니다. 노드에서 node-allocatable 리소스 제약 조건을 적용할 수 있도록 하려면 이 플래그가 true 여야 합니다. 기본값은 true 이며 Red Hat은 고객이 이 값을 변경하는 것을 권장하지 않습니다.
2
cgroup 계층 구조를 관리하기 위해 노드에서 사용하는 cgroup 드라이버입니다. 이 값은 컨테이너 런타임과 연결된 드라이버와 일치해야 합니다. 유효한 값은 systemdcgroupfs 이지만 Red Hat은 systemd 만 지원합니다.
3
노드에서 노드 리소스 제약 조건을 적용해야 하는 쉼표로 구분된 범위 목록입니다. 기본값은 pods 이며 Red Hat은 Pod 만 지원합니다.

관리자는 서비스 품질이 보장된 Pod와 비슷한 시스템 데몬을 처리해야 합니다. 시스템 데몬은 바인딩 제어 그룹 내에서 버스트될 수 있으며 이 동작은 클러스터 배포의 일부로 관리해야 합니다. 할당된 리소스에 대한 노드 구성 섹션에 표시된 대로 system-reserved 에서 리소스를 지정하여 시스템 데몬의 CPU 및 메모리 리소스를 예약합니다.

설정된 cgroup 드라이버를 보려면 다음 명령을 실행합니다.

$ systemctl status atomic-openshift-node -l | grep cgroup-driver=

출력에는 다음과 유사한 응답이 포함됩니다.

--cgroup-driver=systemd

cgroup 드라이버 관리 및 문제 해결에 대한 자세한 내용은 컨트롤 그룹(Cgroups) 소개를 참조하십시오.