6장. kubevirt-controller 및 virt-launcher에 부여된 추가 보안 권한
kubevirt-controller
및 virt-launcher Pod에는 일반적인 Pod 소유자 외에 일부 SELinux 정책 및 보안 컨텍스트 제약 조건 권한이 부여됩니다. 가상 머신은 이러한 권한을 통해 OpenShift Virtualization 기능을 사용할 수 있습니다.
6.1. virt-launcher Pod에 대해 확장된 SELinux 정책
virt-launcher
Pod에 대한 container_t
SELinux 정책은 OpenShift Virtualization의 필수 기능을 사용하도록 확장됩니다.
네트워크 멀티 큐에는 다음 정책이 필요하므로 사용 가능한 vCPU 수가 증가함에 따라 네트워크 성능을 확장할 수 있습니다.
-
allow process self (tun_socket (relabelfrom relabelto attach_queue))
-
다음 정책을 통해
virt-launcher
는/proc/cpuinfo
및/proc
/uptime
을 포함하여 /proc 디렉토리 아래에 있는 파일을 읽을 수 있습니다.-
allow process proc_type (file (getattr open read))
-
다음 정책을 사용하면
libvirtd
가 네트워크 관련 디버그 메시지를 중계할 수 있습니다.allow process self (netlink_audit_socket (nlmsg_relay))
참고이 정책이 없으면 네트워크 디버그 메시지를 릴레이하는 시도가 차단됩니다. 이렇게 하면 노드의 감사 로그를 SELinux 거부로 채울 수 있습니다.
다음 정책을 사용하면
libvirtd
가 대규모 페이지를 지원하는 데 필요한hugetblfs
에 액세스할 수 있습니다.-
allow process hugetlbfs_t (dir (add_name create write remove_name rmdir setattr))
-
allow process hugetlbfs_t (file (create unlink))
-
다음 정책을 통해
virtiofs
가 파일 시스템을 마운트하고 NFS에 액세스할 수 있습니다.-
allow process nfs_t(dir(mounton))
-
allow process proc_t (dir) (mounton)
-
allow process proc_t (filesystem (mount unmount))
-