2022云栖精选-机密容器崛起和发展

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 冯世舫/阿里云操作系统技术专家朱江云/Intel系统软件部高级研发经理

lQLPJxbcF2cqNBvMiM0FeLCMz4ifcSGHeANpqgFLAEAA_1400_136.png

image.png机密容器是 CNCF 的 一个Sandbox项目,用于解决云原生场景下的数据安全问题,满足数据合规、数据隐私保护、算法和模型等创新IP保护,据可用但是不可见使用需求,以及解决云厂商的信任依赖问题。


机密容器具备以下几个特性:

  1. 安全性。机密容器基于硬件可信执行环境来保护容器中数据安全,云厂商以及具备高权限的第三方均无法直接窃取和篡改容器中的数据。
  2. 易用性。用户应用无需进行任何改造,即可从传统容器环境中迁移到机密容器环境中。
  3. 能够解决租户和云厂商之间的信任依赖问题。租户数据对于云厂商而言不再透明。
  4. 可自证性。用户可以通过远程证明等手段证实当前使用的容器环境是真实可信的

image.png机密容器的安全性很大程度上依赖于硬件的可信执行环境,基于硬件实现对于运行态数据机密性、完整性和安全性的保护。


近年来很多硬件厂商也推出了自己的TEE 技术解决方案,比如英特尔® SGX和 TDX等,这意味着我们可以基于多种硬件平台构建机密容器技术。image.png

阿里云机密容器(Confidential Containers)项目的核心参与者,在参与开源项目开发的同时也一直在推动机密容器的商用解决方案,目前已经完成了两种机密容器的解决方案构建。一种为 POD 级机密容器,一种为进程级机密容器。POD 级机密容器指容器 POD 中的内容放到 TEE 中进行保护;进程级机密容器指运行有敏感业务的容器进程放到 TEE 中进行保护。


在使用CPU TEE保护运行态数据安全的同时,我们也结合镜像安全、存储安全,远程认证、网络安全等一系列安全技术,用户提供应用部署到执行全链路的安全保证。

image.png

同时,我们将机密容器引入到龙蜥社区,基于龙蜥开源生态构建开源的、开箱即用的解决方案。 目前我们已经完成了ANCK、KVM、Rund安全容器等组件对于机密容器的适配工作。构建开源解决方案,希望能够借助开源社区合作伙伴达成更便捷深入的合作,为机密容器寻找更多落地场景。

image.png

英特尔和阿里云都充分意识到,除了关注基础软件之外,为了促进机密容器的技术发展普及,应用和生态也是非常关键的一环。机密计算的核心价值和能力在于能够对于高价值业务敏感数据提供保护BigDL PPML就是这样一个典型应用。


BigDL 是英特尔开源的一款人工智能解决方案平台,能够方便数据科学家和数据工程师便捷地开发出一套端到端的分布式人工智能的应用。另外,BigDL 特别针对机密计算推出了 PPML (隐私保护机器学习),能够对分布式人工智能应用实现端到端的全链路保护。


PPML架构如上图所示。最底层在K8s集群中提供的英特尔® TDX 和 英特尔® SGX可信执行环境。再通过一系列软硬件底层安全技术加持,使得用户能够在不暴露隐私数据的前提下,使用标准的人工智能和大数据处理软件比如Apache Spark, Apache Flink, TensorFlow、PyTorch 等熟悉的工具开发自己的应用。


在此之上,PPML还提供了Orca和DLlib两个分布式流水线。 Orca是在AI 框架 API 之上,增强了分布式大数据的处理能力,而 DLlib则能够帮助程序员分布式深度学习应用转化成 Spark 应用。另外,BigDL 还提供了可信大数据分析、可信机器学习、深度学习以及联邦学习应用。

image.png如上图所示,BigDL PPML基于可信的Kubernetes集群环境,通过机密容器技术能够构建出基于 TDX 的分布式可执行环境,从而确保业务、数据和模型在使用和计算过程中的安全性,包括不可见以及不可更改性。


从数据流角度,所有数据均以加密方式存储在数据湖和数据仓库中。 BigDL PPML 加载这些机密数据,通过远程证明以及密钥管理系统获取数据密钥,置于可信执行环境中进行解密,再使用大数据和人工智能的计算框架, 对数据进行分布式预处理,模型训练以及模型推理等。最后,再把最终结果,数据或者模型,以安全加密方式写回到分布式存储中。另外数据在节点之间, 容器之间的数据均以 TLS方式进行传输,从而做到全链路的隐私保护和数据安全。

image.png

