7.14. Red Hat Enterprise Linux 시스템 역할
encryption_key 가 더 이상 마스크되지 않음
이번 업데이트 이전에는 encryption_key 매개변수가 no_log 로 잘못 표시되었습니다. 이로 인해 키 파일 경로가 자리 표시자 문자열로 교체되어 디스크 암호화가 작동하지 않았습니다. 이번 업데이트를 통해 encryption_key 매개변수가 no_log 플래그로 표시되지 않으며 키 파일을 사용하여 디스크 암호화를 성공적으로 수행할 수 있습니다.
Jira:RHEL-104676[1]
RAID에서 유효하지 않거나 지원되지 않는 구성에 대한 명확한 오류를 보고
이번 업데이트 이전에는 잘못된 RAID 수준 또는 디스크가 명확하지 않은 오류를 발생시키지 않고 지정할 수 있었습니다. 이로 인해 실패하거나 일관되지 않은 배열 생성이 발생했습니다. 그 결과 오류 메시지가 명확하지 않았으며 RAID 설정의 안정성이 떨어졌습니다. 이번 릴리스에서는 RAID 매개변수가 배열 생성 전에 검증되고 최소 디스크 수가 적용됩니다. 결과적으로 명확한 오류가 발생하며 부적절한 디스크로 RAID를 생성하려고 합니다.
이번 수정에서는 더 이상 사용되지 않는 process_device_numbers 도우미도 제거하고 대신 unify_raid_level 을 사용합니다. 또한 잘못된 RAID 수준 및 디스크 시나리오 부족에 대한 실패 테스트도 추가되었습니다.
Jira:RHEL-104891[1]
LVM RAID에서 암호화 및 분할된 장치 지원
이번 업데이트 이전에는 LVM RAID 코드에서 raid_disks 에 지정된 디스크가 모든 LVM RAID 설정에 대한 PV의 상위 장치라고 가정합니다. 이는 암호화되거나 분할된 장치에는 적용되지 않았습니다. 그 결과 암호화된 LUKS 계층이 추가 스토리지 계층을 추가하거나 상위 장치 없이 직접 파티션을 사용할 때 오류가 발생했습니다. 이번 릴리스에서는 암호화된 장치를 지원하도록 LVM RAID의 PV 해상도가 개선되었습니다. 결과적으로 기본 디스크 대신 PV 파티션을 지정할 수 있습니다.
이번 수정에서는 누락되거나 유효하지 않은 RAID 디스크 항목에 대한 오류 처리도 추가하고 해당 테스트를 도입하여 안정성을 보장합니다.
Jira:RHEL-95885[1]
마이너 볼륨 크기가 일치하지 않으면 더 이상 잘못된 역할 보고가 발생하지 않음
이번 업데이트 이전에는 볼륨을 생성하거나 조정할 때 시스템은 요청된 크기와 실제 크기 사이에 최대 2%의 차이를 허용했습니다. 이 조정으로 볼륨이 사용 가능한 풀 여유 공간에 맞게 조정되었습니다. 결과적으로 역할을 다시 실행할 때 크기가 일치하지 않아 역할이 변경되었다고 잘못 가정했습니다. 이번 릴리스에서는 크기가 작은 차이로 인해 역할이 더 이상 잘못 해석되지 않습니다. 결과적으로 역할이 올바른 상태를 보고합니다.
Jira:RHEL-82825[1]
postfix RHEL 시스템 역할은 IPv6 인터페이스가 비활성화된 경우 자동 감지
기본 구성에서는 postfix inet_interfaces = localhost 설정을 사용하여 IPv4 및 IPv6 인터페이스를 모두 포함하여 localhost 로 확인되는 모든 인터페이스에서 수신 대기하도록 지시합니다. 이번 업데이트 이전에는 호스트에서 IPv6를 비활성화한 경우 문제가 발생했습니다. 이 경우 postfix 역할과 해당 명령줄 툴(예: postconf )에서 오류를 반환했습니다. 전체 역할이 실패했습니다. 이번 릴리스에서는 역할이 IPv6가 비활성화되었는지 확인합니다. 이 경우 postfix 가 IPv4 인터페이스만 사용하도록 inet_protocols = ipv4 를 설정합니다. 결과적으로 postfix 역할은 IPv6가 비활성화된 경우에도 작동합니다.
Jira:RHEL-103889[1]
timesync RHEL 시스템 역할은 더 이상 OPTIONS="-F 2" 기본 설정을 /etc/sysconfig/chronyd에서 제거하지 않음
이번 업데이트 이전에는 chronyd 서비스의 기본 OPTIONS= 설정이 "" 로 교체되었습니다. 그 결과 chronyd 의 보안이 약해 기본 OPTIONS="-F 2" 설정이 제거되었습니다. 이번 릴리스에서는 -F 2 가 OPTIONS 의 기본 설정으로 추가되며 사용자는 이 설정을 재정의하거나 확장할 수 있습니다. 결과적으로 timesync 역할은 이제 사용자 사용자 지정을 허용하면서 올바른 보안 설정을 적용합니다.
Jira:RHEL-88299[1]
rhel-system-roles의 값을 사용하여 커널 옵션 제거 개선
이전 버전에서는 사용자가 키만 제공할 때 key=value로 지정된 커널 부팅 옵션을 제거할 수 없어 원하지 않는 부팅 매개변수와 이름으로 커널 옵션 일관성 없는 관리를 수행할 수 있었습니다. 이번 업데이트를 통해 Cryostatmod_boot_args 함수의 정규식이 값과 올바르게 일치하고 제거되도록 업데이트되었으며 올바른 동작을 확인하기 위해 자동화된 테스트가 추가되었습니다.
결과적으로 key=value로 설정된 경우에도 이름으로 커널 옵션을 안정적으로 제거할 수 있으므로 정확한 구성과 시스템 관리를 개선할 수 있습니다.
Jira:RHEL-101678[1]
GSSAPIIndicators 가 sshd 역할에 추가
Generic Security Services Application Programming Interface(GSS-API) 설정에 대한 새로운 구성 옵션 GSSAPIIndicators 가 RHEL 10에 추가되었습니다. 이번 업데이트에서는 sshd RHEL 시스템 역할에 GSSAPIIndicators 구성 옵션이 추가되었습니다. 결과적으로 RHEL 시스템 역할을 사용하여 RHEL 10 시스템에서 GSSAPIIndicators 를 구성할 수 있습니다.
Jira:RHEL-107049[1]
부트로더 역할은 부울 또는 null 유형 값을 거부합니다.
이번 업데이트 이전에는 value: on 또는 value와 같은 값을 지정할 수 있었습니다. 예, 이러한 값을 "on" 또는 "yes" 문자열로 변환할 것으로 예상합니다. 그러나 대신 YAML은 이를 YAML bool 유형으로 처리하고 문자열 "True" 로 씁니다. 결과적으로 YAML 부울 처리를 인식하지 못한 사용자는 "on" 또는 "off" 와 같은 값을 설정할 수 없었습니다. 이번 업데이트를 통해 부트로더 RHEL 시스템 역할은 부울 또는 null 유형의 값을 거부합니다. 결과적으로 사용자는 부트로더 구성에 쓰기 위해 인용된 문자열로 YAML 부울 유형 값을 입력해야 합니다. Readme이 이 정보로 업데이트됩니다.
Jira:RHEL-107015[1]
Alias 값을 구문 분석할 때 sudo 역할이 더 이상 중단되지 않음
이번 업데이트 이전에는 sudo RHEL 시스템 역할의 regex에서 Cmnd_Alias 와 같은 Alias 값이 등호 = 의 양쪽에 공백을 가질 필요가 없음을 고려하지 않았습니다. 그 결과 regex가 종료되지 않았으며 역할이 중단된 것으로 표시되었습니다. 이번 업데이트를 통해 regex가 sudoers 파일 사양의 필드의 eBNF 정의를 준수하는지 확인합니다. 결과적으로 Alias 값은 공백을 사용하여 올바르게 구문 분석됩니다 =.
Jira:RHEL-106733[1]
여러 사용자를 지정하지 않으면 더 이상 리소스가 잘못된 사용자와 연결됩니다.
이번 업데이트 이전에는 여러 사용자를 관리할 때 __podman_user 및 변수 값을 혼합하여 사용자 데이터 오염이 발생했습니다. 결과적으로 사용자 데이터가 여러 사용자 간에 혼합되어 각 사용자에게 잘못된 구성 파일이 사용되었습니다. 이번 릴리스에서는 __podman_user 및 __podman_user _home_dir__podman_user _ home_dir의 팩트와 변수의 혼합을 방지하여 사용자 데이터를 분리할 수 있습니다. 결과적으로 사용자 데이터가 여러 사용자에 대해 격리되어 리소스 관리 일관성이 향상됩니다.
Jira:RHEL-105095[1]
SELinux 역할은 Ansible 검사 모드에서 정의되지 않은 tempdir 경로로 인해 더 이상 오류를 생성하지 않음
이번 업데이트 이전에는 tempdir 경로가 Ansible 검사 모드에 정의되지 않았으며 __selinux_item.path 가 정의되지 않았습니다. 결과적으로 검사 모드에서 실행하면 selinux RHEL 시스템 역할에 따라 다양한 변수가 정의되지 않은 오류가 발생했습니다. 이번 업데이트를 통해 역할은 tempdir.path 를 정의해야 하는 작업을 건너뛰고 변수가 정의되지 않은 사례를 처리할 수 있습니다. 결과적으로 역할이 검사 모드에서 올바르게 작동합니다.
Jira:RHEL-103575[1]
ha_cluster RHEL 시스템 역할에 필요한 경우 /var/lib/pcsd 디렉터리를 사용할 수 있는지 확인
이번 업데이트 이전에는 pcs 설치 중에 /var/lib/pcsd 디렉터리가 생성되었지만 최신 버전은 systemd 서비스를 사용하여 pcsd 서비스가 시작될 때 이 디렉터리를 생성합니다. 결과적으로 역할이 액세스하려고 할 때 디렉터리가 존재하지 않을 수 있으므로 실행 중 오류 또는 오류가 발생할 수 있습니다.
이번 업데이트를 통해 역할은 명시적으로 /var/lib/pcsd 디렉터리를 사용하기 전에 존재하는지 확인합니다. 결과적으로 디렉터리가 누락되어 런타임 문제가 발생하지 않고 역할 실행의 안정성을 개선합니다.
Jira:RHEL-101663[1]
redhat.rhel_system_roles 컬렉션을 사용하면 호환되지 않는 Ansible 버전에 대한 경고가 더 이상 표시되지 않습니다.
이번 업데이트 이전에는 meta/runtime 파일에 . yml{{requires_ansible: ">=2.15.0"}} 을 지정하지만 RHEL 9에는 ansible-core 2.14가 포함되어 있습니다. 결과적으로 플레이북에서 컬렉션을 사용한 경우 Ansible에서 Collection redhat.rhel_system_roles가 Ansible 버전 2.14.x 경고를 지원하지 않음을 표시했습니다. 이번 업데이트에서는 {{requires_ansible: ">=2.14.0"}}을 사용하도록 파일을 변경합니다. 결과적으로 컬렉션에 더 이상 경고가 표시되지 않습니다.
meta/runtime. yml
Jira:RHEL-94444[1]
SELinux 역할은 커널 SELinux 매개변수를 영구적으로 설정
이번 업데이트 이전에는 SELinux 상태를 비활성화된 상태로 변경할 때 selinux RHEL 시스템 역할이 커널 SELinux 매개변수를 설정하지 않았습니다. 결과적으로 재부팅 시 SELinux 상태 변경이 지속되지 않았습니다. 이번 업데이트를 통해 역할에서 SELinux 상태를 비활성화된 상태로 변경할 때 커널 SELinux 매개 변수가 올바르게 설정됩니다. 결과적으로 재부팅 시 SELinux 상태가 비활성화로 변경되고 비활성화된 상태로 유지됩니다.
Jira:RHEL-93296[1]
systemd 역할은 파일 basename을 사용하여 대상의 경로를 구성합니다.
이번 업데이트 이전에는 사용자가 중첩된 디렉터리 내에서 파일 또는 템플릿 소스를 지정한 경우 systemd RHEL 시스템 역할은 대상 파일의 basename 대신 전체 경로를 사용했습니다. 그 결과 파일과 템플릿이 대상의 동일한 디렉터리 구조에 배치되었으며 systemd 는 지원하지 않습니다. 이번 릴리스에서는 역할은 중첩된 디렉터리의 대상 파일에 basenames를 사용합니다. 결과적으로 사용자는 중첩된 디렉터리를 역할과 함께 사용할 수 있습니다.
ad_integration 역할에 패키지 설치를 위한 유연성 도입
이전 버전에서는 ad_integration 역할은 항상 필요한 패키지(예: realmd,sssd-ad,adcli ) 및 __ad_integration_packages 에 나열된 많은 패키지를 설치하려고 했습니다. 예를 들어 이 역할, 사전baked 이미지 또는 변경 불가능한 시스템 외부의 구성 관리를 통해 외부 시스템이 패키지 관리를 처리하는 환경에서 이 단계는 중복되고 바람직하지 않았습니다.
이번 업데이트를 통해 사용자는 다른 수단을 통해 패키지 설치를 관리할 수 있으며 이 역할만 도메인에 가입하여 유연성을 제공합니다. 주요 개선 사항은 다음과 같습니다.
-
새로운 변수: 역할이 패키지를 설치할지 여부를 제어하기 위해 새로운 부울 변수
ad_integration_manage_packages를 도입했습니다. -
기본값: 기본값은 이전 버전과의 호환성을 보장하기 위해
defaults/main.yml에서true로 설정됩니다. 이 역할을 사용하는 기존 플레이북은 수정 없이 이전처럼 계속 작동합니다. -
조건부 작업:
tasks/main.yml에ad_integration_manage_packages | bool조건을 "필요한 패키지가 설치되어 있는지 확인" 작업에 추가합니다. 이제 이 작업은 플래그가true(기본값)인 경우에만 실행됩니다. -
문서: 목적 및 기본값을 설명하는 새로운
ad_integration_manage_packages변수를 포함하도록README.md를 업데이트합니다.
Jira:RHEL-88314[1]
인증서 변경 후 qdevice 데몬이 자동으로 다시 시작됨
이전 버전에서는 쿼럼 장치 데몬(qnetd)과 클러스터 노드(qdevice) 간의 통신에 사용되는 TLS 인증서를 업데이트한 후 qdevice 데몬이 자동으로 재시작되지 않았습니다. 데몬은 이전 인증서를 계속 사용하므로 쿼럼 장치와의 통신이 실패했습니다.
이번 업데이트를 통해 클러스터 노드의 qdevice 데몬이 인증서가 변경되면 자동으로 다시 시작됩니다. 이렇게 하면 새 인증서가 즉시 로드되고 쿼럼 장치와의 통신이 유지됩니다.
Jira:RHEL-88251[1]
ha_cluster RHEL 시스템 역할은 이제 시스템 전체 HTTP 프록시에서 작동합니다.
이전 버전에서는 시스템 전체 HTTP 프록시가 구성되면 ha_cluster RHEL 시스템 역할이 Unix 소켓을 통해 pcsd 데몬과 로컬 통신에 프록시를 잘못 사용하려고 했습니다. 이로 인해 역할이 실패했습니다.
이번 릴리스에서는 로컬 pcsd 통신의 프록시 사용을 명시적으로 비활성화하도록 역할이 수정되었습니다.
결과적으로 ha_cluster RHEL 시스템 역할은 시스템 전체 HTTP 프록시가 정의된 시스템에서 예상대로 작동합니다.
Jira:RHEL-88241[1]
네트워크 RHEL 시스템 역할에 잘못된 라우팅 규칙 검증으로 인해 더 이상 오류가 표시되지 않음
이번 업데이트 이전에는 네트워크 RHEL 시스템 역할의 검증 부분에서 NM.IPRoutingRule 클래스 대신 최상위 NM 모듈에서 라우팅 규칙 속성을 잘못 확인했습니다. 이로 인해 검증 실패와 역할에 오류가 표시되었습니다. 이번 업데이트를 통해 역할은 API를 올바르게 사용하고 더 이상 잘못된 검증 오류가 표시되지 않습니다.
TOML 파일에서 부울 옵션 값이 올바르게 렌더링됩니다.
이전에는 포맷터 코드가 부울 값을 올바른 문자열 표현으로 변환하지 않았기 때문에 부울 옵션이 잘못 처리되었습니다. 이번 수정을 통해 부울 값이 소문자 문자열로 올바르게 변환되어 TOML 파일에서 올바른 렌더링 및 처리를 보장합니다.
TOML 파일에서 부울 옵션이 올바르게 작성 및 처리됨
이번 업데이트 이전에는 TOML 형식으로 형식의 코드가 부울 값을 올바른 문자열 표현으로 변환하지 않았기 때문에 부울 옵션이 올바르게 처리되지 않았습니다.
이번 업데이트를 통해 부울 옵션을 문자열로 변환한 다음 소문자(올바른 TOML 부울 형식)로 변환합니다. 이렇게 하면 TOML 파일이 부울 옵션을 올바르게 작성하고 처리할 수 있습니다.
인증 및 구성 파일을 관리할 때 podman RHEL 시스템 역할은 changed: true 를 보고하지 않습니다.
이번 업데이트 이전에는 다양한 구성 및 인증 파일의 공통 상위 경로에 두 개의 다른 모드를 사용했기 때문에 인증 및 구성 파일을 모두 관리하는 경우 podman RHEL 시스템 역할이 상위 경로 모드를 변경했습니다.
이번 수정을 통해 상위 경로에 일관된 모드를 사용하므로 역할이 changed: true 불필요하게 보고되지 않습니다.
UNREACHABLE 오류와 함께 podman 역할이 실패하지 않음
이전에는 podman 역할이 루트가 아닌 사용자에 대해 linger를 비활성화할 때 사용자 상태가 닫힐 때까지 기다리지 않았습니다. 그런 다음 podman 역할이 systemd-logind 를 다시 시작하여 강제로 취소합니다. 일부 시스템에서 root에 대한 세션을 종료하는 타이머가 시작되어 sshd 세션이 종료되고 UNREACHABLE 오류와 함께 Ansible 플레이가 실패합니다.
이번 수정을 통해 이제 시스템은 사용자가 닫기 상태가 될 때까지 훨씬 더 오래 기다린 후 반드시 필요한 경우에만 로그인을 다시 시작합니다. 결과적으로 리소스를 제거할 때 UNREACHABLE 오류로 인해 역할이 실패하지 않습니다.
네트워크 RHEL 시스템 역할에서 더 강력한 인터페이스 식별 방법을 사용
이번 업데이트 이전에는 네트워크 인터페이스에 인터페이스 이름과 MAC 주소가 모두 제공되면 검증 프로세스에서 인터페이스 이름과 MAC 주소를 사용하여 두 개의 별도의 조회를 수행했습니다. MAC 주소 조회가 영구적인 하드웨어 MAC 주소가 아닌 인터페이스의 현재 MAC 주소와 일치할 수 있기 때문에 검증 오류가 발생할 수 있습니다.
이번 업데이트를 통해 검증 논리가 개선되었습니다. 이제 네트워크 역할에서 인터페이스 이름을 유일한 식별자로 사용하여 네트워크 장치를 찾습니다. 그런 다음 해당 인터페이스와 연결된 MAC 주소를 검색하여 검증을 위해 사용자 제공 MAC 주소와 비교합니다. 이 방법은 인터페이스 이름이 고유한 커널 식별자이므로 임시 MAC 주소 변경으로 인한 불일치를 방지합니다.
systemd 역할 unmasks 및 start units in a single run
이번 업데이트 이전에는 역할이 장치를 먼저 마스킹할 수 없기 때문에 단위가 마스킹되었을 때 서비스를 활성화하고 시작하지 못했습니다. 이로 인해 사용자가 역할을 두 번 실행해야 했습니다. 이번 릴리스에서는 systemd 역할이 마스킹을 올바르게 해제하고 서비스를 시작하여 이중 실행의 필요성을 제거합니다.