Kubernetes CLI

Deploy Virtual Servers via the Kubernetes CLI

Virtual Servers are deployed to CoreWeave Cloud as Custom Resource Definitions (CRDs), so the kubectl command line tool may be used to deploy Virtual Servers onto CoreWeave Cloud. CRDs may also be edited from the Cloud UI using the YAML editor on the Virtual Servers deployment page.

Prerequisites

Before you can access CoreWeave Cloud, you must first request an account.

To use the Kubernetes CLI as your deployment method, you will first need to obtain valid access credentials in the form of a kubeconfig file. See Obtain Access Credentials for more information.

Configuration examples

CoreWeave provides example YAML manifests on GitHub.

Configuration quick reference

The table below is intended as a quick-reference guide for all available configuration options using the Kubernetes CLI deployment method. Learn more about each configuration option in their respective pages under Virtual Server Configuration Options.

FieldTypeDescription

String

Defines the region where the Virtual Server is deployed

{}

Defines the Operating System type

String

The Operating System type - Linux/Windows

Defines affinity for Virtual Server

os.enableUEFIBoot

Boolean

Enable the UEFI bootloader

{}

Defines the resources and devices allocated to the Virtual Server

resources.definition

String

The resource definition - defaults to 'a'

resources.cpu

{}

Defines the CPU allocation

resources.cpu.type

String

The type of CPU to allocate

resources.cpu.count

Int

The number of CPU cores to allocate

resources.gpu

{}

Defines the GPU allocation

resources.gpu.type

String

The type of GPU to allocate

resources.gpu.count

Int

The number of GPU(s) to allocate

resources.memory

String

The amount of memory to allocate

{}

Defines the root storage and additional storage devices

{}

storage.root.size

String

The volume size

storage.root.source

The DataVolume source for the root file system

storage.root.storageClassName

String

The storage class name for the root PVC

storage.root.volumeMode

The volume mode for the root PVC

storage.root.accessMode

The access mode name for the root PVC

storage.root.ephemeral

Boolean

Sets whether the root disk is ephemeral

storage.additionalDisks

[]

A list of PVC references to be added as disk devices

storage.additionalDisks[ ].name

String

Name of the disk

storage.additionalDisks[ ].spec

The VolumeSource for the disk

storage.additionalDisks[].readOnly

Boolean

Whether or not the additional disk is readOnly; default is false; see: Read-only additional disks

storage.additionalDisks[].serial

String

The root disk serial number, when not specified Virtual Server generates serial and preserves between restarts.

storage.filesystems

[]

A list of PVC references to be mounted

storage.filesystems[ ].name

String

Name of the mount

storage.filesystems[ ].mountPoint

String

Desired mount point, defaults to /mnt if not specified

storage.filesystems[ ].spec

The VolumeSource for the file system mount

storage.swap

String

Adds swap volume to system in specific size.

[]

A list of users to be added by cloud-init (if supported by the OS)

users[ ].username

String

Username for the user

users[ ].password

String

Password for the user

users[ ].sshpublickey

String

An SSH public key for the user

{}

Defines the network configuration

network.directAttachLoadBalancerIP

Boolean

Directly attach a loadbalancer IP to the Virtual Server

network.floatingIPs

[]

A list of service references to be added as floating IPs

network.floatingIPs[ ].serviceName

String

Name of the service

network.tcp

{}

Defines the TCP network configuration

network.tcp.ports

[]

List of TCP ports to expose

network.udp

{}

Defines the UDP network configuration

network.udp.ports

[]

List of UDP ports to expose

network.public

Boolean

Determines whether a public IP will be assigned

network.macAddress

String

Sets the MAC address for the Virtual Server - if not provided, the Virtual Server generates a unicast/local type MAC address

network.dnsConfig

Defines the DNS parameters of the VS. Defult value is DNSClusterFirst.

network.dnsPolicy

Sets the DNS policy for VS. The default value is ClustrFirst

Firmware identification fields

firmware.UUID

String

UUID reported by the VMI bios; defaults to a randomly generated UUID

firmware.Serial

String

The system-serial-number in SMBIOS.

cloudInit [¹]

String

Define any cloud-init parameters

Defines the RunStrategy parameter. Default value is RerunOnFailure.

Boolean

Enables virtio-transitional to support compatibility with old guest operating systems. Default value is false.

Number

Specifies the number in seconds before the guest is killed. Allows shutting down operating system gracefully. Defaults to 300 for Windows, 60 for Linux.

Boolean

Defines whether or not the Virtual Server will be started as soon as it is created and initialized

Last updated