19.8. IBM Z의 가상 머신에 암호화 공동 프로세서 연결
IBM Z 호스트의 VM(가상 머신)에서 하드웨어 암호화를 사용하려면 암호화 coprocessor 장치에서 중재된 장치를 생성하여 의도한 VM에 할당합니다. 자세한 지침은 아래를 참조하십시오.
사전 요구 사항
- 호스트가 IBM Z 하드웨어에서 실행되고 있습니다.
암호화 coprocessor는 장치 할당과 호환됩니다. 이를 확인하려면 coprocessor
유형이CEX4이상으로 나열되어 있는지 확인합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow vfio_ap커널 모듈이 로드됩니다. 확인하려면 다음을 사용합니다.lsmod | grep vfio_ap
# lsmod | grep vfio_ap vfio_ap 24576 0 [...]Copy to Clipboard Copied! Toggle word wrap Toggle overflow 모듈을 로드하려면 다음을 사용합니다.
modprobe vfio_ap
# modprobe vfio_apCopy to Clipboard Copied! Toggle word wrap Toggle overflow s390utils버전은ap처리를 지원합니다.lszdev --list-types
# lszdev --list-types ... ap Cryptographic Adjunct Processor (AP) device ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow
프로세스
VM에 할당할 장치의 10진수 값을 가져옵니다. 예를 들어 장치
05.0004및05.00ab의 경우 :echo "obase=10; ibase=16; 04" | bc echo "obase=10; ibase=16; AB" | bc
# echo "obase=10; ibase=16; 04" | bc 4 # echo "obase=10; ibase=16; AB" | bc 171Copy to Clipboard Copied! Toggle word wrap Toggle overflow 호스트에서 장치를
vfio-ap드라이버에 다시 할당합니다.chzdev -t ap apmask=-5 aqmask=-4,-171
# chzdev -t ap apmask=-5 aqmask=-4,-171Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고장치를 영구적으로 할당하려면
-p플래그를 사용합니다.암호화 장치가 올바르게 다시 할당되었는지 확인합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 도메인 대기열의 DRIVER 값이
vfio_ap로 변경되면 재할당이 성공했습니다.새 미디어 장치를 정의하는 XML 스니펫을 만듭니다.
다음 예제에서는 영구 중재 장치를 정의하고 큐를 할당하는 방법을 보여줍니다. 특히 이 예제의
vfio_ap.xmlXML 스니펫에서는 도메인 어댑터0x05, 도메인 대기열0x0004및0x00ab, 제어 도메인0x00ab을 중재 장치에 할당합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow vfio_ap.xmlXML 스니펫에서 새 중재 장치를 만듭니다.virsh nodedev-define vfio_ap.xml
# virsh nodedev-define vfio_ap.xml Node device 'mdev_8f9c4a73_1411_48d2_895d_34db9ac18f85_matrix' defined from 'vfio_ap.xml'Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 단계에서 생성한 미디어 장치를 시작합니다. 이 경우
mdev_8f9c4a73_1411_48d2_895d_34db9ac18f85_matrix입니다.virsh nodedev-start mdev_8f9c4a73_1411_48d2_895d_34db9ac18f85_matrix
# virsh nodedev-start mdev_8f9c4a73_1411_48d2_895d_34db9ac18f85_matrix Device mdev_8f9c4a73_1411_48d2_895d_34db9ac18f85_matrix startedCopy to Clipboard Copied! Toggle word wrap Toggle overflow 구성이 올바르게 적용되었는지 확인합니다.
cat /sys/devices/vfio_ap/matrix/mdev_supported_types/vfio_ap-passthrough/devices/669d9b23-fe1b-4ecb-be08-a2fabca99b71/matrix 05.0004 05.00ab
# cat /sys/devices/vfio_ap/matrix/mdev_supported_types/vfio_ap-passthrough/devices/669d9b23-fe1b-4ecb-be08-a2fabca99b71/matrix 05.0004 05.00abCopy to Clipboard Copied! Toggle word wrap Toggle overflow 이전에
vfio-ap에 할당한 대기열의 숫자 값이 출력에 포함된 경우 프로세스가 성공적으로 수행되었습니다.중앙 집중식 장치를 VM에 연결합니다.
생성한 중재 장치의 UUID를 표시하고 다음 단계를 위해 저장합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 암호화 카드 중재 장치에 대한 XML 파일을 만들고 엽니다. 예를 들면 다음과 같습니다.
vim crypto-dev.xml
# vim crypto-dev.xmlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 행을 파일에 추가하고 저장합니다.
uuid값을 단계a에서 얻은 UUID로 바꿉니다.<hostdev mode='subsystem' type='mdev' managed='no' model='vfio-ap'> <source> <address uuid='8f9c4a73-1411-48d2-895d-34db9ac18f85'/> </source> </hostdev><hostdev mode='subsystem' type='mdev' managed='no' model='vfio-ap'> <source> <address uuid='8f9c4a73-1411-48d2-895d-34db9ac18f85'/> </source> </hostdev>Copy to Clipboard Copied! Toggle word wrap Toggle overflow XML 파일을 사용하여 미디어 장치를 VM에 연결합니다. 예를 들어
crypto-dev.xml파일에 정의된 장치를 실행 중인testguest1VM에 영구적으로 연결하려면 다음을 수행합니다.virsh attach-device testguest1 crypto-dev.xml --live --config
# virsh attach-device testguest1 crypto-dev.xml --live --configCopy to Clipboard Copied! Toggle word wrap Toggle overflow --live옵션은 부팅 간 지속성 없이 실행 중인 VM에만 장치를 연결합니다.--config옵션을 사용하면 구성을 영구적으로 변경합니다.--config옵션만으로는 장치를 종료 VM에 연결할 수 있습니다.각 UUID는 한 번에 하나의 VM에만 할당할 수 있습니다.
검증
게스트 운영 체제가 할당된 암호화 장치를 감지하는지 확인합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 게스트 운영 체제의 이 명령의 출력은 사용 가능한 동일한 암호화 coprocessor 장치가 있는 호스트 논리 파티션에서와 동일합니다.
게스트 운영 체제에서 제어 도메인이 암호화 장치에 성공적으로 할당되었는지 확인합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow lszcrypt -d C가 암호화 장치 매트릭스에U및B교집합을 표시하는 경우 제어 도메인 할당에 성공했습니다.