Default Configuration File Options
Lists the options that can be included in an Oracle CNE CLI default configuration file.
The default configuration file must be in YAML format and saved to $HOME/.ocne/defaults.yaml
. The file can contain any of the following
options:
-
autoStartUI
-
Sets whether a tunnel to the Oracle CNE UI service is created when a cluster is instantiated, and starts the default browser to load the UI. For example:
autoStartUI: true
-
bootVolumeContainerImage
-
The container image registry and tag that contains an Oracle Container Host for Kubernetes (OCK) bootable image. The default is container-registry.oracle.com/olcne/ock:1.32. For example:
bootVolumeContainerImage: container-registry.oracle.com/olcne/ock:1.32
-
clusterDefinition
-
The path to a cluster configuration file. Provide this extra layer of configuration for clusters that use complex configuration that isn't provided by this default configuration file. For example:
clusterDefinition: mycluster.yaml
-
clusterDefinitionInline
-
Specifies in-line configuration options. Provide this extra layer of configuration for clusters that use complex configuration that isn't provided by this default configuration file. This option can't be used with
clusterDefinition
. For example:clusterDefinitionInline: | key1: value1 key2: value2
-
cni
-
The Container Networking Interface (CNI) provider to install when the cluster is instantiated. The value can be any CNI available with Oracle CNE, or
none
if another CNI is to be deployed either manually or using an application catalog.Note:
Multus can't be used as the primary CNI. Multus is available as an application in the default application catalog. If you install the Multus application, set this option to
none
.For example:
cni: flannel
cni: none
-
communityCatalog
-
Sets whether the Artifact Hub application catalog is installed. If this is set to
true
, the catalog is installed. If this is set tofalse
, the catalog isn't installed. The default isfalse
. For example:communityCatalog: true
-
ephemeralCluster
-
Allows customization of any short-lived clusters that might be spawned to perform tasks that can't be completed on the host system. This is often used for changing boot OCK images or deploying Kubernetes Cluster API resources. The options you can use are:
-
name
-
The name of the cluster. For example:
ephemeralCluster: name: mycluster
-
preserve
-
Sets whether the ephemeral cluster is automatically deleted after the work is complete. The default is
false
, so ephemeral clusters are deleted after they're used. For example:ephemeralCluster: preserve: true
-
node
-
Sets the configuration for the VMs. For example:
ephemeralCluster: node: cpus: 2 memory: 4GB storage: 15GB
-
-
extraIgnition
-
The path to an Ignition file that includes extra Ignition information to include when creating a cluster, or joining nodes to a cluster. The Ignition information must comply with the Ignition specification v3.4.0, as listed in the upstream Ignition documentation, and written in YAML using the Butane Fedora CoreOS Specification v1.5.0, as described in the upstream Butane documentation. For example:
extraIgnition: /home/username/.ocne/ignition.ign
-
extraIgnitionInline
-
Extra Ignition information to include when creating a cluster, or joining nodes to a cluster. The Ignition information must comply with the Ignition specification v3.4.0, as listed in the upstream Ignition documentation, and written in YAML using the Butane Fedora CoreOS Specification v1.5.0, as described in the upstream Butane documentation. The format must be:
extraIgnitionInline: | key1: value1 key2: value2 ...
-
headless
-
Sets whether the Oracle CNE UI is installed. If this is set to
true
, the UI isn't installed. The default isfalse
. For example:headless: true
-
kubeApiServerBindPort
-
Sets the port on which the Kubernetes API Server is exposed. The default is
6443
. For example:kubeApiServerBindPort: 6443
-
kubeApiServerBindPortAlt
-
Sets the port on which the Kubernetes API Server listens when deploying a Highly Available cluster using the Keepalived and NGINX load balancer. The default is
6444
. For example:kubeApiServerBindPortAlt: 6444
-
kubeconfig
-
The path to the
kubeconfig
file to use for operations that require a running cluster. For example:kubeconfig: /home/username/.kube/kubeconfig.utilitycluster
-
kubeProxyMode
-
The mode for
kube-proxy
. This can be set to eitheriptables
oripvs
. The default isiptables
. For example:kubeProxyMode: ipvs
For more information on the
kube-proxy
modes, see the upstream Kubernetes documentation. -
kubernetesVersion
-
This defines the Kubernetes version. The default is the latest version. For example:
kubernetesVersion: 1.32
-
osRegistry
-
Combined with
osTag
, this identifies an OSTree image in a container registry. It specifies the OSTree transport and the container registry URI.Possible prefixes for the transport are:
ostree-image-signed ostree-remote-image ostree-unverified-image ostree-unverified-registry
The default value is:
osRegistry: ostree-unverified-registry:container-registry.oracle.com/olcne/ock-ostree
-
osTag
-
Combined with
osRegistry
, this identifies an OSTree image in a container registry. It specifies the tag for the image. For example:osTag: 1.32
-
password
-
A hashed password for the OCK image user (
ocne
) to authenticate with cluster nodes. For example:password: $6$jfkldjfsd$n1YMnpdxlGXO...
Surrounding the password with quotes is optional.
You can use the
openssl
utility to create a hashed password. For example, to generate a hashed password with the SHA512 algorithm and an automatic salt:openssl passwd -6 -salt password
To generate a SHA512 hashed password using the provided salt phrase:
openssl passwd -6 -salt saltphrase password
-
podSubnet
-
The subnet to use for the pod network. The CNI is automatically configured to use this subnet. For example:
podSubnet: 10.244.0.0/16
-
providers
-
Specifies provider configuration options. For example:
providers: byo: options libvirt: options none: options oci: options olvm: options
The options for each provider are listed in:
-
proxy
-
The proxy server information. This information is configured on the Kubernetes nodes. For example:
proxy: httpsProxy: http://myproxy.example.com:2138 httpProxy: http://myproxy.example.com:2138 noProxy: .example.com,127.0.0.1,localhost,169.254.169.254,10.96.0.0/12,10.244.0.0/16
-
quiet
-
Sets whether to reduce the messages printed by the
ocne
command. If this is set totrue
, the messages are reduced. If set tofalse
, the messages aren't reduced. The default isfalse
. For example:quiet: true
-
registry
-
Sets the registry from which to provision container images. The default is
container-registry.oracle.com
. For example:registry: myregistry.example.com
-
serviceSubnet
-
The subnet to use for the service network. The default is
10.96.0.0/12
. For example:serviceSubnet: 10.96.0.0/12
-
sshPublicKey
-
The public key of an RSA key pair for the OCK image user (
ocne
). Paste the contents of the public key file.For example:
sshPublicKey: | ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAA...
-
sshPublicKeyPath
-
The path to the public key of an RSA key pair for the OCK image user (
ocne
) to authenticate with cluster nodes.sshPublicKeyPath: /home/username/.ssh/id_rsa.ocne
Bring Your Own Provider Options
The options for the byo
provider are:
-
automaticTokenCreation
-
If set to
true
, any time a join token is required it's created automatically as part of the command. If it's set tofalse
, the token must be created manually. For example:providers: byo: automaticTokenCreation: false
-
networkInterface
-
Sets the network interface to which the CNI and other Kubernetes services bind. This option is required. For example:
providers: byo: networkInterface: enp1s0
libvirt Provider Options
The options for the libvirt
provider are:
-
controlPlaneNode
-
Sets the configuration options for control plane nodes. To specify sizes, use:
-
M
: megabytes -
G
: gigabytes -
Mi
: mebibytes -
Gi
: gibibytes
providers: libvirt: controlPlaneNode: cpu: 2 memory: 16Gi storage: 8Gi
-
-
network
-
The name of the virtual network to use for domains. For example:
providers: libvirt: network: bridge-1
-
sshKey
-
The path to an SSH key to use for SSH connections. For example:
providers: libvirt: sshKey: /home/username/.ssh/id_rsa.ocne
-
storagePool
-
The name of the storage pool to use for OCK images. For example:
providers: libvirt: storagePool: mypool
-
uri
-
The default value for the libvirt connection URI. For example, for a local connection:
providers: libvirt: uri: qemu:///system
And for a remote connection:
providers: libvirt: uri: qemu+ssh://user@host/system
-
workerNode
-
Sets the configuration options for worker nodes. To specify sizes, use:
-
M
: megabytes -
G
: gigabytes -
Mi
: mebibytes -
Gi
: gibibytes
providers: libvirt: workerNode: cpu: 2 memory: 16Gi storage: 8Gi
-
OCI Provider Options
The options for the oci
provider are:
-
compartment
-
The OCI compartment in which to deploy resources. This can be either the path to a compartment (for example,
mytenancy/mycompartment
), or the OCID of a compartment. For example:providers: oci: compartment: OCID
-
controlPlaneShape
-
The name of the shape to use for compute instances when creating control plane nodes. For example:
providers: oci: controlPlaneShape: shape: VM.Standard.E4.Flex ocpus: 2
-
imageBucket
-
The OCID or name of a bucket to use to store OCK boot images when they're uploaded to OCI object storage. The default name is
ocne-images
. For example:providers: oci: imageBucket: ocne-images
-
images
-
The OCI OCIDs of the OCK images to use as the initial disk image for any compute resources. Sets the options for the
amd64
andarm64
architectures. For example:providers: oci: images: amd64: OCID arm64: OCID
-
kubeconfig
-
The path to the
kubeconfig
file to use for the target management cluster. For example:providers: oci: kubeconfig: /home/username/.kube/kubeconfig.mgmtcluster
-
loadBalancer
-
The OCIDs for subnets to use when provisioning OCI load balancers for default deployments. For example:
providers: oci: loadBalancer: subnet1: OCID subnet2: OCID
-
namespace
-
The Kubernetes namespace where the Kubernetes Cluster API resources are to be deployed.
providers: oci: namespace: mynamespace
-
selfManaged
-
Sets whether a cluster is self-managing. If set to
true
, the cluster contains the necessary controllers and resources to manage its own life cycle. If set tofalse
, or not set, those resources remain in the initial administration cluster. For example:providers: oci: selfManaged: true
-
profile
-
Sets the OCI CLI profile to use. This is the name of the profile in the OCI CLI configuration file. The default profile is
DEFAULT
. For example:providers: oci: profile: MYTENANCY
-
vcn
-
The OCID of the Virtual Cloud Network to use when creating load balancers for default deployments.
providers: oci: vcn: OCID
-
workerShape
-
The name of the shape to use for compute instances when creating worker nodes. For example:
providers: oci: workerShape: shape: VM.Standard.E4.Flex ocpus: 2
Oracle Linux Virtualization Manager Provider Options
The options for the olvm
provider are:
-
controlPlaneMachine
-
Sets the options for the control plane VM nodes. The options are:
olvmNetwork
: The network settings for VMs, which includes:-
networkName
: The Oracle Linux Virtualization Manager network name. This must exist in the Oracle Linux Virtualization Manager instance. -
vnicName
: The Oracle Linux Virtualization Manager VNIC name. This is optional. -
vnicProfileName
: The Oracle Linux Virtualization Manager VNIC profile name. This must exist in the Oracle Linux Virtualization Manager instance.
olvmOvirtClusterName
: The name of the Oracle Linux Virtualization Manager cluster. This must exist in the data center.virtualMachine
: Sets the options for VMs. The options are:-
cpu
: Information about the CPU. The options are:-
topology
:-
architecture
: The architecture of the CPU. The default isx86_64
. -
cores
: The number of cores. The default is2
. -
sockets
: The number of sockets. The default is2
. -
threads
: The number of threads. The default is1
.
-
-
-
memory
: The size of memory for VMs. The default is7GB
. -
network
: Sets the network options for VMs. The options are:-
gateway
: The IP address of the network gateway for VMs. -
interface
: The network interface name for VMs. This is optional. The default isenp1s0
. -
interfaceType
: The network interface type for VMs. This is optional. The default isvirtio
. -
ipv4
: The IPv4 network configuration for VMs. This is mandatory. The options are:-
subnet
: The IPv4 subnet. -
ipAddresses
: The IPv4 addresses that can be used. This is a comma separated list, with any combination of CIDRs, IP ranges (inclusive), and IPs. Spaces after commas are optional. For example:192.0.2.0/24, 192.0.2.10-192.0.2.20, 192.0.2.21
-
-
ipv6
: The IPv6 network configuration for VMs. This is optional. The options are:-
ipAddresses
: The IPv6 addresses that can be used. This is a comma separated list. Spaces after commas are optional. This option is required if IPv6 is used. For example:2001:db8:0f01::1-2001:db8:0f01::9/64
-
-
vmTemplateName
: The name of the Oracle Linux Virtualization Manager VM template. This must exist in the Oracle Linux Virtualization Manager instance.For example:
providers: olvm: controlPlaneMachine: olvmOvirtClusterName: Default vmTemplateName: ock-1.32 olvmNetwork: networkName: kvm-vlan vnicName: nic-1 vnicProfileName: kvm-vlan virtualMachine: memory: "8GB" cpu: topology: cores: 8 sockets: 10 threads: 2 network: gateway: 1.2.3.1 interface: enp1s0 interfaceType: virtio ipv4: subnet: 192.0.0.0/24 ipAddresses: 192.0.2.0/24, 192.0.2.10-192.0.2.20, 192.0.2.21 ipv6: ipAddresses: 2001:db8:0f01::1-2001:db8:0f01::9/64
-
-
namespace
-
The Kubernetes namespace where the Kubernetes Cluster API resources are to be deployed in the management cluster. The default is
olvm
. For example:providers: olvm: namespace: mynamespace
-
olvmDatacenterName
-
The name of the Oracle Linux Virtualization Manager data center instance. This option is mandatory. For example:
providers: olvm: olvmDatacenterName: myolvm
-
olvmOCK
-
Sets the information needed to upload the Oracle Linux Virtualization ManagerOCK image using the
ocne image upload
command, and includes:-
diskName
: The name of the disk to be created in the storage domain when the image is upload. This is the disk name you specify when you create a VM template. -
diskSize
: The provisioned virtual disk size name to be used for the disk created in the storage domain. This is the disk space to be allocated for the VM, regardless of the size of the image, on disk. For example, the image might be 2.5GB, but the provisioned size could be 16GB. -
storageDomainName
: The name of an existing Oracle Linux Virtualization Manager storage domain where the image is to be uploaded.
For example:
providers: olvm: ovirtOCK: storageDomainName: olvm-data diskName: ock-1.32 diskSize: 16GB
-
-
olvmOvirtAPIServer
-
Sets the options for the Oracle Linux Virtualization Manager cluster inside the data centre. This information is used to connect to the Oracle Linux Virtualization Manager oVirt REST API server. The options are:
caConfigMap
: Sets the name and namespace of the ConfigMap containing the CA Certificate. This is optional, and includes:-
name
: The name of the ConfigMap. The default isolvm-ca
. -
namespace
: The namespace for the ConfigMap. The default isolvm
.
credentialsSecret
: Sets the name and namespace of the Secret containing the credentials needed to communicate with the Oracle Linux Virtualization Manager server, which includes:-
name
: The name of the Secret. The default isolvm-creds
. -
namespace
: The namespace for the Secret. The default isolvm
.
insecureSkipTLSVerify
: A Boolean to set whether to skip the validity check for the server's certificate when connecting to the Oracle Linux Virtualization Manager server Set this totrue
if the CA isn't needed or used. This is optional. The default isfalse
.serverCA
: The Oracle Linux Virtualization Manager root Certificate Authority (CA), inline. This is mutually exclusive with theserverCAPath
option. For information on obtaining the CA Certificate, see the oVirt upstream documentation.serverCAPath
: The path to the Oracle Linux Virtualization Manager root Certificate Authority (CA) Certificate. This is mutually exclusive with theserverCA
option.serverURL
: The URL to connect to the Oracle Linux Virtualization Manager data centre. This option is mandatory.For example:
providers: olvm: olvmOvirtAPIServer: serverURL: https://my.example.com/ovirt-engine serverCAPath: "/home/username/olvm/ca.crt" credentialsSecret: name: olvm-creds namespace: olvm caConfigMap: name: olvm-ca namespace: olvm insecureSkipTLSVerify: false
-
-
ovirtCsiDriver
-
Sets the configuration for the
ovirt-csi-driver
. These settings are optional. By default, theovirt-csi-driver
driver is automatically installed, along with the required namespace, credential Secret, CA Certificate, ConfigMap, and CsiDriver resources. The configuration options are:caConfigmapName
: Sets the name of the ConfigMap containing the CA Certificate.controllerPluginName
: Sets the name of the deployment for the controller plugin, which is part of the driver. The default isovirt-csi-controller
.credsSecretName
: Sets the name of the Secret containing the credentials needed to communicate with the Oracle Linux Virtualization Manager server. The default isovirt-csi-creds
.csiDriverName
: Sets the name of the CsiDriver. This name is used when you create a StorageClass (the value of theprovisioner
field). The default iscsi.ovirt.org
.install
: A Boolean to set whether to install the driver and the required resources. The default istrue
.namespace
: Sets the namespace where the driver, and all related resources, are created. The default isovirt-csi
.nodePluginName
: Sets the name of the daemonset for the node plugin, which is part of the driver. The default isovirt-csi-node
.For example:
providers: olvm: ovirtCsiDriver: install: true caConfigmapName: ovirt-csi-ca.crt controllerPluginName: ovirt-csi-controller credsSecretName: ovirt-csi-creds csiDriverName: csi.ovirt.org namespace: ovirt-csi nodePluginName: ovirt-csi-node
-
workerMachine
-
Sets the options for the worker VM nodes. The options are:
olvmNetwork
: The network settings for VMs, which includes:-
networkName
: The Oracle Linux Virtualization Manager network name. This must exist in the Oracle Linux Virtualization Manager instance. -
vnicName
: The Oracle Linux Virtualization Manager VNIC name. This is optional. -
vnicProfileName
: The Oracle Linux Virtualization Manager VNIC profile name. This must exist in the Oracle Linux Virtualization Manager instance.
olvmOvirtClusterName
: The name of the Oracle Linux Virtualization Manager cluster. This must exist in the data center.virtualMachine
: Sets the options for VMs. The options are:-
cpu
: Information about the CPU. The options are:-
topology
:-
architecture
: The architecture of the CPU. The default isx86_64
. -
cores
: The number of cores. The default is2
. -
sockets
: The number of sockets. The default is2
. -
threads
: The number of threads. The default is1
.
-
-
-
memory
: The size of memory for VMs. The default is16GB
. -
network
: Sets the network options for VMs. The options are:-
gateway
: The IP address of the network gateway for VMs. -
interface
: The network interface name for VMs. This is optional. The default isenp1s0
. -
interfaceType
: The network interface type for VMs. This is optional. The default isvirtio
. -
ipv4
: The IPv4 network configuration for VMs. This is mandatory. The options are:-
subnet
: The IPv4 subnet. -
ipAddresses
: The IPv4 addresses that can be used. This is a comma separated list, with any combination of CIDRs, IP ranges (inclusive), and IPs. Spaces after commas are optional. For example:192.0.2.0/24, 192.0.2.10-192.0.2.20, 192.0.2.21
-
-
ipv6
: The IPv6 network configuration for VMs. This is optional. The options are:-
ipAddresses
: The IPv6 addresses that can be used. This is a comma separated list. Spaces after commas are optional. This option is required if IPv6 is used. For example:2001:db8:0f01::1-2001:db8:0f01::9/64
-
-
vmTemplateName
: The name of the Oracle Linux Virtualization Manager VM template. This must exist in the Oracle Linux Virtualization Manager instance.For example:
providers: olvm: workerMachine: olvmOvirtClusterName: Default vmTemplateName: ock-1.32 olvmNetwork: networkName: kvm-vlan vnicName: nic-1 vnicProfileName: kvm-vlan virtualMachine: memory: "16GB" cpu: topology: cores: 6 sockets: 6 threads: 3 network: gateway: 1.2.3.1 interface: enp1s0 interfaceType: virtio ipv4: subnet: 192.0.0.0/24 ipAddresses: 192.0.2.0/24, 192.0.2.21-192.0.2.30, 192.0.2.32 ipv6: ipAddresses: 2001:db8:0f01::1-2001:db8:0f01::9/64
-