云服务器内容精选

  • 错误码 错误码 错误信息 描述 处理措施 01 Missing necessary argument. 必要参数缺失 请您对命令参数进行检查 02 Invalid argument provided. 无效参数 请您对命令参数进行检查 03 File operation failure. 文件操作错误 请您检查目标文件或目录是否存在 04 Ioctl get sandbox capacity failure. Ioctl获取sandbox capacity错误 请您联系华为云技术支撑人员帮您处理 05 Ioctl define sandbox failure. Ioctl定义sandbox错误 请您联系华为云技术支撑人员帮您处理 06 Invalid parameters provided in configuration file. 配置文件中存在无效参数 请您检查对应配置文件 07 Missing necessary parameters in configuration file. 配置文件中缺少必要参数 请您检查对应配置文件 08 Mmap memory failure. Mmap内存错误 请您联系华为云技术支撑人员帮您处理 09 Ioctl add memory failure. Ioctl增加内存错误 请您联系华为云技术支撑人员帮您处理 10 Load image failure because provided memory is too small. 加载镜像错误,可能是因为设置的内存大小不够 请您在启动QingTian Enclave时,增加内存参数设置 11 Ioctl add cpu failure. Ioctl增加vcpu错误 请您联系华为云技术支撑人员帮您处理 12 Lock acquire failure. 请求锁失败 请您检查qt CLI日志信息,查看对应锁文件权限是否正常 13 Socket initialization failure. Socket初始化失败 请您联系华为云技术支撑人员帮您处理 14 Socket binding failure. Socket绑定错误 请您联系华为云技术支撑人员帮您处理 15 Socket listen failure. Socket监听错误 请您联系华为云技术支撑人员帮您处理 16 Socket accept failure. Socket执行接收错误 请您联系华为云技术支撑人员帮您处理 17 Write heartbeat to the enclave failure. 给QingTian Enclave写入心跳信息出错 请您联系华为云技术支撑人员帮您处理 18 Read heartbeat from the enclave failure. 读取QingTian Enclave心跳信息出错 请您联系华为云技术支撑人员帮您处理 19 Ioctl start an enclave failure. Ioctl启动QingTian Enclave失败 请您联系华为云技术支撑人员帮您处理 20 Wait heartbeat timeout. 等待心跳信息超时 请您在启动QingTian Enclave时,增加内存参数配置;如未能解决,请您联系华为云技术支撑人员帮您处理 21 Get json print object failure. 获取json打印对象失败 请您检查cjson库是否正常 22 Write enclave's configuration file failure. 生成QingTian Enclave配置文件失败 请您查看qt CLI日志信息,排查相关文件权限;如未能解决,请您联系华为云技术支撑人员帮您处理 23 Socket connection failure Socket连接错误 请您联系华为云技术支撑人员帮您处理 24 Write cmd to the enclave server failure. 向QingTian Enclave后台服务写入命令失败 请您联系华为云技术支撑人员帮您处理 25 Read message from the enclave server failure. 获取QingTian Enclave后台服务信息失败 请您联系华为云技术支撑人员帮您处理 26 Create cjson object failure. 创建cjson对象失败 请您检查cjson库是否正常 27 Create cjson array failure. 创建cjson数组失败 请您检查cjson库是否正常 28 The required enclave is not running. 被请求的QingTian Enclave实例并没有在运行 请您使用qt enclave query命令查看目前正在运行的QingTian Enclave 29 Invalid enclave pid. 无效的Enclave PID 请您联系华为云技术支撑人员帮您处理 30 Add number into cjson object failure. 向cjson打印对象中增加数字失败 请您检查cjson库是否正常 31 Add string into cjson object failure. 向cjson打印对象中增加字符串失败 请您检查cjson库是否正常 32 The required enclave is not running in the debug mode. 被请求的QingTian Enclave实例没有运行在debug模式下 请您使用qt enclave query 查询该QingTian Enclave运行模式 33 Enclave console read failure. QingTian Enclave console命令读取失败 请您联系华为云技术支撑人员帮您处理 34 Write img header failure. 创建镜像时,写入镜像头文件失败 请您联系华为云技术支撑人员帮您处理 35 Write cmdline failure. 创建镜像时,写入cmdline失败 请您联系华为云技术支撑人员帮您处理 36 Write kernel failure. 创建镜像时,写入kernel失败 请您联系华为云技术支撑人员帮您处理 37 Write initrd failure. 创建镜像时,写入initrd失败 请您联系华为云技术支撑人员帮您处理 38 Write certificate failure. 创建镜像时,写入证书失败 请您联系华为云技术支撑人员帮您处理 39 Get pcr failure. 获取PCR值失败 请您联系华为云技术支撑人员帮您处理 40 Add signature failure. 创建镜像时,对镜像签名出错 请您联系华为云技术支撑人员帮您处理 41 Check enclave image info failure while building an eif file. 构建eif镜像时检查到enclave镜像信息异常 请您联系华为云技术支撑人员帮您处理 42 The required enclave is in maintenance state. 被请求的QingTian Enclave实例正处于维护阶段 请您联系华为云技术支撑人员帮您处理 43 The cid has already been used. cid已经在使用中 请您重新指定未在使用中的cid 父主题: QingTian Enclave管理
  • 快速入门 以下教程将引导您了解并使用QingTian Enclave特性,包括如何启动QingTian Enclave父虚拟机,如何构建QingTian Enclave镜像文件,如何查询正在运行的QingTian Enclave,以及停止QingTian Enclave。 准备一台支持QingTian Enclave特性的虚拟机实例 在购买虚拟机时,您需要在高级选项中勾选Enclave,并选择Linux作为系统镜像。建议使用HCE2.0镜像。 连接到父虚拟机,请参考华为云E CS 用户指南。 在父虚拟机中安装qt CLI工具,并在配置文件中按需设置资源隔离参数,然后启动资源隔离服务。使用qt CLI工具需要安装必要的python库,详情请见QingTian CLI(qt CLI)。 您可以安装qt CLI工具和其他必要rpm包: yum install qt-enclave-bootstrap yum install virtio-qtbox yum install qingtian-tool 在配置文件中按需配置隔离参数,本教程内使用默认1G内存,2个vCPU。然后启动隔离服务: systemctl start qt-enclave-env 在父虚拟机中安装Docker程序,我们推荐使用二进制的方式进行Docker安装,可以在Docker官方网站下载需要版本。这里以18.09.9为例: wget https://download.docker.com/linux/static/stable/x86_64/docker-18.09.9.tgz 对下载的压缩包进行解压操作: tar zxf docker-18.09.9.tgz 解压完成后将docker目录下所有文件复制到/usr/bin目录下: cp docker/* /usr/bin 启动docker服务,并将日志等级设置为error等级: dockerd -l error & 验证Docker版本: docker version 运行hello-world容器,查看Docker是否安装正确: docker run hello-world 构建QingTian Enclave镜像 本教程中,使用以下hello_enclave.sh脚本作为QingTian Enclave应用程序: #!/bin/bash while true do echo "hello enclave!" sleep 2 done Dockerfile内容如下: FROM ubuntu:latest COPY hello_enclave.sh /root/hello_enclave.sh CMD ["/root/hello_enclave.sh"] 确认脚本有可执行权限: chmod +x hello_enclave.sh 构建一个名为hello-enclave的Docker镜像: docker build -f Dockerfile -t hello-enclave . 使用qt enclave make-img命令将Docker镜像转换为名为hello-enclave.eif的QingTian Enclave镜像: qt enclave make-img --docker-uri hello-enclave --eif hello-enclave.eif 输出为: # qt enclave make-img --docker-uri hello-enclave --eif hello-enclave.eif { "digest": "SHA384", "PCR0": "63bf78ece7d2388ff773d0cad2ebc9a3070359db46d567ba271ff8adfb8b0b091be4ff4d5dda3f1c83109096e3656f3b", "PCR8": "000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000" } 现在已经构建了名为hello-enclave.eif的QingTian Enclave镜像,命令包含了一系列PCR值,包括PCR0和PCR8(该例子中制作镜像时并没有指定证书和密钥,所以PCR8为0)。这些哈希值是在Enclave镜像构建时产生的测量值,它们通常作为预期的测量值(相对于证明文档中所包含的启动时测量值而言)。 运行QingTian Enclave实例 现在可以使用以下命令来运行QingTian Enclave镜像: qt enclave start --mem 1024 --cpus 2 --eif hello-enclave.eif --cid 4 --debug-mode 该实例运行在debug-mode,关于debug-mode详情可见qt enclave子命令介绍。 您会看到以下输出: # qt enclave start --cpus 2 --mem 1024 --eif hello-enclave.eif --cid 4 --debug-mode Started enclave with EnclaveID : 0, EnclaveCID : 4, NumberOfCPUs : 2, MemoryMiB : 1024 { "EnclaveID": 0, "EnclaveCID": 4, "NumberOfCPUs": 2, "MemoryMiB": 1024, "LaunchMode": "debug" } 在该教程中,我们为该QingTian Enclave实例分配了2个vCPU和1024M内存,并指定其cid为4,该cid可作为QingTian Enclave实例与父虚拟机实例之间的本地套接字的IP地址。 查询正在运行的QingTian Enclave 按以上步骤创建完QingTian Enclave实例后,可以以下命令查询他是否在运行: qt enclave query --enclave-id 0 # qt enclave query --enclave-id 0 [{ "EnclaveID": 0, "ProcessID": 29990, "EnclaveCID": 4, "NumberOfCPUs": 2, "MemoryMiB": 1024, "LaunchMode": "debug" }] 该命令可以用于查询QingTian Enclave相关信息,包括EnclaveID、ProcessID、EnclaveCID、vCPU数量、内存数量以及其运行模式。因为该实例是以debug模式启动的,所以可以用qt enclave console 命令查看QingTian Enclave的只读控制台输出。 hello enclave! hello enclave! hello enclave! hello enclave! 您将观察到终端每隔2秒打印一次hello enclave!。 停止正在运行的QingTian Enclave实例 如果您想停止运行以上的QingTian Enclave实例,可以使用以下命令: # qt enclave stop --enclave-id 0 stop enclave 0 successfully { "EnclaveID": 0 } 父主题: QingTian Enclave管理