confidential-containers-deployment:基于国产TEE的机密容器部署项目

该项目旨在简化机密计算环境的搭建流程,提供了基于国产TEE的机密容器构建与部署脚本,支持在OpenFuyao平台的K8s集群中快速部署,并配套相关文档。

分支1Tags0
文件最后提交记录最后更新时间
1 个月前
24 天前
3 个月前
6 个月前
2 个月前

鲲鹏机密容器部署指南

概述

本项目提供基于华为鲲鹏处理器的机密容器解决方案,利用virtCCA提供的TEE(可信执行环境)技术,实现容器的机密计算能力。主要包含以下核心组件:

  • Kata Containers: 机密容器运行时,支持virtCCA后端
  • Trustee: 远程证明服务组件,包括KBS、AS、RVPS

目录结构

├── build/kunpeng/           # 组件构建
│   ├── build.sh            # 自动化构建脚本
│   ├── docker/             # Dockerfile目录
│   │   ├── rvps/Dockerfile
│   │   ├── kbs/Dockerfile
│   │   └── as/Dockerfile
│   └── 鲲鹏机密容器组件构建.md
├── deploy/kunpeng/          # 环境部署
│   └── 鲲鹏机密容器环境部署.md
└── docs/kunpeng/            # 验证文档
    └── 鲲鹏机密容器验证.md

版本信息

组件 版本
Kata Containers v3.15.0
Trustee v0.12.0
Guest Components v0.12.0
virtCCA SDK v0.1.37

环境要求

  • 操作系统: ARM架构Linux系统
  • 内核版本: v5.0及以上
  • 容器运行时: containerd v1.7及以上
  • 必要工具: git、make、openssl、docker

快速开始

1. 组件构建

# 克隆仓库
git clone https://gitcode.com/openFuyao/confidential-containers-deployment.git
cd confidential-containers-deployment/build/kunpeng

# 准备源码
./build.sh prepare_src

# 编译kata-deploy镜像
./build.sh compile_kdeploy_all

# 编译远程证明组件镜像
./build.sh compile_coco

详细构建说明请参考 鲲鹏机密容器组件构建

2. 环境部署

# 部署cc-operator
kubectl apply -k github.com/confidential-containers/operator/config/release?ref=v0.13.0

# 部署CcRuntime
kubectl apply -f virtcca-kata-deploy.yaml

# 部署trustee-operator
kubectl apply -f deploy.yaml
kubectl apply -f kbsconfig.yaml

详细部署说明请参考 鲲鹏机密容器环境部署

3. 功能验证

支持以下验证场景:

  • 远程证明服务配置
  • 容器镜像加解密
  • 容器镜像签名验签

详细验证步骤请参考 鲲鹏机密容器验证

构建产物

产物 说明 路径
kata-deploy_3.15.0.tar Kata运行时部署镜像 ./kata-containers/tools/packaging/kata-deploy/
rvps-grpc_v0.12.0.tar 参考值提供服务镜像 ./kata-containers/build/trustee/output/
kbs-grpc-as_v0.12.0.tar 密钥代理服务镜像 ./kata-containers/build/trustee/output/
as-grpc_v0.12.0.tar 远程证明服务镜像 ./kata-containers/build/trustee/output/

build.sh 命令说明

# 查看帮助
./build.sh compile_kdeploy_components help

# 可用命令
./build.sh prepare_src                    # 准备源码
./build.sh compile_kdeploy_all            # 编译所有kata-deploy组件
./build.sh compile_kdeploy_components <组件名>  # 单点编译
./build.sh compile_coco                   # 编译远程证明组件

# 可编译组件
kernel                       # 内核
kernel-virtcca-confidential  # virtCCA机密内核
nydus                        # Nydus镜像服务
shim-v2                      # Shim-v2运行时
virtiofsd                    # Virtiofsd文件系统服务
qemu                         # QEMU虚拟机
qemu-virtcca-experimental    # virtCCA QEMU
agent                        # Kata Agent
pause-image                  # Pause镜像
coco-guest-components        # 机密计算Guest组件
rootfs-image                 # Rootfs镜像
rootfs-image-experimental    # 实验性Rootfs镜像
merge-builds                 # 合并构建

相关文档

参考链接

项目介绍

该项目旨在简化机密计算环境的搭建流程,提供了基于国产TEE的机密容器构建与部署脚本,支持在OpenFuyao平台的K8s集群中快速部署,并配套相关文档。

定制我的领域