Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 10 additions & 0 deletions crds/clustervirtualimages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,16 @@ spec:
With this resource in the cluster, a container image is created and stored in a dedicated Deckhouse Virtualization Container Registry (DVCR).

**Note:** The `metadata.name` field must comply with [Kubernetes object naming conventions](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/) and must not exceed 48 characters.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: ClusterVirtualImage
metadata:
name: ubuntu-24-04
spec:
dataSource:
type: HTTP
http:
url: https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
properties:
apiVersion:
description: |-
Expand Down
7 changes: 7 additions & 0 deletions crds/nodeusbdevices.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,13 @@ spec:
Represents a USB device discovered on a specific node in the cluster.
This resource is created automatically by the DRA (Dynamic Resource Allocation) system
when a USB device is detected on a node.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: NodeUSBDevice
metadata:
name: logitech-webcam
spec:
assignedNamespace: my-project
properties:
apiVersion:
description: |-
Expand Down
14 changes: 14 additions & 0 deletions crds/virtualdisks.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,20 @@ spec:
Once a VirtualDisk is created, the following fields in `.spec.persistentVolumeClaim` can be changed: `size` and `storageClassName`. All other fields are immutable.

**Note:** The `metadata.name` field must comply with [Kubernetes object naming conventions](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/) and must not exceed 60 characters.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualDisk
metadata:
name: linux-vm-root
spec:
persistentVolumeClaim:
storageClassName: rv-thin-r2
size: 10Gi
dataSource:
type: ObjectRef
objectRef:
kind: VirtualImage
name: ubuntu-24-04
properties:
apiVersion:
description: |-
Expand Down
8 changes: 8 additions & 0 deletions crds/virtualdisksnapshots.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,14 @@ spec:
Provides a resource for creating snapshots of existing virtual disks, which can be used as data sources for generating new virtual disks.
When running, a VolumeSnapshot resource is created.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualDiskSnapshot
metadata:
name: linux-vm-root-snapshot
spec:
requiredConsistency: true
virtualDiskName: linux-vm-root
required:
- spec
properties:
Expand Down
11 changes: 11 additions & 0 deletions crds/virtualimages.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,17 @@ spec:
With this resource in the cluster, a container image is created and stored in a dedicated Deckhouse Virtualization Container Registry (DVCR) or PVC, with the data filled in from the source.

**Note:** The `metadata.name` field must comply with [Kubernetes object naming conventions](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/) and must not exceed 49 characters.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualImage
metadata:
name: ubuntu-24-04
spec:
storage: ContainerRegistry
dataSource:
type: HTTP
http:
url: https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
properties:
apiVersion:
description: |-
Expand Down
10 changes: 10 additions & 0 deletions crds/virtualmachineblockdeviceattachments.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,16 @@ spec:
description: |-
VirtualMachineBlockDeviceAttachment provides a hot plug for attaching a disk to a virtual machine.
Disks are always attached using the SCSI bus, regardless of the enableParavirtualization setting.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachineBlockDeviceAttachment
metadata:
name: attach-blank-disk
spec:
blockDeviceRef:
kind: VirtualDisk
name: blank-disk
virtualMachineName: linux-vm
properties:
apiVersion:
description: |-
Expand Down
8 changes: 8 additions & 0 deletions crds/virtualmachineclasses.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,14 @@ spec:
description: |-
VirtualMachineClass resource describes CPU requirements, node placement, and sizing policy for VM resources.
A resource cannot be deleted as long as it is used in one of the VMs.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachineClass
metadata:
name: host
spec:
cpu:
type: Host
properties:
apiVersion:
description: |-
Expand Down
8 changes: 8 additions & 0 deletions crds/virtualmachineipaddresses.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,14 @@ spec:
openAPIV3Schema:
description: |
Defines the IP address for a virtual machine.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachineIPAddress
metadata:
name: linux-vm-custom-ip
spec:
type: Static
staticIP: 10.66.20.77
properties:
apiVersion:
type: string
Expand Down
8 changes: 8 additions & 0 deletions crds/virtualmachineoperations.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -48,6 +48,14 @@ spec:
description:
VirtualMachineOperation enables declarative management of virtual
machine state changes.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachineOperation
metadata:
generateName: restart-linux-vm-
spec:
virtualMachineName: linux-vm
type: Restart
properties:
apiVersion:
description: |-
Expand Down
8 changes: 8 additions & 0 deletions crds/virtualmachinerestores.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,14 @@ spec:
description:
VirtualMachineRestore provides a resource for restoring a virtual
machine and all associated resources from a snapshot.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachineRestore
metadata:
name: restore-linux-vm
spec:
virtualMachineSnapshotName: linux-vm-snapshot
restoreMode: Safe
properties:
apiVersion:
description: |-
Expand Down
18 changes: 18 additions & 0 deletions crds/virtualmachines.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,24 @@ spec:
- `.spec.runPolicy`.

**Note:** The `metadata.name` field must comply with [Kubernetes object naming conventions](https://kubernetes.io/docs/concepts/overview/working-with-objects/names/) and must not exceed 63 characters.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachine
metadata:
name: linux-vm
spec:
virtualMachineClassName: generic
cpu:
cores: 1
coreFraction: 10%
memory:
size: 1Gi
provisioning:
type: UserData
userData: <USER_DATA>
blockDeviceRefs:
- kind: VirtualDisk
name: linux-vm-root
required:
- spec
properties:
Expand Down
12 changes: 12 additions & 0 deletions crds/virtualmachinesnapshotoperations.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,18 @@ spec:
description:
VirtualMachineSnapshotOperation enables declarative management
of virtual machine snapshot state changes.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachineSnapshotOperation
metadata:
name: vmsop-name
spec:
type: CreateVirtualMachine
virtualMachineSnapshotName: vm-snapshot-clone
createVirtualMachine:
mode: DryRun | Strict | BestEffort
nameReplacements: []
customization: {}
properties:
apiVersion:
description: |-
Expand Down
9 changes: 9 additions & 0 deletions crds/virtualmachinesnapshots.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,15 @@ spec:
description:
VirtualMachineSnapshot provides a resource for creating snapshots
of virtual machines.
x-examples:
- apiVersion: virtualization.deckhouse.io/v1alpha2
kind: VirtualMachineSnapshot
metadata:
name: linux-vm-snapshot
spec:
virtualMachineName: linux-vm
requiredConsistency: true
keepIPAddress: Never
properties:
apiVersion:
description: |-
Expand Down
Loading