Skip to content

Decouple Vmm from its Firecracker-specific RPC interface #1713

@acatangiu

Description

@acatangiu

This issue is part of a story that tracks a state where the vmm crate is no longer Firecracker-specific.

Benefits:

  • swapping out Vmm implementations in Firecracker - the vmm crate used in Firecracker could be one from rust-vmm.
  • upstreaming/outsourcing the current Vmm implementation in Firecracker to other projects.
  • reducing the barrier-to-entry in Firecracker code-base by having much more contained components.
  • clear language-enforced dependencies in the form of crates helps keeping the code clean by forcing contributors to work at the right level with the right resources.

Scope:

vmm_config, VmResources, Pre-boot and Runtime Controllers and rpc_interface to be moved to an external rpc_interface crate that depend on Vmm. Dependency graph will be:

+---------------+     Dependencies
|  Firecracker  |           |
+---------------+           |
|  API Server   |           |
+---------------+           |
| RPC Interface |           |
+---------------+           |
|      Vmm      |           |
+---------------+           V

With Vmm decoupled from all Firecracker-specific configuration primitives and logic.

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions