Added
- Added full support for AMD CPUs (General Availability). More details here.
- Added snapshot-restore functionality (Developer preview). More details here.
- Added metric for throttled block device events.
- Added metrics for counting rate limiter throttling events.
- Added metric for counting MAC address updates.
- Added metrics for counting TAP read and write errors.
- Added metrics for counting RX and TX partial writes.
- Added metrics that measure the duration of pausing and resuming the microVM,
from the VMM perspective. - Added metric for measuring the duration of the last full snapshot created,
from the VMM perspective. - Added metric for measuring the duration of loading a snapshot, from the VMM
perspective. - Added metrics that measure the duration of pausing and resuming the microVM,
from the API (user) perspective. - Added metric for measuring the duration of the last full snapshot created,
from the API (user) perspective. - Added metric for measuring the duration of loading a snapshot, from the API
(user) perspective. - Added
track_dirty_pages
field tomachine-config
. If enabled, Firecracker
can create incremental guest memory snapshots by saving the dirty guest pages
in a sparse file. - Added a new API call,
PATCH /vm
, for changing the microVM state (to
Paused
orResumed
). - Added a new API call,
PUT /snapshot/create
, for creating a full snapshot. - Added a new API call,
PUT /snapshot/load
, for loading a snapshot. - Added new jailer command line argument
--cgroup
which allow the user to
specify the cgroups that are going to be set by the Jailer.
Fixed
- Boot time on AMD achieves the desired performance (i.e under 150ms).
Changed
- The logger
level
field is now case-insensitive. - Disabled boot timer device after restoring a snapshot.
- Enabled boot timer device only when specifically requested, by using the
--boot-timer
dedicated cmdline parameter. - firecracker and jailer
--version
now gets updated on each devtool
build to the output ofgit describe --dirty
, if the git repo is available. - MicroVM process is only attached to the cgroups defined by using
--cgroups
or the ones defined indirectly by using--node
.