Firecracker microVM:如何创建自定义Firecracker microVM和文件系统映像

时间:2018-12-27 01:56:42

标签: linux docker virtual-machine firecracker

我通过Docker从源代码构建并遵循了步骤,完成了Getting Started guideFirecracker microVM。我通过CLI / Visual Studio UI / ECS具有Docker的使用知识,并且记得在Docker普遍存在之前手动构建AWS AMI ...

但是,这部分对我来说完全是未知的领域,过去几周的几次谷歌搜索并没有帮助:

  

接下来,您将需要一个未压缩的Linux内核二进制文件和一个ext4文件系统映像(用作rootfs)。您可以从我们的microVM映像S3存储桶中使用这些文件:kernelrootfs

  1. 什么是hello-vmlinux.bin,以及如何使用预安装的应用程序构建一个?是否可以通过简单的方式类似于Docker或AMI来完成?

  2. 什么是hello-rootfs.ext4文件,以及如何出于与上述1.相同的目的创建自定义文件?

1 个答案:

答案 0 :(得分:2)

vmlinux.bin-这是将由VM使用的linux内核映像。也许您可以使用提供的内核而不进行任何修改。

hello-rootfs.ext4-这是一个文件,其中包含VM的根文件系统。 您必须修改文件才能添加您的应用程序。

  1. Mount提供了rootfs来进行更改
  

mkdir -p / tmp / myroot

     

sudo挂载rootfs.ext4 / tmp / my-rootfs

  1. 将您的应用程序和所有依赖项复制到/ tmp / my-rootfs / opt /
  2. 为您的应用程序将启动脚本添加到/tmp/myroot/etc/init.d/ 必须为OpenRC初始化系统准备启动脚本。

  3. 卸载rootfs

      

    sudo umount /zprojects/modus/sketch/images/hello-rootfs.ext4

启动鞭炮,以便在VM初始化系统启动过程中启动您的应用程序。

您可能还想检查如何提供对VM的网络访问权限:vm network setup doc