启动QingTian Enclave
资源隔离
启动QingTian Enclave虚拟机之前,您首先要在父虚拟机内隔离资源供QingTian Enclave虚拟机使用。隔离的资源包括cpu个数和内存大小,可以通过在虚拟机内访问修改*/etc/qingtian/enclave/qt-enclave-env.conf*配置文件指定需要隔离的资源:
#1G大页 hugepage_size:1024 #内存1G. memory_mib:1024 # cpu个数 cpu_count:2 # cpu列表 # cpu_list:2,3
我们建议您最好不要反复启动资源隔离服务,否则将会出现大页内存不足,导致QingTian Enclave无法正常启动或者隔离服务无法正常启动。本教程中保持默认值不变,使用1G大页,隔离2个vCPU和1G内存。确认配置文件参数之后执行以下命令:
systemctl restart qt-enclave-env.service
其中*/etc/qingtian/enclave/qt-enclave-env.conf*配置文件中的配置项之间有约束条件,详情可见qt-enclave-env服务介绍。
启动QingTian Enclave
在父虚拟机内,使用*qt enclave start*命令创建QingTian Enclave虚拟机,该命令中需要指定QingTian Enclave虚拟机镜像文件。在QingTian Enclave虚拟机启动后,QingTian Enclave应用程序及其依赖项会被从该镜像文件中引导到QingTian Enclave虚拟机中。这里以创建一个拥有2个vCPU,1G内存,CID为4的QingTian Enclave虚拟机为例:
[root@localhost ~]# qt enclave start --cpus 2 --mem 1024 --eif /home/docker/ubuntu.eif --cid 4 Started enclave with EnclaveID : 0, EnclaveCID : 4, NumberOfCPUs : 2, MemoryMiB : 1024 { "EnclaveID": 0, "EnclaveCID": 4, "NumberOfCPUs": 2, "MemoryMiB": 1024, "LaunchMode": "debug" }
在该实例中,原镜像ubuntu中的CMD语句为/bin/bash,因此QingTian Enclave启动之后将会执行该语句,执行完成后将退出并关闭。