diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/1-\345\256\211\350\243\205CSV\350\275\257\344\273\266.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/1-\345\256\211\350\243\205CSV\350\275\257\344\273\266.md"
index e9db34968be0f40a6db46bcb481642144576909d..ddd8065dd106571b7086b00f0291e4c516e22cb8 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/1-\345\256\211\350\243\205CSV\350\275\257\344\273\266.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/1-\345\256\211\350\243\205CSV\350\275\257\344\273\266.md"
@@ -1,4 +1,9 @@
-安装CSV软件之前,请先安装内核并导入通用安全证书。
+
+安装CSV软件之前,请先准备系统环境并导入通用安全证书。
+
+请参考[1-1-安装操作系统和内核](https://openanolis.cn/sig/Hygon-Arch/doc/824231181808631655)准备系统环境。
+
+请参考[1-2-导入通用安全证书](https://openanolis.cn/sig/Hygon-Arch/doc/865622274698254162)导入通用安全证书。
## 安装依赖软件
@@ -7,16 +12,16 @@ $ sudo /opt/hygon/csv/install_csv_sw.sh
```
## 安装qemu
-
+**麒麟系统不需要该步骤,使用系统自带即可,kata 测试不需要该步骤***
```
$ git clone https://gitee.com/anolis/hygon-qemu.git
$ cd hygon-qemu/
$ sudo /opt/hygon/csv/build_qemu.sh
```
-**麒麟系统不需要该步骤,使用系统自带即可**
-## 安装grub
+## 安装grub
+**麒麟系统不需要该步骤,使用系统自带即可,kata 测试不需要该步骤***
```
$ wget https://ftp.gnu.org/gnu/grub/grub-2.06.tar.gz
$ tar -xvf grub-2.06.tar.gz
@@ -25,6 +30,8 @@ $ sudo /opt/hygon/csv/build_grub.sh
```
## 安装edk2
+**麒麟系统不需要该步骤,使用系统自带即可,kata 测试不需要该步骤**
+
**编译依赖安装grub章节**
```
$ git clone https://gitee.com/anolis/hygon-edk2.git
@@ -43,14 +50,14 @@ $ sudo ./build_devkit.sh
```
## 安装虚拟机内核
+**kata 测试不需要该步骤**
+
### 运行虚拟机
```
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:0 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0
-麒麟系统qemu 网络不支持user 模式,需要使用如下命令:
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:0 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0
+$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:0 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile= -nographic
```
### 安装虚拟机内核
-虚拟机内核使用主机编译好的内核,*vncviewer localhost:0* 登录虚拟机,虚拟机账号为root,密码为root。
+虚拟机内核使用主机编译好的内核,登录虚拟机,虚拟机账号为root,密码为root。
```
# dhclient
# scp host@hostip:/opt/hygon/kernel.tgz ./
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/2-\346\265\213\350\257\225\344\270\273\346\234\272\345\206\205\345\255\230\345\212\240\345\257\206.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/2-\346\265\213\350\257\225\344\270\273\346\234\272\345\206\205\345\255\230\345\212\240\345\257\206.md"
index e4a746e4a9be7c8f90402b496321a55baa2c3270..73a4aee8507b1f1811ec9cd1acfefc4e79a3ac12 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/2-\346\265\213\350\257\225\344\270\273\346\234\272\345\206\205\345\255\230\345\212\240\345\257\206.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/2-\346\265\213\350\257\225\344\270\273\346\234\272\345\206\205\345\255\230\345\212\240\345\257\206.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装内核。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 功能描述
主机内存加密技术用来加密主机内存,主机写内存数据时,如果页表项的加密位C bit为1,CPU会自动对数据加密后再写入内存;如果页表项的C bit为0,CPU不会进行加密。主机操作系统通过将重要数据的页表项C bit设置为1,可以实现数据加密后保存在内存中,保护数据的安全性。
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/1-\346\265\213\350\257\225\345\206\205\345\255\230\345\212\240\345\257\206.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/1-\346\265\213\350\257\225\345\206\205\345\255\230\345\212\240\345\257\206.md"
index 7b985c4f6ac34aa58b13d287140091e8537a19a6..85a63391d70ee25a8d8f8705f07d63f1425bb14b 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/1-\346\265\213\350\257\225\345\206\205\345\255\230\345\212\240\345\257\206.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/1-\346\265\213\350\257\225\345\206\205\345\255\230\345\212\240\345\257\206.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装CSV软件。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 功能描述
CSV技术通过加密虚拟机的内存来保护虚拟机数据的安全性,每个CSV虚拟机使用不同的密钥,主机和其他虚拟机都不能访问当前CSV虚拟机的内存数据,本文描述了测试CSV虚拟机功能的方法。
@@ -9,16 +9,12 @@ CSV技术通过加密虚拟机的内存来保护虚拟机数据的安全性,
运行普通虚拟机。
```
-$ sudo qemu-system-x86_64 -name normal-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:1111,server,nowait -vnc localhost:0
+$ sudo qemu-system-x86_64 -name normal-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:1111,server,nowait -vnc 0.0.0.0:0 -nographic
```
-虚拟机启动后,打开新终端使用vncviewer登陆虚拟机,用户名为root,密码为root。
+虚拟机启动后,登陆虚拟机,用户名为root,密码为root。
-```
-$ vncviewer localhost:0
-```
-
-保存虚拟机的内存数据到文件。
+打开新终端,保存虚拟机的内存数据到文件。
```
$ telnet 127.0.0.1 1111
@@ -32,6 +28,7 @@ $ { "execute": "pmemsave", "arguments": {"val": 0, "size": 256, "filename": "nor
$ quit
$ hexdump -v normal.txt
```
+**normal.txt 文件在运行虚拟机命令的目录下**
普通虚拟机的内存数据如下图,数据是明文。
@@ -45,16 +42,12 @@ $ hexdump -v normal.txt
运行CSV虚拟机。
```
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0
+$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -nographic
```
-虚拟机启动后,打开新终端使用vncviewer登陆虚拟机,用户名为root,密码为root。
+虚拟机启动后,登陆虚拟机,用户名为root,密码为root。
-```
-$ vncviewer localhost:1
-```
-
-保存虚拟机的内存数据到文件。
+保打开新终端,保存虚拟机的内存数据到文件。
```
$ telnet 127.0.0.1 2222
@@ -68,6 +61,7 @@ $ { "execute": "pmemsave", "arguments": {"val": 0, "size": 256, "filename": "csv
$ quit
$ hexdump -v csv.txt
```
+**csv.txt 文件在运行虚拟机命令的目录下**
CSV虚拟机的内存数据如下图,数据是密文。
@@ -83,21 +77,15 @@ CSV虚拟机的内存数据如下图,数据是密文。
运行CSV虚拟机。
```
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0
+$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile= -nographic
```
-虚拟机启动后,打开新终端使用vncviewer登陆虚拟机,用户名为root,密码为root。
-
-```
-$ vncviewer localhost:1
-```
+虚拟机启动后,登陆虚拟机,用户名为root,密码为root。
-在虚拟机中使用scp命令从主机拷贝远程认证测试程序,假设主机的用户名是user,在虚拟机中运行测试程序get-attestation生成认证报告。
+在虚拟机中使用scp命令从主机拷贝远程认证测试程序,假设主机的用户名是user,host_ip 为主机ip,在虚拟机中运行测试程序get-attestation生成认证报告。
```
# dhclient
-# host_ip=`ip route show | awk 'NR == 2' | awk -F " " '{print $3}'`
-# echo ${host_ip}
# scp user@${host_ip}:/opt/hygon/csv/attestation/get-attestation ./
# ./get-attestation
```
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/2-\346\265\213\350\257\225\345\257\206\351\222\245\345\260\201\345\215\260.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/2-\346\265\213\350\257\225\345\257\206\351\222\245\345\260\201\345\215\260.md"
index 28897da61f50535bb835bc5a66997348f65e81fc..9b2dcf9cd9945d4216b501da1fa7bc8edf5f9fff 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/2-\346\265\213\350\257\225\345\257\206\351\222\245\345\260\201\345\215\260.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/2-\346\265\213\350\257\225\345\257\206\351\222\245\345\260\201\345\215\260.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装CSV软件。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
**注:麒麟系统不支持**
@@ -16,12 +16,12 @@ $ sudo ./sealing_key.sh
### 启动CSV虚拟机
**该功能支持需要使用hygon-edk2 编译出的OVMF.fd 文件而不是OVMF_CODE.fd 文件**
```
-$ sudo qemu-system-x86_64 --enable-kvm -cpu host -smp 4 -m 4G -kernel /opt/hygon/csv/vmlinuz -initrd /opt/hygon/csv/initramfs.img -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF.fd,readonly=on -object sev-guest,id=sev0,policy=1,cbitpos=47,reduced-phys-bits=5,kernel-hashes=on,session-file=launch_blob.bin,dh-cert-file=guest_owner_dh.cert -machine memory-encryption=sev0 -vnc localhost:1 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0
+$ sudo qemu-system-x86_64 --enable-kvm -cpu host -smp 4 -m 4G -kernel /opt/hygon/csv/vmlinuz -initrd /opt/hygon/csv/initramfs.img -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF.fd,readonly=on -object sev-guest,id=sev0,policy=1,cbitpos=47,reduced-phys-bits=5,kernel-hashes=on,session-file=launch_blob.bin,dh-cert-file=guest_owner_dh.cert -machine memory-encryption=sev0 -vnc 0.0.0.0:1 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0
```
### 连接CSV虚拟机
```
-$ vncviewer localhost:1
+$ vncviewer 0.0.0.0:1
```
**dhclient 可以获取虚拟机ip**
### 在CSV虚拟机中获取封印密钥
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/3-\346\265\213\350\257\225\345\205\250\347\233\230\345\212\240\345\257\206.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/3-\346\265\213\350\257\225\345\205\250\347\233\230\345\212\240\345\257\206.md"
index 550f54f4a2a99b13f98be4c64313fbd546e370f3..ceac62f91e6a75bea41eee8ecdfd16fc73941d4a 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/3-\346\265\213\350\257\225\345\205\250\347\233\230\345\212\240\345\257\206.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/3-\346\265\213\350\257\225\345\205\250\347\233\230\345\212\240\345\257\206.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装CSV软件。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
**注:麒麟系统不支持**
@@ -15,7 +15,7 @@
$ cd /opt/hygon/csv/
$ wget http://mirrors.163.com/ubuntu-releases/18.04/ubuntu-18.04.6-desktop-amd64.iso
$ qemu-img create -f qcow2 ubuntu.qcow2 10g
-$ sudo qemu-system-x86_64 -enable-kvm -cpu host -smp 4 -m 4096 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -hda ./ubuntu.qcow2 -boot d -cdrom ./ubuntu-18.04.6-desktop-amd64.iso -vnc localhost:1
+$ sudo qemu-system-x86_64 -enable-kvm -cpu host -smp 4 -m 4096 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -hda ./ubuntu.qcow2 -boot d -cdrom ./ubuntu-18.04.6-desktop-amd64.iso -vnc 0.0.0.0:1
```
安装完成后重启虚拟机,安装过程中加密了虚拟机的数据分区/dev/sda3,接下来加密启动分区/dev/sda2并替换虚拟机中的grub。
由于虚拟机的分区/dev/sda3已经被加密,启动过程中需要输入密码abc进行解密,启动后在虚拟机中使用scp命令将主机中的文件拷贝到虚拟机,这里假设主机的用户名为test,IP地址为192.168.122.1。
@@ -33,4 +33,4 @@ disk_encryption.sh默认使用abc,如果密码正确,虚拟机会正常启动
$ cd /opt/hygon/csv
$ sudo ./disk_encryption.sh
```
-vncviewer localhost:1 登录虚拟机看虚拟机能否正常启动
+vncviewer 0.0.0.0:1 登录虚拟机看虚拟机能否正常启动
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/4-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/4-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md"
index 4fa541550867152272d17145a57a8bb7ff9b76b8..88cbffb19fe0b2c60bade14cc48bd94ab4e03a9b 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/4-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/4-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装CSV软件。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 功能描述
某些应用场景需要在CSV虚拟机中运行图像识别、机器学习等算法,这些场景下使用DCU加速卡可以极大地提高计算性能,CSV虚拟机支持设备直通,可以将DCU卡直通给CSV虚拟机使用。
@@ -7,9 +7,7 @@
### 运行CSV虚拟机
```
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0
-麒麟系统qemu网络不支持user模式,需要使用如下命令:
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0
+$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile= -nographic
```
### 在虚拟机中安装DCU软件栈
@@ -43,9 +41,7 @@ $ sudo -s
### 运行直通DCU卡的CSV虚拟机
```
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -device vfio-pci,host=03:00.0 -fw_cfg name=opt/ovmf/X-PciMmio64Mb,string=65536
-麒麟系统qemu网络不支持user模式,需要使用如下命令:
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -device vfio-pci,host=03:00.0 -fw_cfg name=opt/ovmf/X-PciMmio64Mb,string=65536 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0
+$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 10240 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:1 -object sev-guest,id=sev0,policy=0x1,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -device vfio-pci,host=03:00.0 -fw_cfg name=opt/ovmf/X-PciMmio64Mb,string=65536 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile= -nographic
```
### 在CSV虚拟机中运行DCU测试程序
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/5-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\350\277\201\347\247\273.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/5-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\350\277\201\347\247\273.md"
index 9ddf0e21c1b75b92c72696e4e653422fdafdd94f..c70393e8bec4b455ba9aad5e295fe10a5b71d278 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/5-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\350\277\201\347\247\273.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/5-\346\265\213\350\257\225CSV\350\231\232\346\213\237\346\234\272\350\277\201\347\247\273.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装CSV软件。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 功能描述
CSV 虚拟机支持在线迁移,本文档描述CSV虚拟机迁移测试步骤
@@ -17,7 +17,8 @@ sudo qemu-system-x86_64 \
-vnc 0.0.0.0:0 \
-device virtio-blk-pci,scsi=off,drive=drive0,disable-legacy=on,iommu_platform=on \
-drive file=/opt/hygon/csv/vm.qcow2,if=none,id=drive0 \
- -qmp tcp:localhost:4444,server,nowait
+ -qmp tcp:localhost:4444,server,nowait \
+ -nographic
```
### 迁移目标端启动虚拟机
@@ -35,7 +36,8 @@ sudo qemu-system-x86_64 \
-device virtio-blk-pci,scsi=off,drive=drive0,disable-legacy=on,iommu_platform=on \
-drive file=/opt/hygon/csv/vm.qcow2,if=none,id=drive0 \
-qmp tcp:localhost:4445,server,nowait \
- -incoming tcp:127.0.0.1:6666
+ -incoming tcp:127.0.0.1:6666 \
+ -nographic
```
注:这里测试是本机迁移,设置ip为**127.0.0.1**,跨机迁移ip需要设置对应机器的ip地址
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/6-\346\265\213\350\257\225CSV2\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/6-\346\265\213\350\257\225CSV2\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md"
index c2d79af62dd74314f609df42b5fecc1dfa38e647..0d8a99653d828dee5e1b00e39a768e978f4266c9 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/6-\346\265\213\350\257\225CSV2\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/6-\346\265\213\350\257\225CSV2\350\231\232\346\213\237\346\234\272\347\233\264\351\200\232DCU.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装CSV软件。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 功能描述
某些应用场景需要在CSV2虚拟机中运行图像识别、机器学习等算法,这些场景下使用DCU加速卡可以极大地提高计算性能,CSV2虚拟机支持设备直通,可以将DCU卡直通给CSV2虚拟机使用。
@@ -7,9 +7,7 @@
### 运行CSV2虚拟机
```
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0
-麒麟系统qemu网络不支持user模式,需要使用如下命令:
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile=
+$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile= -nopraghic
```
### 在虚拟机中安装DCU软件栈
@@ -43,9 +41,7 @@ $ sudo -s
### 运行直通DCU卡的CSV2虚拟机
```
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -device vfio-pci,host=03:00.0 -fw_cfg name=opt/ovmf/X-PciMmio64Mb,string=65536
-麒麟系统qemu网络不支持user模式,需要使用如下命令:
-$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -device vfio-pci,host=03:00.0 -fw_cfg name=opt/ovmf/X-PciMmio64Mb,string=65536 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile=
+$ sudo qemu-system-x86_64 -name csv-vm --enable-kvm -cpu host -m 10240 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -device vfio-pci,host=03:00.0 -fw_cfg name=opt/ovmf/X-PciMmio64Mb,string=65536 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile= -nopraghic
```
### 在CSV2虚拟机中运行DCU测试程序
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/7-\345\220\257\345\212\250CSV3\345\212\240\345\257\206\350\231\232\346\213\237\346\234\272.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/7-\345\220\257\345\212\250CSV3\345\212\240\345\257\206\350\231\232\346\213\237\346\234\272.md"
index 77df2023443549d5d58f255964c557ad73c43978..51bab9e1c87045a0486062ca6d2edfdf86d1f752 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/7-\345\220\257\345\212\250CSV3\345\212\240\345\257\206\350\231\232\346\213\237\346\234\272.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/7-\345\220\257\345\212\250CSV3\345\212\240\345\257\206\350\231\232\346\213\237\346\234\272.md"
@@ -1,4 +1,4 @@
-测试之前,请先[安装CSV软件](../1-安装CSV软件.md)。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 启动CSV3加密虚拟机
@@ -9,7 +9,7 @@
```
$ sudo /opt/hygon/setup_csv3_memory.sh
```
-> setup_csv3_memory.sh脚本会在kernel启动参数cmdline中配置“csv_mem_percentage=50“,表示系统内存的50%可用于CSV3安全内存,CSV3虚拟机内存总量不能超过主机预留的CMA内存量。
+> setup_csv3_memory.sh脚本会在kernel启动参数cmdline中配置“csv_mem_percentage=50“,表示系统内存的50%可用于CSV3安全内存,CSV3虚拟机内存总量不能超过主机预留的CMA内存量。
> 当需要启动的所有CSV3虚拟机内存总量较大时,可以调整kernel启动参数cmdline中csv_mem_percentage值大小,csv_mem_percentage最大为80,表示最多配置主机80%的内存作为CMA内存。
重新重启主机系统。
@@ -17,13 +17,10 @@ $ sudo /opt/hygon/setup_csv3_memory.sh
#### 运行CSV3加密虚拟机。
```
-$ sudo qemu-system-x86_64 -name csv3-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:0 -object sev-guest,id=sev0,policy=0x45,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0
+$ sudo qemu-system-x86_64 -name csv3-vm --enable-kvm -cpu host -m 6114 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:0 -object sev-guest,id=sev0,policy=0x45,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -nographic
```
-虚拟机启动后,打开新终端使用vncviewer登陆虚拟机,用户名为root,密码为root。
+虚拟机启动后,登陆虚拟机,用户名为root,密码为root。
-```
-$ vncviewer localhost:0
-```
在虚拟机终端运行
```
# dmesg | grep "HYGON CSV"
@@ -35,5 +32,5 @@ $ vncviewer localhost:0
HYGON CSV2
HYGON CSV3
```
-表示虚拟机为CSV3加密虚拟机。
-关闭虚拟机。
\ No newline at end of file
+表示虚拟机为CSV3加密虚拟机。
+关闭虚拟机。
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/8-\346\265\213\350\257\225CSV2\345\257\204\345\255\230\345\231\250\345\212\240\345\257\206.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/8-\346\265\213\350\257\225CSV2\345\257\204\345\255\230\345\231\250\345\212\240\345\257\206.md"
index 8344ed17eb3ba2df6bc74d608d045067a076d8e8..6bc11c5b855c3894e93d0964eee965b120a521e7 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/8-\346\265\213\350\257\225CSV2\345\257\204\345\255\230\345\231\250\345\212\240\345\257\206.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/3-\350\231\232\346\213\237\346\234\272/8-\346\265\213\350\257\225CSV2\345\257\204\345\255\230\345\231\250\345\212\240\345\257\206.md"
@@ -1,4 +1,4 @@
-测试之前,请先安装CSV软件。
+测试之前,请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 功能描述
3号CPU开始支持CSV2安全虚拟化功能,在CSV技术加密虚拟机内存的基础上,CSV2技术增加了虚拟机寄存器加密的功能,主机不能访问或者篡改CSV2虚拟机的寄存器。
@@ -18,22 +18,14 @@ $ sudo /opt/hygon/csv/build_csv2_kernel.sh
运行普通虚拟机。
```
-$ sudo qemu-system-x86_64 -name normal-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:1111,server,nowait -vnc localhost:0
-麒麟系统qemu 网络不支持user 模式,需要使用如下命令:
-$ sudo qemu-system-x86_64 -name normal-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:1111,server,nowait -vnc localhost:0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0
-```
-虚拟机启动后,打开新终端使用vncviewer登陆虚拟机,用户名为root,密码为root。
-```
-$ vncviewer localhost:0
+$ sudo qemu-system-x86_64 -name normal-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:1111,server,nowait -vnc 0.0.0.0:0 -netdev bridge,br=virbr0,id=net0 -device virtio-net-pci,netdev=net0,romfile= -nopraghic
```
+虚拟机启动后,登陆虚拟机,用户名为root,密码为root。
### 升级虚拟机内核
假设主机的用户名为user
```
# dhclient
-# host_ip=`ip route show | awk 'NR == 2' | awk -F " " '{print $3}'`
-# echo ${host_ip}
-麒麟系统需要到主机查看主机host_ip
# scp user@${host_ip}:/opt/hygon/csv/kernel.tgz ./
# scp user@${host_ip}:/opt/hygon/csv/vm_kernel_install.sh ./
# ./vm_kernel_install.sh
@@ -45,9 +37,6 @@ $ vncviewer localhost:0
```
# dhclient
-# host_ip=`ip route show | awk 'NR == 2' | awk -F " " '{print $3}'`
-# echo ${host_ip}
-麒麟系统需要到主机查看主机host_ip
# scp user@${host_ip}:/opt/hygon/csv/csv2-reg-test/csv2_reg_test ./
# chmod 777 csv2_reg_rest
# ./csv2_reg_rest
@@ -77,12 +66,10 @@ $ sudo -s
### 运行CSV2虚拟机
```
-$ sudo qemu-system-x86_64 -name csv2-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc localhost:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0
-```
-虚拟机启动后,打开新终端使用vncviewer登陆虚拟机。
-```
-$ vncviewer localhost:1
+$ sudo qemu-system-x86_64 -name csv2-vm --enable-kvm -cpu host -m 2048 -hda /opt/hygon/csv/vm.qcow2 -drive if=pflash,format=raw,unit=0,file=/opt/hygon/csv/OVMF_CODE.fd,readonly=on -qmp tcp:127.0.0.1:2222,server,nowait -vnc 0.0.0.0:1 -object sev-guest,id=sev0,policy=0x5,cbitpos=47,reduced-phys-bits=5 -machine memory-encryption=sev0 -nopraghic
```
+虚拟机启动后,登陆虚拟机。
+
### 运行CSV2虚拟机寄存器测试程序
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/1-\347\216\257\345\242\203\346\220\255\345\273\272.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/1-\347\216\257\345\242\203\346\220\255\345\273\272.md"
index 493f2ac06c993017ec5b608db23e1d9d4aab51ab..2eb68d1608b5726495c1eb69e79daf70ffff7fdd 100644
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/1-\347\216\257\345\242\203\346\220\255\345\273\272.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/1-\347\216\257\345\242\203\346\220\255\345\273\272.md"
@@ -6,7 +6,7 @@
### 安装系统并更新内核
-请参考[1-安装操作系统和内核](https://openanolis.cn/sig/Hygon-Arch/doc/824231181808631655)安装ubuntu20.04,并升级内核到5.10。
+请参考[2-1-安装CSV软件](https://openanolis.cn/sig/Hygon-Arch/doc/865622260278236994?lang=zh)准备软件环境。
## 安装机密容器组件
@@ -53,32 +53,7 @@ export KUBECONFIG=/etc/kubernetes/admin.conf
### 一、一键安装脚本的介绍
-#### 1.1 安装依赖
-
-安装机密容器部署及测试过程中,所依赖的软件
-
-```
-apt-get update
-apt-get install -y apt-transport-https ca-certificates curl \
- gnupg lsb-release zip
-
-# used by simple-kbs
-apt install -y mysql-client jq
-
-# used by encrypting container images.
-# For ubuntu 20.04 use static-build skopeo
-# For ubuntu 20.10 and above, use apt isntall skopeo.
-cd /opt/hygon/csv/confidential-containers/pkg
-install -D skopeo /usr/bin/skopeo
-skopeo -v
-
-# used by signing container images.
-cd /opt/hygon/csv/confidential-containers/pkg
-# download from https://github.com/sigstore/cosign/releases
-dpkg -i cosign_2.0.2_amd64.deb
-```
-
-#### 1.2 加载必要的模块
+#### 1.1 加载必要的模块
将以下模块设置为系统预加载
@@ -91,10 +66,14 @@ vhost-vsock
vhost-net
EOF
-modprobe br_netfilter vfio-pci vhost-vsock vhost-net
+modprobe br_netfilter
+modprobe vfio-pci
+modprobe vhost-vsock
+modprobe vhost-net
+
```
-#### 1.3 权限设置
+#### 1.2 权限设置
关闭swap;开启ip转发功能
@@ -110,34 +89,35 @@ EOF
sysctl --system
```
-#### 1.4 安装docker
-
-```
-mkdir -m 0755 -p /etc/apt/keyrings
-curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
-echo \
-"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
-$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
-apt-get update
-apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
+#### 1.3 启动docker服务
+**麒麟系统kata 的containerd 和系统docker 不兼容,启动docker 时需要先停掉containerd,启动后再恢复containerd**
```
-
-#### 1.5 启动docker服务
+info "starting docker service ..."
+ case $os_release in
+ "ubuntu" | "anolis" )
+ systemctl enable --now docker
+ systemctl daemon-reload
+ service docker restart
+ ;;
+ "kylin")
+ service containerd stop
+ systemctl enable --now docker
+ systemctl daemon-reload
+ service docker restart
+ service containerd restart
+ ;;
+ esac
-```
-systemctl enable --now docker
-systemctl daemon-reload
-service docker restart
```
-#### 1.6 安装confidential-containers
+#### 1.4 安装confidential-containers
```
cd /opt/hygon/csv/confidential-containers/pkg
tar xvf confidential-containers.tar.gz -C /
```
-#### 1.7 配置containerd
+#### 1.5 配置containerd
1. 使用aliyun镜像加速
2. 使用支持机密容器的contaienrd,代替系统默认的
@@ -154,7 +134,7 @@ ExecStart=/opt/confidential-containers/bin/containerd
EOF
```
-#### 1.8 为containerd使能kata-runtime
+#### 1.6 为containerd使能kata-runtime
```
cat >>/etc/containerd/config.toml<>/etc/containerd/config.toml<DCU直通功能** 章节。
-#### 2. OS设置IOMMU为pt模式
-
-```
-sudo su root
-sed -i 's!\(^GRUB_CMDLINE_LINUX=.*\)"$!\1 iommu=pt"!' /etc/default/grub
-update-grub
-reboot
-```
-
-#### 3. 检查IOMMU设置成功
+#### 2. 检查IOMMU设置成功
```
dmesg | grep -i IOMMU
@@ -61,10 +52,14 @@ dmesg | grep -i IOMMU
- 禁用sev_kbc模式
+ 由于国内网络目前访问不了dockerhub 需要使用代理,代理参数agent.https_proxy=http://ip:port agent.no_proxy=10.*.*.*,172.*.*.* http://ip:port 为代理地址
```
- sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.enable_signature_verification=false \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv-dcu.toml
+ sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.https_proxy=http://ip:port agent.no_proxy=10.*.*.*,172.*.*.* agent.enable_signature_verification=false \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv-dcu.toml
+ ```
+- 设置内存
+ ```
+ sudo sed -i "s/^default_memory *=.*\$/default_memory = 10240/g" /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv-dcu.toml
```
-
### 部署DCU直通环境
#### 1. 查找DCU设备
@@ -72,13 +67,13 @@ dmesg | grep -i IOMMU
- 找到DCU设备
```
- lspci -nn | grep "Display controller: Chengdu Haiguang"
+ lspci -nn | grep "Display" |grep "Haiguang"
```
- 结果如下:
```
- $ lspci -nn | grep "Display controller: Chengdu Haiguang"
+ $ lspci -nn | grep "Display" |grep "Haiguang"
03:00.0 Display controller: Chengdu Haiguang IC Design Co., Ltd. Device [1d94:53b7] (rev 01)
```
@@ -158,53 +153,59 @@ rocminfo
```
hygon module is loaded
-=====================
-HSA System Attributes
-=====================
+=====================
+HSA System Attributes
+=====================
Runtime Version: 1.1
System Timestamp Freq.: 1000.000000MHz
Sig. Max Wait Duration: 18446744073709551615 (0xFFFFFFFFFFFFFFFF) (timestamp count)
-Machine Model: LARGE
-System Endianness: LITTLE
-
-==========
-HSA Agents
-==========
-*******
-Agent 1
-*******
- Name: Hygon C86 3250 8-core Processor
- Uuid: CPU-XX
- Marketing Name: Hygon C86 3250 8-core Processor
- Vendor Name: HygonGenuine
- Feature: None specified
- Profile: FULL_PROFILE
- Float Round Mode: NEAR
+Machine Model: LARGE
+System Endianness: LITTLE
+
+==========
+HSA Agents
+==========
+*******
+Agent 1
+*******
+ Name: Hygon C86 3250 8-core Processor
+ Uuid: CPU-XX
+ Marketing Name: Hygon C86 3250 8-core Processor
+ Vendor Name: HygonGenuine
+ Feature: None specified
+ Profile: FULL_PROFILE
+ Float Round Mode: NEAR
.
.
.
-*******
-Agent 2
-*******
- Name: ZIFANG
- Uuid: GPU-XX
- Marketing Name: C878186
- Vendor Name: HYGON
- Feature: KERNEL_DISPATCH
- Profile: BASE_PROFILE
- Float Round Mode: NEAR
- Max Queue Number: 128(0x80)
- Queue Min Size: 4096(0x1000)
- Queue Max Size: 131072(0x20000)
- Queue Type: MULTI
- Node: 1
- Device Type: DCU
+*******
+Agent 2
+*******
+ Name: ZIFANG
+ Uuid: GPU-XX
+ Marketing Name: C878186
+ Vendor Name: HYGON
+ Feature: KERNEL_DISPATCH
+ Profile: BASE_PROFILE
+ Float Round Mode: NEAR
+ Max Queue Number: 128(0x80)
+ Queue Min Size: 4096(0x1000)
+ Queue Max Size: 131072(0x20000)
+ Queue Type: MULTI
+ Node: 1
+ Device Type: DCU
.
.
.
-*** Done ***
+*** Done ***
```
+- 测试完恢复内存设置
+
+ ```
+ sudo sed -i "s/^default_memory *=.*\$/default_memory = 2048/g" /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv-dcu.toml
+ ```
+
## 附录
### 制作DCU容器镜像的Dockerfile
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/6-\344\275\277\347\224\250\345\212\240\345\257\206\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/6-\344\275\277\347\224\250\345\212\240\345\257\206\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md"
index 7ce8dc27866745d4e63520c827a7be25998e5f54..eb79af916b1cfcb9f729eef99b8f3231e2038849 100755
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/6-\344\275\277\347\224\250\345\212\240\345\257\206\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/6-\344\275\277\347\224\250\345\212\240\345\257\206\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md"
@@ -38,8 +38,10 @@ attestation agent 支持三种CSV平台相关的KBC:[offline_fs_kbc](https://g
- 设置AA module 配置文件路径
+ 由于国内网络目前访问不了dockerhub 需要使用代理,代理参数agent.https_proxy=http://ip:port agent.no_proxy=10.*.*.*,172.*.*.* http://ip:port 为代理地址
+
```
- sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.config_file=/etc/agent-config.toml agent.enable_signature_verification=false \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
+ sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.https_proxy=http://ip:port agent.no_proxy=10.*.*.*,172.*.*.* agent.config_file=/etc/agent-config.toml agent.enable_signature_verification=false \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
```
- 启动POD
@@ -81,27 +83,27 @@ test-en-online 1/1 Running 0 146m
- 编辑 kata 配置文件:
- 打开pre-attestation
-
+
```
sudo sed -i -e 's/^\(guest_pre_attestation =\).*$/\1 true/g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
```
-
+
- initrd指向支持offline_sev_kbc的initrd
-
+
```
sudo sed -i -e 's#^\(initrd\).*=.*$#\1 = \"/opt/confidential-containers/share/kata-containers/kata-containers-initrd-csv-hygon-gpu.img.offline_sev_kbc\"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
```
-
+
- 设置kbs_mod为offline模式
-
+
```
sudo sed -i -e 's/^\(guest_pre_attestation_kbs_mode\).*=.*$/\1=\"offline\"/g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
```
-
+
- 设置AA module 配置文件路径
-
+
```
- sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.config_file=/etc/agent-config.toml agent.enable_signature_verification=false \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
+ sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.https_proxy=http://ip:port agent.no_proxy=10.*.*.*,172.*.*.* agent.config_file=/etc/agent-config.toml agent.enable_signature_verification=false \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
```
diff --git "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/7-\344\275\277\347\224\250\347\255\276\345\220\215\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md" "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/7-\344\275\277\347\224\250\347\255\276\345\220\215\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md"
index ec9962fa6ed6facb67cd050e169cb2016213b51e..1f57de5384171278caa492a0bdd85437c587772c 100755
--- "a/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/7-\344\275\277\347\224\250\347\255\276\345\220\215\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md"
+++ "b/sig/Hygon Arch/content/2-CSV\346\265\213\350\257\225\346\226\207\346\241\243/4-KATA-3/7-\344\275\277\347\224\250\347\255\276\345\220\215\351\225\234\345\203\217\346\235\245\351\203\250\347\275\262workload.md"
@@ -39,7 +39,7 @@ attestation agent 支持三种CSV平台相关的KBC:[offline_fs_kbc](https://g
- 使能验签功能
```
- sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.config_file=/etc/agent-config.toml agent.enable_signature_verification=true \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
+ sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.https_proxy=http://ip:port agent.no_proxy=10.*.*.*,172.*.*.* agent.config_file=/etc/agent-config.toml agent.enable_signature_verification=true \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
```
- 启动 Pod
@@ -97,7 +97,7 @@ test-sign-online 1/1 Running 0 31h
- 使能验签功能,并更新kbc模式为offline_fs_kbc
```
- sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.aa_kbc_params=offline_fs_kbc::null agent.enable_signature_verification=true \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
+ sudo sed -i -e 's#^\(kernel_params\).*=.*$#\1 = \"agent.https_proxy=http://ip:port agent.no_proxy=10.*.*.*,172.*.*.* agent.aa_kbc_params=offline_fs_kbc::null agent.enable_signature_verification=true \"#g' /opt/confidential-containers/share/defaults/kata-containers/configuration-qemu-csv.toml
```
- 启动 Pod
@@ -134,4 +134,4 @@ NAME READY STATUS RESTARTS AGE
test-sign-offline 1/1 Running 0 31h
```
-###
\ No newline at end of file
+###