gVisor 正在参加 2020 年度 OSC 中国开源项目评选,请投票支持!
gVisor 在 2020 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
投票让它出道
已投票
授权协议: Apache
开发语言: Google Go
操作系统: 跨平台
开发厂商: Google
收录时间: 2018-05-03
提 交 者: 周其

gVisor 是一款新型沙箱解决方案,其能够为容器提供安全的隔离措施,同时继续保持远优于虚拟机的轻量化特性。gVisor能够与Docker及Kubernetes实现集成,从而在生产环境中更轻松地建立起沙箱化容器系统。

gVisor能够在保证轻量化优势的同时,提供与虚拟机类似的隔离效果。gVisor的核心为一套运行非特权普通进程的内核,且支持大多数Linux系统调用。该内核使用Go编写,这主要是考虑到Go语言拥有良好的内存管理机制与类型安全性。与在虚拟机当中一样,gVisor沙箱中运行的应用程序也将获得自己的内核与一组虚拟设备——这一点与主机及其它沙箱方案有所区别。


gVisor通过在用户空间内拦截应用程序系统调用并充当访客内核,gVisor能够提供强大的隔离边界。而与需要一组固定资源的虚拟机不同,gVisor能够随时适应不断变化的资源条件,这一点更像是普通Linux进程。gVisor很像是一种超虚拟化操作系统,其与完整虚拟机相比拥有更灵活的资源利用方式与更低的固定成本,但这种灵活性的代价是其系统调用成本更高且应用程序兼容性略差。

gVisor运行时能够与Docker及Kubernetes实现无缝化集成,这一集成效果通过匹配OCI运行时API的runsc(即‘run Sandboxed Container’的缩写)实现。

runsc运行时可与Docker的默认容器运行时runc进行互换。其安装非常简单; 在安装完成后,只需要一个额外标记即可在Docker内运行沙箱化容器:

$ docker run --runtime=runsc hello-world
$ docker run --runtime=runsc -p 3306:3306 mysql

在Kubenetes当中,大多数资源隔离在pod层面实现,而这意味着pod能够天然充当gVisor的沙箱边界。Kubernetes社区目前正在对沙箱pod API进行标准化调整,但目前已经开放实验性支持供用户体验。

runsc运行时能够在Kubernetes集群当中通过cri-o或cri-containerd等项目运行沙箱化pod——此类项目负责将Kubelet中的消息转换为OCI运行时命令。

gVisor能够实现大部分Linux系统API(总计200项系统调用与计数),但仍有一部分无法支持。部分系统调用与参数目前尚无法使用,/proc与/sys文件系统中的某些特定部分同样如此。因此,还有少数应用程序不能在gVisor当中运行。但除此之外,包括Node.js、Java 8、MySQL、Jenkins、Apache、Redis以及MongoDB等在内的大多数应用程序皆可顺利运作。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

gVisor 的相关资讯

还没有任何资讯

gVisor 的相关博客

谷歌黑科技:gVisor轻量级容器运行时沙箱

谷歌发布了一种新型沙箱gVisor,可以用于为资源占用较少、不需要运行完整VM的容器提供安全隔离。gVisor的核心是一个使用Go编写...

谷歌黑科技:gVisor轻量级容器运行时沙箱

谷歌发布了一种新型沙箱gVisor,可以用于为资源占用较少、不需要运行完整VM的容器提供安全隔离。gVisor的核心是一个使用Go编写...

谷歌黑科技:gVisor轻量级容器运行时沙箱

谷歌发布了一种新型沙箱gVisor,可以用于为资源占用较少、不需要运行完整VM的容器提供安全隔离。gVisor的核心是一个使用Go编写...

containerd 与安全沙箱的 Kubernetes 初体验

作者 | 易立 阿里云资深技术专家 containerd 是一个开源的行业标准容器运行时,关注于简单、稳定和可移植,同时支持 Linux 和...

虚拟化安全 sandbox 技术分析

原文链接:https://cloud.tencent.com/developer/news/215218 前言: libvirt-4.3搭配qemu-2.12使用,如果使用默认的编译选项...

(译)为容器提供更好的隔离:沙箱容器技术概览

摘要 既然主流 IT 工业都在采用基于容器的基础设施(云原生方案),那么了解这一技术的短板就很重要了。Docker、LXC 以及 RK...

containerd与安全沙箱的Kubernetes初体验

containerd是一个开源的行业标准容器运行时,关注于简单、稳定和可移植,同时支持Linux和Windows。2016年12月14日,Docker公司...

containerd 与安全沙箱的 Kubernetes 初体验

作者 | 易立 阿里云资深技术专家 containerd 是一个开源的行业标准容器运行时,关注于简单、稳定和可移植,同时支持 Linux 和...

containerd 与安全沙箱的 Kubernetes 初体验

作者 | 易立 阿里云资深技术专家 containerd 是一个开源的行业标准容器运行时,关注于简单、稳定和可移植,同时支持 Linux 和...

从零开始入门 K8s | Kata Containers 创始人带你入门安全容器技术

作者 | 王旭 蚂蚁金服资深技术专家 本文整理自《CNCF x Alibaba 云原生技术公开课》第 28 讲,点击直达课程页面。 关注“阿里...

gVisor 的相关问答

还没有任何问答,马上提问

评论 (2)

加载中
打分: 推荐
看起老很不错的样子
2018/05/10 13:39
回复
举报
这个一定要试试。
2018/05/03 11:05
回复
举报
更多评论
2 评论
53 收藏
分享
返回顶部
顶部