更新时间:2024-10-16 GMT+08:00

启动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启动之后将会执行该语句,执行完成后将退出并关闭。