首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >hashicorp封隔器与linuxkit的区别

hashicorp封隔器与linuxkit的区别
EN

Stack Overflow用户
提问于 2017-12-14 11:48:40
回答 1查看 2.2K关注 0票数 9

我使用hashicorp封隔器来构建烘焙的VM映像。

但是我想知道linuxkit也做了同样的事情,我的意思是构建烘焙的VM映像,唯一的区别是更多的容器和内核中心。

想知道这两个用例与用例工作的确切区别。

此外,还可以使用包装和linuxkit的任何使用酶。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-12-15 07:01:32

我已经相当广泛地使用了这两种方法(坦白地说:我是LinuxKit的志愿者维护者)。我使用packer很长一段时间,并将我在packer中所做的几乎所有工作都换成了LinuxKit (lkt)。

原则上,这两种工具都是开源工具,目的相同:生成可以运行的OS映像。实际上,大多数虚拟机映像都使用它在vbox、AWS、Azure、GCR等上运行,但是您可以生成一个运行在裸金属上的映像,我也这样做过。

封隔器,随着年龄的增长,有更广泛的供给者,建设者,插件等,它试图相当广泛的基础和不固执己见。为任何地方构建,运行任何您想要的安装。

LinuxKit在容器中运行几乎所有的东西-- onboot进程和连续services。即使是init阶段--其中操作系统映像将被引导--也是通过从OCI映像复制文件来配置的。

LinuxKit对如何运行和构建事物的强烈意见在某些方面可能是限制性的,但也是解放的。

我认为,最重要的区别是:

  1. lkt从零开始构建到您所需的最低限度;数据包是从现有的OS基础构建的。
  2. lkt的安全攻击面将会更小,因为它不是从现有的操作系统开始的,而是没有任何东西。
  3. lkt图像可能要小得多,因为您只添加了所需的内容。
  4. lkt构建在本地运行。Packer本质上是对VM (vbox、EC2等)进行细化,运行一些基本映像,根据您的指令修改它,然后将其保存为一个新映像。lkt只是通过下载和复制文件来创建一个新的映像来处理OCI图像。

我可以得到相同的净结果的差异1-3与封隔器和LinuxKit,虽然lkt是少得多的工作。例如,我将getty包贡献给LinuxKit,以分离和控制何时/如何启动getty,以及在哪个命名空间中。在一个完整的操作系统上构建的封隔器映像中,分离和控制的工作量可能要大得多。tpm包也是一样的。等。

最大的区别是第4步,因为Packer启动一个VM并在其中运行命令,所以它要慢得多,调试起来也难得多。同样的封隔器图像,我需要10+分钟来建造,可以是30秒在lkt。您的里程可能会有所不同,取决于是否下载了OCI图像,以及您正在做的事情有多复杂,但是对于我来说,它确实是一个数量级的速度。

类似地,在运行在远程VM中的进程中,一步一步地调试或查找错误、运行、调试和重建要比在本地命令lkt build中困难得多。

正如我说过的,意见是我自己的,但这些是我将几乎所有构建工作转移到lkt的原因,我做出了贡献,并同意在团队询问时加入优秀的维护人员小组。

同时,我也非常感谢HashiCorp的出色的工具集。帕克为我服务得很好;如今,LinuxKit为我服务得更好。

票数 23
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47812633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档