Oracle Cloud Infrastructure Kubernetes Engine 노드에서 Kubelet 및 운영체제 데몬에 대한 리소스 예약

소개

Oracle Cloud Infrastructure Kubernetes Engine(OKE)에서 Kubernetes 워크로드를 실행할 때는 작업자 노드에 Kubernetes 제어 구성요소 및 OS(운영체제) 데몬을 위한 예약된 리소스가 있는지 확인해야 합니다. 적절한 예약은 리소스 경합을 방지하고, 메모리 압력을 줄이고, 클러스터 안정성을 향상시킵니다. 이는 다중 테넌트 환경, 고밀도 워크로드 또는 노드 압력 문제 해결 시 특히 중요합니다. 이 자습서에서는 노드 풀 생성 시 적용된 사용자 정의 cloud-init 스크립트를 사용하여 이러한 예약을 구성하는 방법에 대해 알아봅니다. cloud-init를 활용하면 최소한의 노력으로 클러스터 노드 전체에서 이러한 구성을 표준화할 수 있습니다.

Kubelet 자원 구성

Kubernetes의 기본 노드 에이전트인 Kubelet은 구성 플래그 또는 파일을 통해 리소스 관리를 지원합니다. 다음을 정의할 수 있습니다.

목표

필수 조건

1단계: cloud-init 스크립트 작성

다음 cloud-init 스크립트는 CPU, 메모리 및 임시 저장소를 예약하고 제거 임계값을 설정하는 Kubelet 구성 파일을 생성합니다.

#!/bin/bash
curl --fail -H "Authorization: Bearer Oracle" -L0 http://169.254.169.254/opc/v2/instance/metadata/oke_init_script | base64 --decode >/var/run/oke-init.sh
bash /var/run/oke-init.sh --kubelet-extra-args "--kube-reserved=cpu=500m,memory=1Gi --system-reserved=cpu=100m,memory=100Mi"

2단계: cloud-init 스크립트를 사용하여 노드 풀 생성

  1. OCI 콘솔로 이동하여 OKE 클러스터로 이동합니다.

  2. 노드 풀을 선택한 다음 노드 풀 추가를 눌러 새 풀을 생성하거나 편집을 눌러 기존 노드 풀을 수정합니다.

  3. 이름, 구획, 노드 배치, 구성네트워킹에 대한 환경설정을 사용하여 노드 풀을 설정합니다.

  4. 고급 옵션 표시에서 Cloud-init 스크립트 붙여넣기를 누르고 사용자정의 스크립트를 붙여넣습니다.

  5. 나머지 노드 풀 설정을 완료하고 추가를 누릅니다.

노드 풀 추가

노드가 프로비저닝되면 스크립트는 부트 시 실행되며 리소스 제약 조건이 자동으로 적용됩니다.

주: Terraform으로 설정을 자동화하는 경우 노드 풀 리소스를 생성할 때 node_config_details.cloud_init_script 블록에서 스크립트를 전달할 수 있습니다.

승인

추가 학습 자원

docs.oracle.com/learn에서 다른 랩을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 education.oracle.com/learning-explorer를 방문하여 Oracle Learning Explorer가 되십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.