× 자유 게시판

sarc.io에서 가장 편한 공간입니다. 어떤 글도 환영합니다.

[번역] 쿠버네티스 v1.30 엿보기 (A Peek at Kubernetes v1.30)

  • 랜서200
    (랜서200)
  • 랜서200's Avatar 이 글의 작성자
  • Offline
  • Newbie
  • Newbie
더보기
27 Mar 2024 15:58 #32095 작성자: 랜서200
랜서200 님의 글: [번역] 쿠버네티스 v1.30 엿보기 (A Peek at Kubernetes v1.30)
쿠버네티스 v1.30 엿보기

2024년 3월 12일 화요일

저자: Amit Dsouza, Frederick Kautz, Kristin Martin, Abigail McCarthy, Natali Vlatko


빠른 보기: 쿠버네티스 v1.30의 흥미로운 변화

새해와 새로운 쿠버네티스 출시입니다. 우리는 출시 주기의 절반을 거쳤고 v1.30에서 꽤 많은 흥미롭고 흥미로운 개선 사항이 있습니다. 알파의 새로운 기능부터 안정적으로 졸업하는 확립된 기능, 오랫동안 기다려온 개선에 이르기까지, 이 릴리스는 모두가 관심을 기울여야 할 무언가를 가지고 있습니다!

공식 출시까지 당신을 안내하기 위해, 이 주기에서 우리가 가장 흥분하는 개선 사항을 살짝 엿볼 수 있습니다!


쿠버네티스 v1.30의 주요 변경 사항

동적 자원 할당을 위한 구조화된 매개 변수 (KEP-4381)

동적 리소스 할당은 v1.26의 알파 기능으로 쿠버네티스에 추가되었다. 그것은 타사 리소스에 대한 액세스를 요청하기 위한 전통적인 장치 플러그인 API의 대안을 정의합니다. 설계에 따라, 동적 리소스 할당은 핵심 쿠버네티스에 완전히 불투명한 리소스에 대한 매개 변수를 사용합니다. 이 접근법은 클러스터 오토스케일러(CA) 또는 포드 그룹(예: 작업 스케줄러)에 대한 결정을 내려야 하는 상위 레벨 컨트롤러에 문제를 제기합니다. 그것은 시간이 지남에 따라 클레임을 할당하거나 할당하는 효과를 시뮬레이션할 수 없다. 오직 제3자 DRA 드라이버만이 이것을 할 수 있는 정보를 가지고 있다.

동적 자원 할당을 위한 구조화된 매개 변수는 이러한 클레임 매개 변수를 덜 불투명하게 만드는 것을 지원하는 프레임워크를 구축함으로써 이 문제를 해결하는 원래 구현의 확장이다. 모든 클레임 매개 변수 자체의 의미를 처리하는 대신, 드라이버는 쿠버네티스가 미리 정의한 특정 "구조화된 모델"을 사용하여 리소스를 관리하고 설명할 수 있다. 이것은 이 "구조화된 모델"을 인식하는 구성 요소가 일부 제3자 컨트롤러에 아웃소싱하지 않고 이러한 자원에 대한 결정을 내릴 수 있게 할 것이다. 예를 들어, 스케줄러는 동적 자원 할당 드라이버와의 앞뒤 통신 없이 클레임을 빠르게 할당할 수 있다. 이 릴리스를 위해 수행된 작업은 다른 "구조화된 모델"을 활성화하고 "명명된 자원" 모델을 구현하는 데 필요한 프레임워크를 정의하는 데 중점을 두고 있다. 이 모델은 개별 리소스 인스턴스를 나열할 수 있으며, 전통적인 장치 플러그인 API와 비교하여 속성을 통해 해당 인스턴스를 개별적으로 선택할 수 있는 기능을 추가합니다.

노드 메모리 스왑 지원 (KEP-2400)

In Kubernetes v1.30, memory swap support on Linux nodes gets a big change to how it works - with a strong emphasis on improving system stability. In previous Kubernetes versions, the NodeSwap feature gate was disabled by default, and when enabled, it used UnlimitedSwap behavior as the default behavior. To achieve better stability, UnlimitedSwap behavior (which might compromise node stability) will be removed in v1.30.

The updated, still-beta support for swap on Linux nodes will be available by default. However, the default behavior will be to run the node set to NoSwap (not UnlimitedSwap) mode. In NoSwap mode, the kubelet supports running on a node where swap space is active, but Pods don't use any of the page file. You'll still need to set --fail-swap-on=false for the kubelet to run on that node. However, the big change is the other mode: LimitedSwap. In this mode, the kubelet actually uses the page file on that node and allows Pods to have some of their virtual memory paged out. Containers (and their parent pods) do not have access to swap beyond their memory limit, but the system can still use the swap space if available.

