Over a million developers have joined DZone.
{{announcement.body}}
{{announcement.title}}

What is AWS Firecracker for Serverless Computing?

DZone's Guide to

What is AWS Firecracker for Serverless Computing?

Get crackin' with the newest addition to the AWS family.

· Cloud Zone ·
Free Resource

Discover a centralized approach to monitor your virtual infrastructure, on-premise IT environment, and cloud infrastructure – all on a single platform.

The world has come a long way from maintaining hardware in a big room full of servers to running CPU and memory-intensive applications in just one click. One of the main purposes of this transition is to enable developers and system engineers to concentrate more on applications and programs rather than maintaining the underlying infrastructure. The shift toward serverless computing is happening rapidly, and many tools and technologies have emerged to help. AWS, for one, has been consistently releasing new features to help users move toward serverless computing and virtualization — Lambda being one such example.

The History Behind Amazon Firecracker

AWS launched Lambda to run user applications or scripts in a serverless manner. Lambda executed functions without any overhead simply and efficiently. The introduction of AWS Fargate, which runs containers, further stressed on serverless architecture. Firecracker was developed using the language Rust as a way to enhance the backend implementation of AWS Lambda and AWS Fargate. Firecracker was developed with the goal to provide high security, isolation, flexibility, and an efficient run-time environment for Lambda and Fargate services.

Image title

Source – https://aws.amazon.com/blogs

What Does Firecracker Mean for Serverless Computing?

Firecracker is a virtualization technology that uses a Kernel-based Virtual Machine (KVM) that helps to run different customers’ workloads on the same machine. With isolation similar to traditional machines, Firecracker ensures security and efficiency. Firecracker is licensed under Apache 2.0, making it an open source tool that encourages contribution for further improvements.

  • Virtual Machine Managers (VMMs) are used to create and manage microVMs.
  • A minimalistic and simple design reduces memory overhead.
  • The Firecracker process is statistically linked and can be launched using a jailer.
  • Firecracker can handle huge workloads as it already supports Lambda and Fargate.

Key Features:

  • RESTful API creates and manages microVMs for custom vCPU and memory.
  • Low overhead (5 MiB of memory per microVM) and high performance (125ms launch time) can support running about 1000 microVMs on the same machine.
  • Supports Linux host and guest operating systems with Kernel versions 4.14 and above.
  • Supports Intel CPUs.
  • Features open source technology with an Apache 2.0 license.
  • Supports for running on .metal, bare metal instances, on-premise environments, and developer laptops.
  • Ensures security through multiple layers of isolation and protection.

Stay Tuned For:

  • Providing Kubernetes, Kata, and Docker container integration with Firecracker to help companies who have infrastructure on these technologies.
  • Supporting AMD and Arm processors (on the roadmap).
  • Integrating with container run-times, such as containers (on the roadmap).
  • Providing MicroVM storage encryption (on the roadmap).
  • Investigating Recipe-Based Builds (on the roadmap).
  • Supporting Virtio Vsock (on the roadmap)


Learn how to auto-discover your containers and monitor their performance, capture Docker host and container metrics to allocate host resources, and provision containers.

Topics:
cloud security ,cloud cost ,cloud optimization ,amazon ,aws firecracker ,serverless ,cloud

Published at DZone with permission of

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}