没有合适的资源?快使用搜索试试~ 我知道了~
47 _ 绝不仅仅是安全:Kata Containers 与 gVisor1
需积分: 0 0 下载量 4 浏览量
2022-08-04
13:40:13
上传
评论
收藏 968KB PDF 举报
温馨提示
试读
12页
不过,novm 在开源后不久,就被放弃了,这对于 Google 公司来说或许不47 | 绝不仅仅是安全:Kata Containers 与 gVisor算是什么
资源详情
资源评论
资源推荐
2019/10/16 47 | 绝不仅仅是安全:Kata Containers 与 gVisor
file:///C:/Users/qiaochaowen/Desktop/k8s/47%20%20%E7%BB%9D%E4%B8%8D%E4%BB%85%E4%BB%85%E6%98%AF%E5%AE%89%E
…
1/12
47 | 绝不仅仅是安全:Kata Containers 与 gVisor
47 | 绝不仅仅是安全:Kata
Containers 与 gVisor
张磊 2018-12-10
10:39
讲述:张磊 大小:9.77M
你好,我是张磊。今天我和你分享的主题是:绝不仅仅是安全之 Kata Containers
与 gVisor。
在上一篇文章中,我为你详细地讲解了 kubelet 和 CRI 的设计和具体的工作原
理。而在讲解 CRI 的诞生背景时,我也提到过,这其中的一个重要推动力,就是
基于虚拟化或者独立内核的安全容器项目的逐渐成熟。
使用虚拟化技术来做一个像 Docker 一样的容器项目,并不是一个新鲜的主意。早
在 Docker 项目发布之后,Google 公司就开源了一个实验性的项目,叫作
novm。这,可以算是试图使用常规的虚拟化技术来运行 Docker 镜像的第一次尝
试。不过,novm 在开源后不久,就被放弃了,这对于 Google 公司来说或许不
2019/10/16 47 | 绝不仅仅是安全:Kata Containers 与 gVisor
file:///C:/Users/qiaochaowen/Desktop/k8s/47%20%20%E7%BB%9D%E4%B8%8D%E4%BB%85%E4%BB%85%E6%98%AF%E5%AE%89%E
…
2/12
算是什么新鲜事,但是 novm 的昙花一现,还是激发出了很多内核开发者的灵
感。
所以在 2015 年,几乎在同一个星期,Intel OTC (Open Source Technology
Center) 和国内的 HyperHQ 团队同时开源了两个基于虚拟化技术的容器实现,
分别叫做 Intel Clear Container 和 runV 项目。
而在 2017 年,借着 Kubernetes 的东风,这两个相似的容器运行时项目在中立基
金会的撮合下最终合并,就成了现在大家耳熟能详的 Kata Containers 项目。 由
于 Kata Containers 的本质就是一个精简后的轻量级虚拟机,所以它的特点,就
是“像虚拟机一样安全,像容器一样敏捷”。
而在 2018 年,Google 公司则发布了一个名叫 gVisor 的项目。gVisor 项目给容
器进程配置一个用 Go 语言实现的、运行在用户态的、极小的“独立内核”。这个
内核对容器进程暴露 Linux 内核 ABI,扮演着“Guest Kernel”的角色,从而达
到了将容器和宿主机隔离开的目的。
不难看到,无论是 Kata Containers,还是 gVisor,它们实现安全容器的方法其
实是殊途同归的。这两种容器实现的本质,都是给进程分配了一个独立的操作系统
内核,从而避免了让容器共享宿主机的内核。这样,容器进程能够看到的攻击面,
就从整个宿主机内核变成了一个极小的、独立的、以容器为单位的内核,从而有效
解决了容器进程发生“逃逸”或者夺取整个宿主机的控制权的问题。这个原理,可
以用如下所示的示意图来表示清楚。
2019/10/16 47 | 绝不仅仅是安全:Kata Containers 与 gVisor
file:///C:/Users/qiaochaowen/Desktop/k8s/47%20%20%E7%BB%9D%E4%B8%8D%E4%BB%85%E4%BB%85%E6%98%AF%E5%AE%89%E
…
3/12
而它们的区别在于,Kata Containers 使用的是传统的虚拟化技术,通过虚拟硬件
模拟出了一台“小虚拟机”,然后在这个小虚拟机里安装了一个裁剪后的 Linux
内核来实现强隔离。
而 gVisor 的做法则更加激进,Google 的工程师直接用 Go 语言“模拟”出了一
个运行在用户态的操作系统内核,然后通过这个模拟的内核来代替容器进程向宿主
机发起有限的、可控的系统调用。
接下来,我就来为你详细解读一下 KataContainers 和 gVisor 具体的设计原理。
首先,我们来看 KataContainers。它的工作原理可以用如下所示的示意图来描
述。
剩余11页未读,继续阅读
张盛锋
- 粉丝: 25
- 资源: 297
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0