加载中...

gVisor 是 Google 开源的容器安全沙箱,核心是一个用 Go 编写的用户态应用内核(组件名 Sentry)。它兼容 OCI 运行时接口(runsc),可直接替换 runc 为容器提供更强隔离。
普通容器与宿主机共享同一个 Linux 内核,一旦发生内核漏洞逃逸,隔离即告失效。gVisor 在应用与宿主内核之间插入 Sentry:容器内进程发出的系统调用被拦截并由 Sentry 在用户态实现(它自行实现了大部分 Linux 系统调用语义),仅以极少量受限的系统调用与宿主内核交互;文件访问经由独立的 Gofer 进程代理。由此宿主内核的攻击面被大幅收窄。
gVisor 被用于 Google Cloud Run、App Engine 等多租户无服务器产品,以及 GKE Sandbox;适合运行不可信代码、SaaS 多租户等场景。
与基于虚拟机的 Kata Containers 相比,gVisor 启动快、内存开销小;代价是系统调用密集型负载有明显性能损耗,且少数依赖冷门内核特性的程序不兼容。

登录 后参与讨论
暂无讨论,来发表第一条评论吧