6.9. 커널
RHEL 10.0의 커널 버전
Red Hat Enterprise Linux 10.0은 커널 버전 6.12.0과 함께 배포됩니다.
동적 EFIVARS
pstore 백엔드 지원
이번 릴리스에서는 런타임 시 EFIVARS
pstore 백엔드를 동적으로 활성화하여 시스템 스토리지를 효율적으로 관리할 수 있습니다.
이전에는 pstore 스토리지 백엔드를 재부팅하여 구성을 수정해야 했습니다. 이번 릴리스에서는 시스템을 재부팅하지 않고 NVMe
및 EFIVARS
와 같은 지원되는 백엔드 간에 전환할 수 있습니다.
또한 pstore 로깅의 개선 사항은 현재 활성 백엔드의 표시에 대한 명확성을 제공합니다.
시스템에 등록된 pstore 백엔드가 없는 경우 UEFI 부팅을 위해 efi_pstore
를 활성화합니다.
echo "N" > /sys/module/efi_pstore/parameters/pstore_disable
# echo "N" > /sys/module/efi_pstore/parameters/pstore_disable
[ 90.116913] pstore: Using crash dump compression: deflate
[ 90.118433] pstore: Registered efi_pstore as persistent store backend
Jira:RHELDOCS-19988[1]
rteval
유틸리티 컨테이너화
이번 업데이트를 통해 Quay.io 컨테이너 레지스트리를 통해 공개적으로 사용 가능한 컨테이너 이미지의 모든 런타임 종속 항목과 함께 rteval
유틸리티를 실행할 수 있습니다. 다음을 수행할 수 있습니다.
-
이전 RHEL 버전이
rteval
의 최신 버전을 가져올 수 있는 배포 유연성을 제공합니다. - 성능 평가가 다른 시스템 프로세스를 중단하거나 과도한 리소스를 소비하지 않도록 격리된 환경을 생성합니다.
-
동일한 호스트 또는 여러 호스트에서 여러
rteval
인스턴스를 실행합니다. -
특정 시스템 리소스를
rteval
에 할당하여 리소스 사용량 제어를 개선합니다.
또는 관련 Docker 파일을 사용하여 rteval
으로 자체 컨테이너 이미지를 빌드할 수 있습니다. 이 Docker 파일은 업스트림 리포지토리에 있으며 소스 RPM(SRPM)의 일부로 제공됩니다.
Jira:RHEL-28059[1]
rtla-timerlat
테스트 중에 CPU에서 유휴 상태를 로컬로 비활성화하는 새로운 옵션: deepest-idle-state
deepest-idle-state
에 대한 인수는 가장 깊이 허용된 유휴 상태의 수입니다. -1이 인수의 값인 경우 * 모든 유휴 상태를 비활성화합니다. /dev/cpu_dma_latency
를 사용하여 유휴 상태의 CPU를 비활성화하는 대신 rtla-timerlat
이 추가되어 측정이 실행 중인 CPU에 가장 깊은 허용 유휴 상태를 설정하기 위해 deepest-idle-state
옵션이 추가되었습니다.
결과적으로 rtla-timerlat
테스트 중에 전원을 저장하고 실시간 워크로드를 반영하고 /dev/cpu_dma_latency
를 사용하여 전역적으로 비활성화하는 대신 deepest-idle-state
를 사용할 수 있습니다.
Jira:RHEL-40744[1]
데드라인(DL) 서버는 CFS 작업에 대해 2단계 스케줄러를 구현합니다.
RHEL 10에서는 2단계 스케줄러를 구현하는 새로운 커널 적드라인(DL) 서버가 도입되었습니다. CFS(Completely Fair Scheduler) 작업에 대해 보장된 실행 시간을 제공하여 실시간(RT) 또는 Deadline(DL) 작업으로 인한 잠재적인 레이블을 완화합니다.
데드라인 우선 순위로 실행되는 새 DL 서버는 1초마다 CFS 작업을 예약하고 실행을 위해 초기 50밀리 초 런타임 창을 할당합니다. 이렇게 하면 우선 순위가 높은 RT 또는 DL 작업에서 선점하는 경우에도 CFS 작업이 주기적인 CPU 시간을 받을 수 있습니다. runtime 및 period 매개변수는 /sys/kernel/debug/sched/fair_server/cpu*/{runtime, period}
를 사용하여 CPU별로 조정할 수 있습니다. 런타임을 0
으로 설정하면 지정된 CPU의 DL 서버가 비활성화됩니다.
DL 서버는 중단을 위해 stallD
와 같은 외부 도구의 필요성을 제거하고 이러한 툴의 수동 구성 및 튜닝 요구 사항을 제거합니다.
이를 통해 커널 내에서 직접 CFS 작업 스케줄링을 위한 강력하고 통합된 투명한 솔루션을 제공합니다.
Jira:RHEL-58211[1]
landlock, 새로운 Linux Security Module (LSM)이 릴리스되었습니다.
RHEL 10.0은 컨테이너를 더 안전하게 만드는 새로운 보안 기능인landlock을 도입했습니다. Lokilock은 Podman과 같은 프로세스에 대한 엄격한 규칙을 설정하여 커널 API를 통해 파일 시스템에 대한 액세스를 제한하고, 권한 수준에 관계없이 자체적으로 규칙을 정의하고 사용자가 프로세스의 액세스 가능한 범위를 통해 하드 제한을 생성할 수 있도록 합니다.
Cryostatlock을 사용하면 잘못 구성되거나 악의적인 대상 프로세스와 관련된 잠재적인 위험을 완화하는 프로그램을 구축할 수 있습니다. 이렇게 하면 컨테이너와 전체 시스템의 보안이 향상됩니다.
Jira:RHEL-40283[1]
rh_waived
커널 명령줄 부팅 매개변수 지원
이번 릴리스에서는 rh_waived
커널 명령줄 부팅 매개변수가 지원됩니다. rh_waived
는 RHEL에서 제외된 기능을 활성화하는 데 사용됩니다. 제외된 기능은 유지 관리되지 않거나 안전하지 않거나, 기본적인 기능 또는 더 이상 사용되지 않는 커널 기능입니다. RHEL 10에서는 이러한 기능이 기본적으로 비활성화되어 있습니다. 제외된 기능을 사용하려면 수동으로 활성화해야 합니다.
Jira:RHEL-26170[1]
새로운 timerlat-interval INTV_US
및 cyclictest-interval INTV_US
옵션
이번 개선된 기능을 통해 rteval
명령의 다음과 같은 새로운 옵션을 사용하여 타이머
lat 또는 cyclictest
스레드를 실행할 때 기본 또는 주기 주기 옵션을 수정할 수 있습니다.
-
timerlat-interval INTV_US
-
cyclictest-interval INTV_US
rteval
과 함께 이러한 옵션 중 하나를 사용하지 않으면 기본값이 적용됩니다.
Jira:RHEL-67424[1]
cyclictest
를 사용한 대기 시간 테스트 시 유휴 상태를 로컬로 비활성화하는 새로운 옵션
-
cyclictest
툴은/dev/cpu_dma_latency
를 기본적으로 0으로 설정하여 유휴 상태 발생 시 대기 시간이 증가하여 모든 CPU에서 유휴 상태를 비활성화합니다. -
새로운
deepest-idle-state
옵션은 테스트에 선택한 CPU에서 유휴 상태만 비활성화합니다. 인수는 가장 깊은 허용 유휴 상태를 지정하여 측정된 CPU에서 모든 유휴 상태를-1
로 설정합니다. -
cyclictest
를 사용한 튜닝은 실시간 워크로드 테스트를 반영하므로 CPU 유휴 상태를 비활성화하기 위해/dev/cpu_dma_latency
를 사용하는 대신deepest-idle-state
를 사용하면 실시간 워크로드가 실행 중인 CPU에서만 유휴 상태를 비활성화하는 사용 사례가 반영됩니다. -
결과적으로 모든 사용 사례를 처리하는
cyclictest
적용 범위가 증가하고 전력 소비가 감소합니다.
Jira:RHEL-65488[1]
시스템 실패를 방지하기 위해 kdump
절차를 확인하는 새로운 통합 테스트
이번 개선된 기능을 통해 소프트웨어 또는 하드웨어 업데이트 후 kdump
프로시저의 로그 파일을 확인하여 시스템 실패를 방지할 수 있습니다. 출력 로그 파일을 분석한 후 일부 드라이버의
와 같은 구성 항목이 메모리 문제
또는 블랙리스트kdump
절차를 검증하고 vmcore
를 생성하도록 수정되었습니다. 이렇게 하면 소프트웨어 또는 하드웨어 업데이트 후 시스템이 충돌하기 전에 kdump
프로시저의 유효성을 검사하고 수정할 수 있습니다.
Jira:RHEL-29941[1]