pub struct MicroVMConfig {Show 14 fields
pub logger: Option<Logger>,
pub metrics: Option<Metrics>,
pub boot_source: Option<BootSource>,
pub drives: Option<Vec<Drive>>,
pub network_interfaces: Option<Vec<NetworkInterface>>,
pub vsock_devices: Option<Vec<Vsock>>,
pub cpu_config: Option<CPUConfig>,
pub machine_config: Option<MachineConfiguration>,
pub vmid: Option<String>,
pub net_ns: Option<String>,
pub mmds_config: Option<MmdsConfig>,
pub balloon: Option<Balloon>,
pub entropy_device: Option<EntropyDevice>,
pub init_metadata: Option<String>,
}Expand description
Configuration for a microVM instance
Fields§
§logger: Option<Logger>The logger for microVM.
metrics: Option<Metrics>The file path where the Firecracker metrics is located.
boot_source: Option<BootSource>Kernel image path, initrd path (optional) and kernel args.
drives: Option<Vec<Drive>>Block devices that should be made available to the microVM.
network_interfaces: Option<Vec<NetworkInterface>>Tap devices that should be made available to the microVM.
vsock_devices: Option<Vec<Vsock>>Vsock devices that should be made available to the microVM.
cpu_config: Option<CPUConfig>CPU configuration of microVM.
machine_config: Option<MachineConfiguration>Firecracker microVM process configuration.
vmid: Option<String>(Optional) vmid is a unique identifier for this VM. It’s set to a random uuid if not provided by the user. It’s used to set Firecracker’s instance ID.
net_ns: Option<String>The path to a network namespace handle. If present, the application will use this to join the associated network namespace
mmds_config: Option<MmdsConfig>Mmds configuration.
balloon: Option<Balloon>Balloon device that is to be put to the machine.
entropy_device: Option<EntropyDevice>The entropy device.
init_metadata: Option<String>Initial metadata that is to be assigned to the machine.
Implementations§
Source§impl MicroVMConfig
impl MicroVMConfig
pub fn validate(&self) -> RtckResult<()>
Trait Implementations§
Source§impl Clone for MicroVMConfig
impl Clone for MicroVMConfig
Source§fn clone(&self) -> MicroVMConfig
fn clone(&self) -> MicroVMConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for MicroVMConfig
impl Debug for MicroVMConfig
Source§impl Default for MicroVMConfig
impl Default for MicroVMConfig
Source§impl<'de> Deserialize<'de> for MicroVMConfig
impl<'de> Deserialize<'de> for MicroVMConfig
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Source§impl Hash for MicroVMConfig
impl Hash for MicroVMConfig
Source§impl Ord for MicroVMConfig
impl Ord for MicroVMConfig
Source§fn cmp(&self, other: &MicroVMConfig) -> Ordering
fn cmp(&self, other: &MicroVMConfig) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for MicroVMConfig
impl PartialEq for MicroVMConfig
Source§impl PartialOrd for MicroVMConfig
impl PartialOrd for MicroVMConfig
Source§impl Serialize for MicroVMConfig
impl Serialize for MicroVMConfig
impl Eq for MicroVMConfig
impl StructuralPartialEq for MicroVMConfig
Auto Trait Implementations§
impl Freeze for MicroVMConfig
impl RefUnwindSafe for MicroVMConfig
impl Send for MicroVMConfig
impl Sync for MicroVMConfig
impl Unpin for MicroVMConfig
impl UnwindSafe for MicroVMConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more