使用 TDX 机密容器运行BigDL PPML workload只需简单两步:首先,构建 PPML的镜像并对其进行加密,然后把加密后的镜像推送到镜像仓库之中。 其次,在 Kubernetes中部署PPML workload ,开发者只需在标准 YAML 文件中指定所需机密容器运行时以及配置好的高性能存储卷,然后使用标准 Kubernetes命令拉起即可。


如果更深入一点看,Kubernetesworkload调度到具有运行机密容器能力的目标主机:


首先,主机上的机密容器运行时启动 TDX TEE


其次,在TDX可信执行环境里,执行远程证明并获取验证/解密容器镜像所需的密钥,镜像服务下载容器镜像,使用密钥验证及解密容器镜像;在数据方面,用户使用标准的 K8S CSI driver比如open-local 为容器挂载高性能本地LVM 卷,机密容器会自动进行透明的加密存储来保护用户输入输出数据。


最后,启动BigDL PPML workload相关容器,一个BigDL PPML Driver和多个Worker以分布式的方式运行于K8S集群之上,这样可以基于TDX进行的可信的云原生大数据分析和人工智能应用了。

image.png

英特尔和阿里云一直保持着紧密合作。我们两家都是 CoCo 上游社区的发起人,共同定义、设计和实现了CoCo软件栈的诸多关键特性,比如TEE内镜像下载,镜像的验签和解密,可信临时存储和可度量运行时环境,所有这一切都确保了CoCo这个项目的强安全属性


另外,我们在龙蜥社区也有紧密的合作,包括共同实现了基于 TDX 的机密容器端到端的解决方案,包括远程证明以及参考应用。又比如我们选择了龙蜥社区的 open-local driver ,第一个支持了可信存储,一个支持了kata的direct volume 新特性等等


最后,英特尔还正在紧密配合阿里云的小伙伴实现阿里云机密容器的产品开发。


关于龙蜥峰会云原生专场课件获取方式:

【PPT 课件获取】:关注微信公众号(OpenAnolis),回复“龙蜥课件” 即可获取。有任何疑问请随时咨询龙蜥助手—小龙(微信:openanolis_assis)。


【视频回放】:视频回放可前往龙蜥官网https://openanolis.cn/video 查看。

lQLPJxbcF2cqM2TM-M0CnrCgW_7LDpyh1wNpqgFKAPsA_670_248.png

相关实践学习
通过workbench远程登录ECS,快速搭建Docker环境
本教程指导用户体验通过workbench远程登录ECS,完成搭建Docker环境的快速搭建,并使用Docker部署一个Nginx服务。
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
9月前
|
弹性计算 Kubernetes 负载均衡
容器技术基础-容器编排技术的崛起
容器技术基础-容器编排技术的崛起
110 0
容器技术基础-容器编排技术的崛起
|
7月前
|
存储 人工智能 安全
机密计算容器前沿探索与 AI 场景应用
机密计算容器前沿探索与 AI 场景应用
|
安全 Cloud Native 算法
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(1)
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(1)
429 0
|
安全 Cloud Native Linux
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(2)
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(2)
160 0
|
存储 Kubernetes Cloud Native
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(3)
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(3)
176 0
|
Cloud Native 安全 测试技术
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(4)
带你读《云原生机密计算最佳实践白皮书》——基于runtime-attestation使用机密容器(4)
138 0
|
10天前
|
NoSQL 关系型数据库 Redis
Docker的通俗理解和通过宿主机端口访问Redis容器的实例
本文目标:引导初学者入门Docker,理解镜像、容器和宿主机概念,学习常用Docker命令,特别是如何创建并从Redis容器通过宿主机端口访问。 关键点: - Docker核心:镜像(类)、容器(实例)、宿主机(运行环境)。 - `docker pull` 拉取镜像,如 `redis:3.0`。 - `docker run -d --name` 后台运行容器,如 `my-redis`。 - `-p` 参数做端口映射,如 `6379:6379`。 - `docker exec -it` 交互式进入容器,如 `bash` 或执行命令。
|
7天前
|
前端开发 安全 数据库
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
Web架构&前后端分离站&Docker容器站&集成软件站&建站分配
|
4天前
|
NoSQL Redis Docker
使用 Docker Compose 接管现有容器的文档
使用 Docker Compose 接管现有容器的文档
17 2
|
6天前
|
Cloud Native 安全 Docker
云上攻防-云原生篇&Docker安全&系统内核&版本&CDK自动利用&容器逃逸
云上攻防-云原生篇&Docker安全&系统内核&版本&CDK自动利用&容器逃逸