VirtualMachineInstancePreset
kubevirt.io / v1alpha3
apiVersion: kubevirt.io/v1alpha3
kind: VirtualMachineInstancePreset
metadata:
name: example
apiVersion
string
APIVersion defines the versioned schema of this representation of an object.
Servers should convert recognized schemas to the latest internal value, and
may reject unrecognized values.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources
kind
string
Kind is a string value representing the REST resource this object represents.
Servers may infer this from the endpoint the client submits requests to.
Cannot be updated.
In CamelCase.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds
metadata
object
spec object
VirtualMachineInstance Spec contains the VirtualMachineInstance specification.
domain object
Domain is the same object type as contained in VirtualMachineInstanceSpec
chassis object
Chassis specifies the chassis info passed to the domain.
asset
string
manufacturer
string
serial
string
sku
string
version
string
clock object
Clock sets the clock and timers of the vmi.
timer object
Timer specifies whih timers are attached to the vmi.
hpet object
HPET (High Precision Event Timer) - multiple timers with periodic interrupts.
present
boolean
Enabled set to false makes sure that the machine type or a preset can't add the timer.
Defaults to true.
tickPolicy
string
TickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest.
One of "delay", "catchup", "merge", "discard".
hyperv object
Hyperv (Hypervclock) - lets guests read the host’s wall clock time (paravirtualized). For windows guests.
present
boolean
Enabled set to false makes sure that the machine type or a preset can't add the timer.
Defaults to true.
kvm object
KVM (KVM clock) - lets guests read the host’s wall clock time (paravirtualized). For linux guests.
present
boolean
Enabled set to false makes sure that the machine type or a preset can't add the timer.
Defaults to true.
pit object
PIT (Programmable Interval Timer) - a timer with periodic interrupts.
present
boolean
Enabled set to false makes sure that the machine type or a preset can't add the timer.
Defaults to true.
tickPolicy
string
TickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest.
One of "delay", "catchup", "discard".
rtc object
RTC (Real Time Clock) - a continuously running timer with periodic interrupts.
present
boolean
Enabled set to false makes sure that the machine type or a preset can't add the timer.
Defaults to true.
tickPolicy
string
TickPolicy determines what happens when QEMU misses a deadline for injecting a tick to the guest.
One of "delay", "catchup".
track
string
Track the guest or the wall clock.
timezone
string
Timezone sets the guest clock to the specified timezone.
Zone name follows the TZ environment variable format (e.g. 'America/New_York').
utc object
UTC sets the guest clock to UTC on each boot. If an offset is specified,
guest changes to the clock will be kept during reboots and are not reset.
offsetSeconds
integer
OffsetSeconds specifies an offset in seconds, relative to UTC. If set,
guest changes to the clock will be kept during reboots and not reset.
cpu object
CPU allow specified the detailed CPU topology inside the vmi.
cores
integer
Cores specifies the number of cores inside the vmi.
Must be a value greater or equal 1.
format:
int32
dedicatedCpuPlacement
boolean
DedicatedCPUPlacement requests the scheduler to place the VirtualMachineInstance on a node
with enough dedicated pCPUs and pin the vCPUs to it.
features []object
Features specifies the CPU features list inside the VMI.
name
string required
Name of the CPU feature
policy
string
Policy is the CPU feature attribute which can have the following attributes:
force - The virtual CPU will claim the feature is supported regardless of it being supported by host CPU.
require - Guest creation will fail unless the feature is supported by the host CPU or the hypervisor is able to emulate it.
optional - The feature will be supported by virtual CPU if and only if it is supported by host CPU.
disable - The feature will not be supported by virtual CPU.
forbid - Guest creation will fail if the feature is supported by host CPU.
Defaults to require
isolateEmulatorThread
boolean
IsolateEmulatorThread requests one more dedicated pCPU to be allocated for the VMI to place
the emulator thread on it.
maxSockets
integer
MaxSockets specifies the maximum amount of sockets that can
be hotplugged
format:
int32
model
string
Model specifies the CPU model inside the VMI.
List of available models https://github.com/libvirt/libvirt/tree/master/src/cpu_map.
It is possible to specify special cases like "host-passthrough" to get the same CPU as the node
and "host-model" to get CPU closest to the node one.
Defaults to host-model.
numa object
NUMA allows specifying settings for the guest NUMA topology
guestMappingPassthrough
object
GuestMappingPassthrough will create an efficient guest topology based on host CPUs exclusively assigned to a pod.
The created topology ensures that memory and CPUs on the virtual numa nodes never cross boundaries of host numa nodes.
realtime object
Realtime instructs the virt-launcher to tune the VMI for lower latency, optional for real time workloads
mask
string
Mask defines the vcpu mask expression that defines which vcpus are used for realtime. Format matches libvirt's expressions.
Example: "0-3,^1","0,2,3","2-3"
sockets
integer
Sockets specifies the number of sockets inside the vmi.
Must be a value greater or equal 1.
format:
int32
threads
integer
Threads specifies the number of threads inside the vmi.
Must be a value greater or equal 1.
format:
int32devices object required
Devices allows adding disks, network interfaces, and others
autoattachGraphicsDevice
boolean
Whether to attach the default graphics device or not.
VNC will not be available if set to false. Defaults to true.
autoattachInputDevice
boolean
Whether to attach an Input Device.
Defaults to false.
autoattachMemBalloon
boolean
Whether to attach the Memory balloon device with default period.
Period can be adjusted in virt-config.
Defaults to true.
autoattachPodInterface
boolean
Whether to attach a pod network interface. Defaults to true.
autoattachSerialConsole
boolean
Whether to attach the default virtio-serial console or not.
Serial console access will not be available if set to false. Defaults to true.
autoattachVSOCK
boolean
Whether to attach the VSOCK CID to the VM or not.
VSOCK access will be available if set to true. Defaults to false.
blockMultiQueue
boolean
Whether or not to enable virtio multi-queue for block devices.
Defaults to false.
clientPassthrough
object
To configure and access client devices such as redirecting USB
disableHotplug
boolean
DisableHotplug disabled the ability to hotplug disks.
disks []object
Disks describes disks, cdroms and luns which are connected to the vmi.
maxItems:
256blockSize object
If specified, the virtual disk will be presented with the given block sizes.
custom object
CustomBlockSize represents the desired logical and physical block size for a VM disk.
discardGranularity
integer
logical
integer
physical
integer
matchVolume object
Represents if a feature is enabled or disabled.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
bootOrder
integer
BootOrder is an integer value > 0, used to determine ordering of boot devices.
Lower values take precedence.
Each disk or interface that has a boot order must have a unique value.
Disks without a boot order are not tried if a disk with a boot order exists.
cache
string
Cache specifies which kvm disk cache mode should be used.
Supported values are:
none: Guest I/O not cached on the host, but may be kept in a disk cache.
writethrough: Guest I/O cached on the host but written through to the physical medium. Slowest but with most guarantees.
writeback: Guest I/O cached on the host.
Defaults to none if the storage supports O_DIRECT, otherwise writethrough.
cdrom object
Attach a volume as a cdrom to the vmi.
bus
string
Bus indicates the type of disk device to emulate.
supported values: virtio, sata, scsi.
readonly
boolean
ReadOnly.
Defaults to true.
tray
string
Tray indicates if the tray of the device is open or closed.
Allowed values are "open" and "closed".
Defaults to closed.
changedBlockTracking
boolean
ChangedBlockTracking indicates this disk should have CBT option
Defaults to false.
dedicatedIOThread
boolean
dedicatedIOThread indicates this disk should have an exclusive IO Thread.
Enabling this implies useIOThreads = true.
Defaults to false.
disk object
Attach a volume as a disk to the vmi.
bus
string
Bus indicates the type of disk device to emulate.
supported values: virtio, sata, scsi, usb.
pciAddress
string
If specified, the virtual disk will be placed on the guests pci address with the specified PCI address. For example: 0000:81:01.10
readonly
boolean
ReadOnly.
Defaults to false.
errorPolicy
string
If specified, it can change the default error policy (stop) for the disk
io
string
IO specifies which QEMU disk IO mode should be used.
Supported values are: native, default, threads.
lun object
Attach a volume as a LUN to the vmi.
bus
string
Bus indicates the type of disk device to emulate.
supported values: virtio, sata, scsi.
readonly
boolean
ReadOnly.
Defaults to false.
reservation
boolean
Reservation indicates if the disk needs to support the persistent reservation for the SCSI disk
name
string required
Name is the device name
serial
string
Serial provides the ability to specify a serial number for the disk device.
shareable
boolean
If specified the disk is made sharable and multiple write from different VMs are permitted
tag
string
If specified, disk address and its tag will be provided to the guest via config drive metadata
downwardMetrics
object
DownwardMetrics creates a virtio serials for exposing the downward metrics to the vmi.
filesystems []object
Filesystems describes filesystem which is connected to the vmi.
name
string required
Name is the device name
virtiofs
object required
Virtiofs is supported
gpus []object
Whether to attach a GPU device to the vmi.
claimName
string
ClaimName needs to be provided from the list vmi.spec.resourceClaims[].name where this
device is allocated
deviceName
string
DeviceName is the name of the device provisioned by device-plugins
name
string required
Name of the GPU device as exposed by a device plugin
requestName
string
RequestName needs to be provided from resourceClaim.spec.devices.requests[].name where this
device is requested
tag
string
If specified, the virtual network interface address and its tag will be provided to the guest via config drive
virtualGPUOptions object
display object
enabled
boolean
Enabled determines if a display addapter backed by a vGPU should be enabled or disabled on the guest.
Defaults to true.
ramFB object
Enables a boot framebuffer, until the guest OS loads a real GPU driver
Defaults to true.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
hostDevices []object
Whether to attach a host device to the vmi.
claimName
string
ClaimName needs to be provided from the list vmi.spec.resourceClaims[].name where this
device is allocated
deviceName
string
DeviceName is the name of the device provisioned by device-plugins
name
string required
requestName
string
RequestName needs to be provided from resourceClaim.spec.devices.requests[].name where this
device is requested
tag
string
If specified, the virtual network interface address and its tag will be provided to the guest via config drive
inputs []object
Inputs describe input devices
bus
string
Bus indicates the bus of input device to emulate.
Supported values: virtio, usb.
name
string required
Name is the device name
type
string required
Type indicated the type of input device.
Supported values: tablet.
interfaces []object
Interfaces describe network interfaces which are added to the vmi.
maxItems:
256
acpiIndex
integer
If specified, the ACPI index is used to provide network interface device naming, that is stable across changes
in PCI addresses assigned to the device.
This value is required to be unique across all devices and be between 1 and (16*1024-1).
binding object
Binding specifies the binding plugin that will be used to connect the interface to the guest.
It provides an alternative to InterfaceBindingMethod.
version: 1alphav1
name
string required
Name references to the binding name as denined in the kubevirt CR.
version: 1alphav1
bootOrder
integer
BootOrder is an integer value > 0, used to determine ordering of boot devices.
Lower values take precedence.
Each interface or disk that has a boot order must have a unique value.
Interfaces without a boot order are not tried.
bridge
object
InterfaceBridge connects to a given network via a linux bridge.
dhcpOptions object
If specified the network interface will pass additional DHCP options to the VMI
bootFileName
string
If specified will pass option 67 to interface's DHCP server
ntpServers
[]string
If specified will pass the configured NTP server to the VM via DHCP option 042.
privateOptions []object
If specified will pass extra DHCP options for private use, range: 224-254
option
integer required
Option is an Integer value from 224-254
Required.
value
string required
Value is a String value for the Option provided
Required.
tftpServerName
string
If specified will pass option 66 to interface's DHCP server
macAddress
string
Interface MAC address. For example: de:ad:00:00:be:af or DE-AD-00-00-BE-AF.
macvtap
object
DeprecatedMacvtap is an alias to the deprecated Macvtap interface,
please refer to Kubevirt user guide for alternatives.
Deprecated: Removed in v1.3
masquerade
object
InterfaceMasquerade connects to a given network using netfilter rules to nat the traffic.
model
string
Interface model.
One of: e1000, e1000e, igb, ne2k_pci, pcnet, rtl8139, virtio.
Defaults to virtio.
name
string required
Logical name of the interface as well as a reference to the associated networks.
Must match the Name of a Network.
passt
object
DeprecatedPasst is an alias to the deprecated Passt interface,
please refer to Kubevirt user guide for alternatives.
Deprecated: Removed in v1.3
passtBinding
object
InterfacePasstBinding connects to a given network using passt usermode networking.
pciAddress
string
If specified, the virtual network interface will be placed on the guests pci address with the specified PCI address. For example: 0000:81:01.10
ports []object
List of ports to be forwarded to the virtual machine.
name
string
If specified, this must be an IANA_SVC_NAME and unique within the pod. Each
named port in a pod must have a unique name. Name for the port that can be
referred to by services.
port
integer required
Number of port to expose for the virtual machine.
This must be a valid port number, 0 < x < 65536.
format:
int32
protocol
string
Protocol for port. Must be UDP or TCP.
Defaults to "TCP".
slirp
object
DeprecatedSlirp is an alias to the deprecated Slirp interface
Deprecated: Removed in v1.3
sriov
object
InterfaceSRIOV connects to a given network by passing-through an SR-IOV PCI device via vfio.
state
string
State represents the requested operational state of the interface.
The supported values are:
'absent', expressing a request to remove the interface.
'down', expressing a request to set the link down.
'up', expressing a request to set the link up.
Empty value functions as 'up'.
tag
string
If specified, the virtual network interface address and its tag will be provided to the guest via config drive
logSerialConsole
boolean
Whether to log the auto-attached default serial console or not.
Serial console logs will be collect to a file and then streamed from a named 'guest-console-log'.
Not relevant if autoattachSerialConsole is disabled.
Defaults to cluster wide setting on VirtualMachineOptions.
networkInterfaceMultiqueue
boolean
If specified, virtual network interfaces configured with a virtio bus will also enable the vhost multiqueue feature for network devices. The number of queues created depends on additional factors of the VirtualMachineInstance, like the number of guest CPUs.
panicDevices []object
PanicDevices provides additional crash information when a guest crashes.
model
string
Model specifies what type of panic device is provided.
The panic model used when this attribute is missing depends on the hypervisor and guest arch.
One of: isa, hyperv, pvpanic.
rng
object
Whether to have random number generator from host
sound object
Whether to emulate a sound device.
model
string
We only support ich9 or ac97.
If SoundDevice is not set: No sound card is emulated.
If SoundDevice is set but Model is not: ich9
name
string required
User's defined name for this sound device
tpm object
Whether to emulate a TPM device.
enabled
boolean
Enabled allows a user to explicitly disable the vTPM even when one is enabled by a preference referenced by the VirtualMachine
Defaults to True
persistent
boolean
Persistent indicates the state of the TPM device should be kept accross reboots
Defaults to false
useVirtioTransitional
boolean
Fall back to legacy virtio 0.9 support if virtio bus is selected on devices.
This is helpful for old machines like CentOS6 or RHEL6 which
do not understand virtio_non_transitional (virtio 1.0).
video object
Video describes the video device configuration for the vmi.
type
string
Type specifies the video device type (e.g., virtio, vga, bochs, ramfb).
If not specified, the default is architecture-dependent (VGA for BIOS-based VMs, Bochs for EFI-based VMs on AMD64; virtio for Arm and s390x).
watchdog object
Watchdog describes a watchdog device which can be added to the vmi.
diag288 object
diag288 watchdog device (specific to s390x architecture).
action
string
The action to take. Valid values are poweroff, reset, shutdown.
Defaults to reset.
i6300esb object
i6300esb watchdog device.
action
string
The action to take. Valid values are poweroff, reset, shutdown.
Defaults to reset.
name
string required
Name of the watchdog.
features object
Features like acpi, apic, hyperv, smm.
acpi object
ACPI enables/disables ACPI inside the guest.
Defaults to enabled.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
apic object
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
endOfInterrupt
boolean
EndOfInterrupt enables the end of interrupt notification in the guest.
Defaults to false.
hyperv object
Defaults to the machine type setting.
evmcs object
EVMCS Speeds up L2 vmexits, but disables other virtualization features. Requires vapic.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
frequencies object
Frequencies improves the TSC clock source handling for Hyper-V on KVM.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
ipi object
IPI improves performances in overcommited environments. Requires vpindex.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
reenlightenment object
Reenlightenment enables the notifications on TSC frequency changes.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
relaxed object
Relaxed instructs the guest OS to disable watchdog timeouts.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
reset object
Reset enables Hyperv reboot/reset for the vmi. Requires synic.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
runtime object
Runtime improves the time accounting to improve scheduling in the guest.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
spinlocks object
Spinlocks allows to configure the spinlock retry attempts.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
spinlocks
integer
Retries indicates the number of retries.
Must be a value greater or equal 4096.
Defaults to 4096.
format:
int32synic object
SyNIC enables the Synthetic Interrupt Controller.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
synictimer object
SyNICTimer enables Synthetic Interrupt Controller Timers, reducing CPU load.
Defaults to the machine type setting.
direct object
Represents if a feature is enabled or disabled.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
tlbflush object
TLBFlush improves performances in overcommited environments. Requires vpindex.
Defaults to the machine type setting.
direct object
Direct allows sending the TLB flush command directly to the hypervisor.
It can be useful to optimize performance in nested virtualization cases, such as Windows VBS.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
extended object
Extended allows the guest to execute partial TLB flushes. It can be helpful for general purpose workloads.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
vapic object
VAPIC improves the paravirtualized handling of interrupts.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
vendorid object
VendorID allows setting the hypervisor vendor id.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
vendorid
string
VendorID sets the hypervisor vendor id, visible to the vmi.
String up to twelve characters.
vpindex object
VPIndex enables the Virtual Processor Index to help windows identifying virtual processors.
Defaults to the machine type setting.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
hypervPassthrough object
This enables all supported hyperv flags automatically.
Bear in mind that if this enabled hyperV features cannot
be enabled explicitly. In addition, a Virtual Machine
using it will be non-migratable.
enabled
boolean
kvm object
Configure how KVM presence is exposed to the guest.
hidden
boolean
Hide the KVM hypervisor from standard MSR based discovery.
Defaults to false
pvspinlock object
Notify the guest that the host supports paravirtual spinlocks.
For older kernels this feature should be explicitly disabled.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
smm object
SMM enables/disables System Management Mode.
TSEG not yet implemented.
enabled
boolean
Enabled determines if the feature should be enabled or disabled on the guest.
Defaults to true.
firmware object
Firmware.
acpi object
Information that can be set in the ACPI table
msdmNameRef
string
Similar to SlicNameRef, another ACPI entry that is used in more recent Windows versions.
The above points to the spec of MSDM too.
slicNameRef
string
SlicNameRef should match the volume name of a secret object. The data in the secret should
be a binary blob that follows the ACPI SLIC standard, see:
https://learn.microsoft.com/en-us/previous-versions/windows/hardware/design/dn653305(v=vs.85)
bootloader object
Settings to control the bootloader that is used.
bios object
If set (default), BIOS will be used.
useSerial
boolean
If set, the BIOS output will be transmitted over serial
efi object
If set, EFI will be used instead of BIOS.
persistent
boolean
If set to true, Persistent will persist the EFI NVRAM across reboots.
Defaults to false
secureBoot
boolean
If set, SecureBoot will be enabled and the OVMF roms will be swapped for
SecureBoot-enabled ones.
Requires SMM to be enabled.
Defaults to true
kernelBoot object
Settings to set the kernel for booting.
container object
Container defines the container that containes kernel artifacts
image
string required
Image that contains initrd / kernel files.
imagePullPolicy
string
Image pull policy.
One of Always, Never, IfNotPresent.
Defaults to Always if :latest tag is specified, or IfNotPresent otherwise.
Cannot be updated.
More info: https://kubernetes.io/docs/concepts/containers/images#updating-images
imagePullSecret
string
ImagePullSecret is the name of the Docker registry secret required to pull the image. The secret must already exist.
initrdPath
string
the fully-qualified path to the ramdisk image in the host OS
kernelPath
string
The fully-qualified path to the kernel image in the host OS
kernelArgs
string
Arguments to be passed to the kernel at boot time
serial
string
The system-serial-number in SMBIOS
uuid
string
UUID reported by the vmi bios.
Defaults to a random generated uid.
ioThreads object
IOThreads specifies the IOThreads options.
supplementalPoolThreadCount
integer
SupplementalPoolThreadCount specifies how many iothreads are allocated for the supplementalPool policy.
format:
int32
ioThreadsPolicy
string
Controls whether or not disks will share IOThreads.
Omitting IOThreadsPolicy disables use of IOThreads.
One of: shared, auto, supplementalPool
launchSecurity object
Launch Security setting of the vmi.
sev object
AMD Secure Encrypted Virtualization (SEV).
attestation
object
If specified, run the attestation process for a vmi.
dhCert
string
Base64 encoded guest owner's Diffie-Hellman key.
policy object
Guest policy flags as defined in AMD SEV API specification.
Note: due to security reasons it is not allowed to enable guest debugging. Therefore NoDebug flag is not exposed to users and is always true.
encryptedState
boolean
SEV-ES is required.
Defaults to false.
session
string
Base64 encoded session blob.
snp
object
AMD SEV-SNP flags defined by the SEV-SNP specifications.
tdx
object
Intel Trust Domain Extensions (TDX).
machine object
Machine type.
type
string
QEMU machine type is the actual chipset of the VirtualMachineInstance.
memory object
Memory allow specifying the VMI memory features.
guest
string | integer
Guest allows to specifying the amount of memory which is visible inside the Guest OS.
The Guest must lie between Requests and Limits from the resources section.
Defaults to the requested memory in the resources section if not specified.
string pattern:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$hugepages object
Hugepages allow to use hugepages for the VirtualMachineInstance instead of regular memory.
pageSize
string
PageSize specifies the hugepage size, for x86_64 architecture valid values are 1Gi and 2Mi.
maxGuest
string | integer
MaxGuest allows to specify the maximum amount of memory which is visible inside the Guest OS.
The delta between MaxGuest and Guest is the amount of memory that can be hot(un)plugged.
string pattern:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$reservedOverhead object
ReservedOverhead configures the memory overhead applied to a VM
and its characteristics.
addedOverhead
string | integer
AddedOverhead determines the memory overhead that will be reserved
for the VM. It increases the virt-launcher pod memory limit.
string pattern:
^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$
memLock
string
RequiresLock determines whether the VM's and its overhead memory
need to be locked or not. It is a common practice to enable this
if vDPA, VFIO or any other specialized hardware that depends on
DMA is being used by the VM.
False - (Default) memory lock RLimits are not modified.
True - Memory lock RLimits will be updated to consider VM memory
size and memory overhead
enum:
NotRequired, Required
rebootPolicy
string
RebootPolicy specifies how the guest should behave on reboot.
Reboot (default): The guest is allowed to reboot silently.
Terminate: The VMI will be terminated on guest reboot, allowing
higher level controllers (such as the VM controller) to recreate
the VMI with any updated configuration such as boot order changes.
enum:
Reboot, Terminateresources object
Resources describes the Compute Resources required by this vmi.
limits
object
Limits describes the maximum amount of compute resources allowed.
Valid resource keys are "memory" and "cpu".
overcommitGuestOverhead
boolean
Don't ask the scheduler to take the guest-management overhead into account. Instead
put the overhead only into the container's memory limit. This can lead to crashes if
all memory is in use on a node. Defaults to false.
requests
object
Requests is a description of the initial vmi resources.
Valid resource keys are "memory" and "cpu".
selector object required
Selector is a label query over a set of VMIs.
Required.
matchExpressions []object
matchExpressions is a list of label selector requirements. The requirements are ANDed.
key
string required
key is the label key that the selector applies to.
operator
string required
operator represents a key's relationship to a set of values.
Valid operators are In, NotIn, Exists and DoesNotExist.
values
[]string
values is an array of string values. If the operator is In or NotIn,
the values array must be non-empty. If the operator is Exists or DoesNotExist,
the values array must be empty. This array is replaced during a strategic
merge patch.
matchLabels
object
matchLabels is a map of {key,value} pairs. A single {key,value} in the matchLabels
map is equivalent to an element of matchExpressions, whose key field is "key", the
operator is "In", and the values array contains only "value". The requirements are ANDed.
No matches. Try .spec.domain for an exact path