쿠버네티스의 노드 특별 관심 그룹(SIG 노드)은 또한 최종 사용자, 기여자 및 더 넓은 쿠버네티스 커뮤니티의 피드백을 기반으로 개정된 구현을 사용하는 방법을 이해하는 데 도움이 되도록 문서를 업데이트할 것입니다.

쿠버네티스의 리눅스 노드 스왑 지원에 대한 자세한 내용은 이전 블로그 게시물이나 노드 스왑 문서를 읽어보세요.

포드의 사용자 네임스페이스 지원 (KEP-127)

사용자 네임스페이스는 2024년 1월에 발표된 CVE-2024-21626을 포함하여 높은/중요한 여러 CVE를 방지하거나 완화하기 위해 포드를 더 잘 분리하는 리눅스 전용 기능입니다. 쿠버네티스 1.30에서 사용자 네임스페이스에 대한 지원은 베타 버전으로 마이그레이션되고 있으며 이제 볼륨, 사용자 지정 UID/GID 범위 등이 있거나 없는 포드를 지원합니다!

구조화된 인증 구성 (KEP-3221)

구조화된 인증 구성에 대한 지원은 베타 버전으로 이동하고 있으며 기본적으로 활성화될 것입니다. 이 기능을 사용하면 특정 순서로 요청을 검증하고 실패에 대한 명시적 거부와 같은 세밀한 제어를 허용하는 잘 정의된 매개 변수가 있는 여러 웹훅으로 인증 체인을 만들 수 있습니다. 구성 파일 접근 방식을 사용하면 웹훅으로 발송되기 전에 요청을 사전 필터링하기 위해 CEL 규칙을 지정할 수 있으므로 불필요한 호출을 방지할 수 있습니다. API 서버는 또한 구성 파일이 수정될 때 인증자 체인을 자동으로 다시 로드합니다.

You must specify the path to that authorization configuration using the --authorization-config command line argument. If you want to keep using command line flags instead of a configuration file, those will continue to work as-is. To gain access to new authorization webhook capabilities like multiple webhooks, failure policy, and pre-filter rules, switch to putting options in an --authorization-config file. From Kubernetes 1.30, the configuration file format is beta-level, and only requires specifying --authorization-config since the feature gate is enabled by default. An example configuration with all possible values is provided in the Authorization docs. For more details, read the Authorization docs.

컨테이너 자원 기반 포드 자동 확장 (KEP-1610)

Horizontal pod autoscaling based on ContainerResource metrics will graduate to stable in v1.30. This new behavior for HorizontalPodAutoscaler allows you to configure automatic scaling based on the resource usage for individual containers, rather than the aggregate resource use over a Pod. See our previous article for further details, or read container resource metrics.

입학 통제를 위한 CEL (KEP-3488)

쿠버네티스에서 입학 통제를 위한 공통 표현 언어(CEL)를 통합하는 것은 입학 요청을 평가하는 보다 역동적이고 표현적인 방법을 도입한다. 이 기능을 사용하면 쿠버네티스 API를 통해 복잡하고 세분화된 정책을 직접 정의하고 시행할 수 있으며, 성능이나 유연성을 손상시키지 않으면서 보안 및 거버넌스 기능을 향상시킬 수 있습니다.

CEL의 쿠버네티스 입학 제어에 추가된 클러스터 관리자는 웹훅 기반 액세스 컨트롤러에 의존하지 않고 클러스터의 원하는 상태와 정책에 대한 API 요청의 내용을 평가할 수 있는 복잡한 규칙을 만들 수 있게 해준다. 이러한 수준의 제어는 클러스터 운영의 무결성, 보안 및 효율성을 유지하는 데 중요하며, 쿠버네티스 환경을 다양한 사용 사례와 요구 사항에 더 강력하고 적응할 수 있도록 합니다. 입학 관리를 위해 CEL을 사용하는 방법에 대한 자세한 내용은 ValidatingAdmissionPolicy의 API 문서를 참조하십시오.

우리는 당신이 우리만큼 이번 출시에 흥분하기를 바랍니다. 더 많은 하이라이트를 위해 몇 주 안에 공식 출시 블로그를 주시하세요!


원문 : kubernetes.io/blog/2024/03/12/kubernetes-1-30-upcoming-changes/
Time to create page: 0.052 seconds
Powered by Kunena Forum