Packages:
Resource Types:
BareMetalHost is the Schema for the baremetalhosts API
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | BareMetalHost | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
BareMetalHostSpec defines the desired state of BareMetalHost. |
false |
| status | object |
BareMetalHostStatus defines the observed state of BareMetalHost. |
false |
BareMetalHostSpec defines the desired state of BareMetalHost.
| Name | Type | Description | Required |
|---|---|---|---|
| online | boolean |
Should the host be powered on? If the host is currently in a stable
state (e.g. provisioned), its power state will be forced to match
this value. |
true |
| architecture | string |
CPU architecture of the host, e.g. "x86_64" or "aarch64". If unset,
eventually populated by inspection. |
false |
| automatedCleaningMode | enum |
When set to disabled, automated cleaning will be skipped
during provisioning and deprovisioning. Enum: metadata, disabled Default: metadata |
false |
| bmc | object |
How do we connect to the BMC (Baseboard Management Controller) on
the host? |
false |
| bootMACAddress | string |
The MAC address of the NIC used for provisioning the host. In case
of network boot, this is the MAC address of the PXE booting
interface. The MAC address of the BMC must never be used here! |
false |
| bootMode | enum |
Select the method of initializing the hardware during boot.
Defaults to UEFI. Legacy boot should only be used for hardware that
does not support UEFI correctly. Set to UEFISecureBoot to turn
secure boot on automatically after provisioning. Enum: UEFI, UEFISecureBoot, legacy |
false |
| consumerRef | object |
ConsumerRef can be used to store information about something
that is using a host. When it is not empty, the host is
considered "in use". The common use case is a link to a Machine
resource when the host is used by Cluster API. |
false |
| customDeploy | object |
A custom deploy procedure. This is an advanced feature that allows
using a custom deploy step provided by a site-specific deployment
ramdisk. Most users will want to use "image" instead. Setting this
field triggers provisioning. |
false |
| description | string |
Description is a human-entered text used to help identify the host. |
false |
| disablePowerOff | boolean |
When set to true, power off of the node will be disabled,
instead, a reboot will be used in place of power on/off |
false |
| externallyProvisioned | boolean |
ExternallyProvisioned means something else has provisioned the
image running on the host, and the operator should only manage
the power status. This field is used for integration with already
provisioned hosts and when pivoting hosts between clusters. If
unsure, leave this field as false. |
false |
| firmware | object |
Firmware (BIOS) configuration for bare metal server. If set, the
requested settings will be applied before the host is provisioned.
Only some vendor drivers support this field. An alternative is to
use HostFirmwareSettings resources that allow changing arbitrary
values and support the generic Redfish-based drivers. |
false |
| hardwareProfile | string |
What is the name of the hardware profile for this host?
Hardware profiles are deprecated and should not be used.
Use the separate fields Architecture and RootDeviceHints instead.
Set to "empty" to prepare for the future version of the API
without hardware profiles. |
false |
| image | object |
Image holds the details of the image to be provisioned. Populating
the image will cause the host to start provisioning. |
false |
| inspectionMode | enum |
Specifies the mode for host inspection.
"disabled" - no inspection will be performed
"agent" - normal agent-based inspection will run Enum: disabled, agent |
false |
| metaData | object |
MetaData holds the reference to the Secret containing host metadata
which is passed to the Config Drive. By default, metadata will be
generated for the host, so most users do not need to set this field. |
false |
| networkData | object |
NetworkData holds the reference to the Secret containing network
configuration which is passed to the Config Drive and interpreted
by the first boot software such as cloud-init. |
false |
| preprovisioningNetworkDataName | string |
PreprovisioningNetworkDataName is the name of the Secret in the
local namespace containing network configuration which is passed to
the preprovisioning image, and to the Config Drive if not overridden
by specifying NetworkData. |
false |
| raid | object |
RAID configuration for bare metal server. If set, the RAID settings
will be applied before the host is provisioned. If not, the current
settings will not be modified. Only one of the sub-fields
hardwareRAIDVolumes and softwareRAIDVolumes can be set at the same
time. |
false |
| rootDeviceHints | object |
Provide guidance about how to choose the device for the image
being provisioned. The default is currently to use /dev/sda as
the root device. |
false |
| taints | []object |
Taints is the full, authoritative list of taints to apply to
the corresponding Machine. This list will overwrite any
modifications made to the Machine on an ongoing basis. |
false |
| userData | object |
UserData holds the reference to the Secret containing the user data
which is passed to the Config Drive and interpreted by the
first-boot software such as cloud-init. The format of user data is
specific to the first-boot software. |
false |
How do we connect to the BMC (Baseboard Management Controller) on the host?
| Name | Type | Description | Required |
|---|---|---|---|
| address | string |
Address holds the URL for accessing the controller on the network.
The scheme part designates the driver to use with the host. |
true |
| credentialsName | string |
The name of the secret containing the BMC credentials (requires
keys "username" and "password"). |
true |
| disableCertificateVerification | boolean |
DisableCertificateVerification disables verification of server
certificates when using HTTPS to connect to the BMC. This is
required when the server certificate is self-signed, but is
insecure because it allows a man-in-the-middle to intercept the
connection. |
false |
ConsumerRef can be used to store information about something that is using a host. When it is not empty, the host is considered "in use". The common use case is a link to a Machine resource when the host is used by Cluster API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string |
API version of the referent. |
false |
| fieldPath | string |
If referring to a piece of an object instead of an entire object, this string
should contain a valid JSON/Go field access statement, such as desiredState.manifest.containers[2].
For example, if the object reference is to a container within a pod, this would take on a value like:
"spec.containers{name}" (where "name" refers to the name of the container that triggered
the event) or if no container name is specified "spec.containers[2]" (container with
index 2 in this pod). This syntax is chosen only to have some well-defined way of
referencing a part of an object. |
false |
| kind | string |
Kind of the referent.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds |
false |
| name | string |
Name of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names |
false |
| namespace | string |
Namespace of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/namespaces/ |
false |
| resourceVersion | string |
Specific resourceVersion to which this reference is made, if any.
More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency |
false |
| uid | string |
UID of the referent.
More info: https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#uids |
false |
A custom deploy procedure. This is an advanced feature that allows using a custom deploy step provided by a site-specific deployment ramdisk. Most users will want to use "image" instead. Setting this field triggers provisioning.
| Name | Type | Description | Required |
|---|---|---|---|
| method | string |
Custom deploy method name.
This name is specific to the deploy ramdisk used. If you don't have
a custom deploy ramdisk, you shouldn't use CustomDeploy. |
true |
Firmware (BIOS) configuration for bare metal server. If set, the requested settings will be applied before the host is provisioned. Only some vendor drivers support this field. An alternative is to use HostFirmwareSettings resources that allow changing arbitrary values and support the generic Redfish-based drivers.
| Name | Type | Description | Required |
|---|---|---|---|
| simultaneousMultithreadingEnabled | boolean |
Allows a single physical processor core to appear as several logical processors. Enum: true, false |
false |
| sriovEnabled | boolean |
SR-IOV support enables a hypervisor to create virtual instances of a PCI-express device, potentially increasing performance. Enum: true, false |
false |
| virtualizationEnabled | boolean |
Supports the virtualization of platform hardware. Enum: true, false |
false |
Image holds the details of the image to be provisioned. Populating the image will cause the host to start provisioning.
| Name | Type | Description | Required |
|---|---|---|---|
| url | string |
URL is a location of an image to deploy. |
true |
| checksum | string |
Checksum is the checksum for the image. Required for all formats
except for "live-iso". |
false |
| checksumType | enum |
ChecksumType is the checksum algorithm for the image, e.g md5, sha256 or sha512.
The special value "auto" can be used to detect the algorithm from the checksum.
If missing, MD5 is used. If in doubt, use "auto". Enum: md5, sha256, sha512, auto |
false |
| format | enum |
Format contains the format of the image (raw, qcow2, ...).
When set to "live-iso", an ISO 9660 image referenced by the url will
be live-booted and not deployed to disk. Enum: raw, qcow2, vdi, vmdk, live-iso |
false |
MetaData holds the reference to the Secret containing host metadata which is passed to the Config Drive. By default, metadata will be generated for the host, so most users do not need to set this field.
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
name is unique within a namespace to reference a secret resource. |
false |
| namespace | string |
namespace defines the space within which the secret name must be unique. |
false |
NetworkData holds the reference to the Secret containing network configuration which is passed to the Config Drive and interpreted by the first boot software such as cloud-init.
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
name is unique within a namespace to reference a secret resource. |
false |
| namespace | string |
namespace defines the space within which the secret name must be unique. |
false |
RAID configuration for bare metal server. If set, the RAID settings will be applied before the host is provisioned. If not, the current settings will not be modified. Only one of the sub-fields hardwareRAIDVolumes and softwareRAIDVolumes can be set at the same time.
| Name | Type | Description | Required |
|---|---|---|---|
| hardwareRAIDVolumes | []object |
The list of logical disks for hardware RAID, if rootDeviceHints isn't used, first volume is root volume.
You can set the value of this field to `[]` to clear all the hardware RAID configurations. |
false |
| softwareRAIDVolumes | []object |
The list of logical disks for software RAID, if rootDeviceHints isn't used, first volume is root volume.
If HardwareRAIDVolumes is set this item will be invalid.
The number of created Software RAID devices must be 1 or 2.
If there is only one Software RAID device, it has to be a RAID-1.
If there are two, the first one has to be a RAID-1, while the RAID level for the second one can be 0, 1, or 1+0.
As the first RAID device will be the deployment device,
enforcing a RAID-1 reduces the risk of ending up with a non-booting host in case of a disk failure.
Software RAID will always be deleted. |
false |
HardwareRAIDVolume defines the desired configuration of volume in hardware RAID.
| Name | Type | Description | Required |
|---|---|---|---|
| level | enum |
RAID level for the logical disk. The following levels are supported:
0, 1, 2, 5, 6, 1+0, 5+0, 6+0 (drivers may support only some of them). Enum: 0, 1, 2, 5, 6, 1+0, 5+0, 6+0 |
true |
| controller | string |
The name of the RAID controller to use. |
false |
| name | string |
Name of the volume. Should be unique within the Node. If not
specified, the name will be auto-generated. |
false |
| numberOfPhysicalDisks | integer |
Integer, number of physical disks to use for the logical disk.
Defaults to minimum number of disks required for the particular RAID
level. Minimum: 1 |
false |
| physicalDisks | []string |
Optional list of physical disk names to be used for the hardware RAID volumes. The disk names are interpreted
by the hardware RAID controller, and the format is hardware specific. |
false |
| rotational | boolean |
Select disks with only rotational (if set to true) or solid-state
(if set to false) storage. By default, any disks can be picked. |
false |
| sizeGibibytes | integer |
Size of the logical disk to be created in GiB. If unspecified or
set be 0, the maximum capacity of disk will be used for logical
disk. Minimum: 0 |
false |
SoftwareRAIDVolume defines the desired configuration of volume in software RAID.
| Name | Type | Description | Required |
|---|---|---|---|
| level | enum |
RAID level for the logical disk. The following levels are supported:
0, 1 and 1+0. Enum: 0, 1, 1+0 |
true |
| physicalDisks | []object |
A list of device hints, the number of items should be greater than or equal to 2. |
false |
| sizeGibibytes | integer |
Size of the logical disk to be created in GiB.
If unspecified or set be 0, the maximum capacity of disk will be used for logical disk. Minimum: 0 |
false |
RootDeviceHints holds the hints for specifying the storage location for the root filesystem for the image.
| Name | Type | Description | Required |
|---|---|---|---|
| deviceName | string |
A Linux device name like "/dev/vda", or a by-path link to it like
"/dev/disk/by-path/pci-0000:01:00.0-scsi-0:2:0:0". The hint must match
the actual value exactly. |
false |
| hctl | string |
A SCSI bus address like 0:0:0:0. The hint must match the actual
value exactly. |
false |
| minSizeGigabytes | integer |
The minimum size of the device in Gigabytes. Minimum: 0 |
false |
| model | string |
A vendor-specific device identifier. The hint can be a
substring of the actual value. |
false |
| rotational | boolean |
True if the device should use spinning media, false otherwise. |
false |
| serialNumber | string |
Device serial number. The hint must match the actual value
exactly. |
false |
| vendor | string |
The name of the vendor or manufacturer of the device. The hint
can be a substring of the actual value. |
false |
| wwn | string |
Unique storage identifier. The hint must match the actual value
exactly. |
false |
| wwnVendorExtension | string |
Unique vendor storage identifier. The hint must match the
actual value exactly. |
false |
| wwnWithExtension | string |
Unique storage identifier with the vendor extension
appended. The hint must match the actual value exactly. |
false |
Provide guidance about how to choose the device for the image being provisioned. The default is currently to use /dev/sda as the root device.
| Name | Type | Description | Required |
|---|---|---|---|
| deviceName | string |
A Linux device name like "/dev/vda", or a by-path link to it like
"/dev/disk/by-path/pci-0000:01:00.0-scsi-0:2:0:0". The hint must match
the actual value exactly. |
false |
| hctl | string |
A SCSI bus address like 0:0:0:0. The hint must match the actual
value exactly. |
false |
| minSizeGigabytes | integer |
The minimum size of the device in Gigabytes. Minimum: 0 |
false |
| model | string |
A vendor-specific device identifier. The hint can be a
substring of the actual value. |
false |
| rotational | boolean |
True if the device should use spinning media, false otherwise. |
false |
| serialNumber | string |
Device serial number. The hint must match the actual value
exactly. |
false |
| vendor | string |
The name of the vendor or manufacturer of the device. The hint
can be a substring of the actual value. |
false |
| wwn | string |
Unique storage identifier. The hint must match the actual value
exactly. |
false |
| wwnVendorExtension | string |
Unique vendor storage identifier. The hint must match the
actual value exactly. |
false |
| wwnWithExtension | string |
Unique storage identifier with the vendor extension
appended. The hint must match the actual value exactly. |
false |
The node this Taint is attached to has the "effect" on any pod that does not tolerate the Taint.
| Name | Type | Description | Required |
|---|---|---|---|
| effect | string |
Required. The effect of the taint on pods
that do not tolerate the taint.
Valid effects are NoSchedule, PreferNoSchedule and NoExecute. |
true |
| key | string |
Required. The taint key to be applied to a node. |
true |
| timeAdded | string |
TimeAdded represents the time at which the taint was added.
It is only written for NoExecute taints. Format: date-time |
false |
| value | string |
The taint value corresponding to the taint key. |
false |
UserData holds the reference to the Secret containing the user data which is passed to the Config Drive and interpreted by the first-boot software such as cloud-init. The format of user data is specific to the first-boot software.
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
name is unique within a namespace to reference a secret resource. |
false |
| namespace | string |
namespace defines the space within which the secret name must be unique. |
false |
BareMetalHostStatus defines the observed state of BareMetalHost.
| Name | Type | Description | Required |
|---|---|---|---|
| errorCount | integer |
ErrorCount records how many times the host has encoutered an error since the last successful operation Default: 0 |
true |
| errorMessage | string |
The last error message reported by the provisioning subsystem. |
true |
| operationalStatus | enum |
OperationalStatus holds the status of the host Enum: , OK, discovered, error, delayed, detached, servicing |
true |
| poweredOn | boolean |
The currently detected power state of the host. This field may get
briefly out of sync with the actual state of the hardware while
provisioning processes are running. |
true |
| provisioning | object |
Information tracked by the provisioner. |
true |
| errorType | enum |
ErrorType indicates the type of failure encountered when the
OperationalStatus is OperationalStatusError Enum: provisioned registration error, registration error, inspection error, preparation error, provisioning error, power management error, servicing error |
false |
| goodCredentials | object |
The last credentials we were able to validate as working. |
false |
| hardware | object |
The hardware discovered to exist on the host.
This field will be removed in the next API version in favour of the
separate HardwareData resource. |
false |
| hardwareProfile | string |
The name of the profile matching the hardware details.
Hardware profiles are deprecated and should not be relied on. |
false |
| lastUpdated | string |
LastUpdated identifies when this status was last observed. Format: date-time |
false |
| operationHistory | object |
OperationHistory holds information about operations performed
on this host. |
false |
| triedCredentials | object |
The last credentials we sent to the provisioning backend. |
false |
Information tracked by the provisioner.
| Name | Type | Description | Required |
|---|---|---|---|
| ID | string |
The hosts's ID from the underlying provisioning tool (e.g. the
Ironic node UUID). |
true |
| state | string |
An indicator for what the provisioner is doing with the host. |
true |
| bootMode | enum |
BootMode indicates the boot mode used to provision the host. Enum: UEFI, UEFISecureBoot, legacy |
false |
| customDeploy | object |
Custom deploy procedure applied to the host. |
false |
| firmware | object |
The firmware settings that have been applied. |
false |
| image | object |
Image holds the details of the last image successfully
provisioned to the host. |
false |
| raid | object |
The RAID configuration that has been applied. |
false |
| rootDeviceHints | object |
The root device hints used to provision the host. |
false |
Custom deploy procedure applied to the host.
| Name | Type | Description | Required |
|---|---|---|---|
| method | string |
Custom deploy method name.
This name is specific to the deploy ramdisk used. If you don't have
a custom deploy ramdisk, you shouldn't use CustomDeploy. |
true |
The firmware settings that have been applied.
| Name | Type | Description | Required |
|---|---|---|---|
| simultaneousMultithreadingEnabled | boolean |
Allows a single physical processor core to appear as several logical processors. Enum: true, false |
false |
| sriovEnabled | boolean |
SR-IOV support enables a hypervisor to create virtual instances of a PCI-express device, potentially increasing performance. Enum: true, false |
false |
| virtualizationEnabled | boolean |
Supports the virtualization of platform hardware. Enum: true, false |
false |
Image holds the details of the last image successfully provisioned to the host.
| Name | Type | Description | Required |
|---|---|---|---|
| url | string |
URL is a location of an image to deploy. |
true |
| checksum | string |
Checksum is the checksum for the image. Required for all formats
except for "live-iso". |
false |
| checksumType | enum |
ChecksumType is the checksum algorithm for the image, e.g md5, sha256 or sha512.
The special value "auto" can be used to detect the algorithm from the checksum.
If missing, MD5 is used. If in doubt, use "auto". Enum: md5, sha256, sha512, auto |
false |
| format | enum |
Format contains the format of the image (raw, qcow2, ...).
When set to "live-iso", an ISO 9660 image referenced by the url will
be live-booted and not deployed to disk. Enum: raw, qcow2, vdi, vmdk, live-iso |
false |
The RAID configuration that has been applied.
| Name | Type | Description | Required |
|---|---|---|---|
| hardwareRAIDVolumes | []object |
The list of logical disks for hardware RAID, if rootDeviceHints isn't used, first volume is root volume.
You can set the value of this field to `[]` to clear all the hardware RAID configurations. |
false |
| softwareRAIDVolumes | []object |
The list of logical disks for software RAID, if rootDeviceHints isn't used, first volume is root volume.
If HardwareRAIDVolumes is set this item will be invalid.
The number of created Software RAID devices must be 1 or 2.
If there is only one Software RAID device, it has to be a RAID-1.
If there are two, the first one has to be a RAID-1, while the RAID level for the second one can be 0, 1, or 1+0.
As the first RAID device will be the deployment device,
enforcing a RAID-1 reduces the risk of ending up with a non-booting host in case of a disk failure.
Software RAID will always be deleted. |
false |
HardwareRAIDVolume defines the desired configuration of volume in hardware RAID.
| Name | Type | Description | Required |
|---|---|---|---|
| level | enum |
RAID level for the logical disk. The following levels are supported:
0, 1, 2, 5, 6, 1+0, 5+0, 6+0 (drivers may support only some of them). Enum: 0, 1, 2, 5, 6, 1+0, 5+0, 6+0 |
true |
| controller | string |
The name of the RAID controller to use. |
false |
| name | string |
Name of the volume. Should be unique within the Node. If not
specified, the name will be auto-generated. |
false |
| numberOfPhysicalDisks | integer |
Integer, number of physical disks to use for the logical disk.
Defaults to minimum number of disks required for the particular RAID
level. Minimum: 1 |
false |
| physicalDisks | []string |
Optional list of physical disk names to be used for the hardware RAID volumes. The disk names are interpreted
by the hardware RAID controller, and the format is hardware specific. |
false |
| rotational | boolean |
Select disks with only rotational (if set to true) or solid-state
(if set to false) storage. By default, any disks can be picked. |
false |
| sizeGibibytes | integer |
Size of the logical disk to be created in GiB. If unspecified or
set be 0, the maximum capacity of disk will be used for logical
disk. Minimum: 0 |
false |
SoftwareRAIDVolume defines the desired configuration of volume in software RAID.
| Name | Type | Description | Required |
|---|---|---|---|
| level | enum |
RAID level for the logical disk. The following levels are supported:
0, 1 and 1+0. Enum: 0, 1, 1+0 |
true |
| physicalDisks | []object |
A list of device hints, the number of items should be greater than or equal to 2. |
false |
| sizeGibibytes | integer |
Size of the logical disk to be created in GiB.
If unspecified or set be 0, the maximum capacity of disk will be used for logical disk. Minimum: 0 |
false |
RootDeviceHints holds the hints for specifying the storage location for the root filesystem for the image.
| Name | Type | Description | Required |
|---|---|---|---|
| deviceName | string |
A Linux device name like "/dev/vda", or a by-path link to it like
"/dev/disk/by-path/pci-0000:01:00.0-scsi-0:2:0:0". The hint must match
the actual value exactly. |
false |
| hctl | string |
A SCSI bus address like 0:0:0:0. The hint must match the actual
value exactly. |
false |
| minSizeGigabytes | integer |
The minimum size of the device in Gigabytes. Minimum: 0 |
false |
| model | string |
A vendor-specific device identifier. The hint can be a
substring of the actual value. |
false |
| rotational | boolean |
True if the device should use spinning media, false otherwise. |
false |
| serialNumber | string |
Device serial number. The hint must match the actual value
exactly. |
false |
| vendor | string |
The name of the vendor or manufacturer of the device. The hint
can be a substring of the actual value. |
false |
| wwn | string |
Unique storage identifier. The hint must match the actual value
exactly. |
false |
| wwnVendorExtension | string |
Unique vendor storage identifier. The hint must match the
actual value exactly. |
false |
| wwnWithExtension | string |
Unique storage identifier with the vendor extension
appended. The hint must match the actual value exactly. |
false |
The root device hints used to provision the host.
| Name | Type | Description | Required |
|---|---|---|---|
| deviceName | string |
A Linux device name like "/dev/vda", or a by-path link to it like
"/dev/disk/by-path/pci-0000:01:00.0-scsi-0:2:0:0". The hint must match
the actual value exactly. |
false |
| hctl | string |
A SCSI bus address like 0:0:0:0. The hint must match the actual
value exactly. |
false |
| minSizeGigabytes | integer |
The minimum size of the device in Gigabytes. Minimum: 0 |
false |
| model | string |
A vendor-specific device identifier. The hint can be a
substring of the actual value. |
false |
| rotational | boolean |
True if the device should use spinning media, false otherwise. |
false |
| serialNumber | string |
Device serial number. The hint must match the actual value
exactly. |
false |
| vendor | string |
The name of the vendor or manufacturer of the device. The hint
can be a substring of the actual value. |
false |
| wwn | string |
Unique storage identifier. The hint must match the actual value
exactly. |
false |
| wwnVendorExtension | string |
Unique vendor storage identifier. The hint must match the
actual value exactly. |
false |
| wwnWithExtension | string |
Unique storage identifier with the vendor extension
appended. The hint must match the actual value exactly. |
false |
The last credentials we were able to validate as working.
| Name | Type | Description | Required |
|---|---|---|---|
| credentials | object |
SecretReference represents a Secret Reference. It has enough information to retrieve secret
in any namespace |
false |
| credentialsVersion | string |
|
false |
SecretReference represents a Secret Reference. It has enough information to retrieve secret in any namespace
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
name is unique within a namespace to reference a secret resource. |
false |
| namespace | string |
namespace defines the space within which the secret name must be unique. |
false |
The hardware discovered to exist on the host. This field will be removed in the next API version in favour of the separate HardwareData resource.
| Name | Type | Description | Required |
|---|---|---|---|
| cpu | object |
Details of the CPU(s) in the system. |
false |
| firmware | object |
System firmware information. |
false |
| hostname | string |
|
false |
| nics | []object |
List of network interfaces for the host. |
false |
| ramMebibytes | integer |
The host's amount of memory in Mebibytes. |
false |
| storage | []object |
List of storage (disk, SSD, etc.) available to the host. |
false |
| systemVendor | object |
System vendor information. |
false |
Details of the CPU(s) in the system.
| Name | Type | Description | Required |
|---|---|---|---|
| arch | string |
|
false |
| clockMegahertz | number |
ClockSpeed is a clock speed in MHz Format: double |
false |
| count | integer |
|
false |
| flags | []string |
|
false |
| model | string |
|
false |
System firmware information.
| Name | Type | Description | Required |
|---|---|---|---|
| bios | object |
The BIOS for this firmware |
false |
The BIOS for this firmware
| Name | Type | Description | Required |
|---|---|---|---|
| date | string |
The release/build date for this BIOS |
false |
| vendor | string |
The vendor name for this BIOS |
false |
| version | string |
The version of the BIOS |
false |
NIC describes one network interface on the host.
| Name | Type | Description | Required |
|---|---|---|---|
| ip | string |
The IP address of the interface. This will be an IPv4 or IPv6 address
if one is present. If both IPv4 and IPv6 addresses are present in a
dual-stack environment, two nics will be output, one with each IP. |
false |
| mac | string |
The device MAC address |
false |
| model | string |
The vendor and product IDs of the NIC, e.g. "0x8086 0x1572" |
false |
| name | string |
The name of the network interface, e.g. "en0" |
false |
| pxe | boolean |
Whether the NIC is PXE Bootable |
false |
| speedGbps | integer |
The speed of the device in Gigabits per second |
false |
| vlanId | integer |
The untagged VLAN ID Format: int32 Minimum: 0 Maximum: 4094 |
false |
| vlans | []object |
The VLANs available |
false |
VLAN represents the name and ID of a VLAN.
| Name | Type | Description | Required |
|---|---|---|---|
| id | integer |
VLANID is a 12-bit 802.1Q VLAN identifier Format: int32 Minimum: 0 Maximum: 4094 |
false |
| name | string |
|
false |
Storage describes one storage device (disk, SSD, etc.) on the host.
| Name | Type | Description | Required |
|---|---|---|---|
| alternateNames | []string |
A list of alternate Linux device names of the disk, e.g. "/dev/sda".
Note that this list is not exhaustive, and names may not be stable
across reboots. |
false |
| hctl | string |
The SCSI location of the device |
false |
| model | string |
Hardware model |
false |
| name | string |
A Linux device name of the disk, e.g.
"/dev/disk/by-path/pci-0000:01:00.0-scsi-0:2:0:0". This will be a name
that is stable across reboots if one is available. |
false |
| rotational | boolean |
Whether this disk represents rotational storage.
This field is not recommended for usage, please
prefer using 'Type' field instead, this field
will be deprecated eventually. |
false |
| serialNumber | string |
The serial number of the device |
false |
| sizeBytes | integer |
The size of the disk in Bytes Format: int64 |
false |
| type | enum |
Device type, one of: HDD, SSD, NVME. Enum: HDD, SSD, NVME |
false |
| vendor | string |
The name of the vendor of the device |
false |
| wwn | string |
The WWN of the device |
false |
| wwnVendorExtension | string |
The WWN Vendor extension of the device |
false |
| wwnWithExtension | string |
The WWN with the extension |
false |
System vendor information.
| Name | Type | Description | Required |
|---|---|---|---|
| manufacturer | string |
|
false |
| productName | string |
|
false |
| serialNumber | string |
|
false |
OperationHistory holds information about operations performed on this host.
| Name | Type | Description | Required |
|---|---|---|---|
| deprovision | object |
OperationMetric contains metadata about an operation (inspection,
provisioning, etc.) used for tracking metrics. |
false |
| inspect | object |
OperationMetric contains metadata about an operation (inspection,
provisioning, etc.) used for tracking metrics. |
false |
| provision | object |
OperationMetric contains metadata about an operation (inspection,
provisioning, etc.) used for tracking metrics. |
false |
| register | object |
OperationMetric contains metadata about an operation (inspection,
provisioning, etc.) used for tracking metrics. |
false |
OperationMetric contains metadata about an operation (inspection, provisioning, etc.) used for tracking metrics.
| Name | Type | Description | Required |
|---|---|---|---|
| end | string |
Format: date-time |
false |
| start | string |
Format: date-time |
false |
OperationMetric contains metadata about an operation (inspection, provisioning, etc.) used for tracking metrics.
| Name | Type | Description | Required |
|---|---|---|---|
| end | string |
Format: date-time |
false |
| start | string |
Format: date-time |
false |
OperationMetric contains metadata about an operation (inspection, provisioning, etc.) used for tracking metrics.
| Name | Type | Description | Required |
|---|---|---|---|
| end | string |
Format: date-time |
false |
| start | string |
Format: date-time |
false |
OperationMetric contains metadata about an operation (inspection, provisioning, etc.) used for tracking metrics.
| Name | Type | Description | Required |
|---|---|---|---|
| end | string |
Format: date-time |
false |
| start | string |
Format: date-time |
false |
The last credentials we sent to the provisioning backend.
| Name | Type | Description | Required |
|---|---|---|---|
| credentials | object |
SecretReference represents a Secret Reference. It has enough information to retrieve secret
in any namespace |
false |
| credentialsVersion | string |
|
false |
SecretReference represents a Secret Reference. It has enough information to retrieve secret in any namespace
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
name is unique within a namespace to reference a secret resource. |
false |
| namespace | string |
namespace defines the space within which the secret name must be unique. |
false |
BMCEventSubscription is the Schema for the fast eventing API
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | BMCEventSubscription | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
|
false |
| status | object |
|
false |
| Name | Type | Description | Required |
|---|---|---|---|
| context | string |
Arbitrary user-provided context for the event |
false |
| destination | string |
A webhook URL to send events to |
false |
| hostName | string |
A reference to a BareMetalHost |
false |
| httpHeadersRef | object |
A secret containing HTTP headers which should be passed along to the Destination
when making a request |
false |
A secret containing HTTP headers which should be passed along to the Destination when making a request
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
name is unique within a namespace to reference a secret resource. |
false |
| namespace | string |
namespace defines the space within which the secret name must be unique. |
false |
| Name | Type | Description | Required |
|---|---|---|---|
| error | string |
|
false |
| subscriptionID | string |
|
false |
DataImage is the Schema for the dataimages API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | DataImage | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
DataImageSpec defines the desired state of DataImage. |
false |
| status | object |
DataImageStatus defines the observed state of DataImage. |
false |
DataImageSpec defines the desired state of DataImage.
| Name | Type | Description | Required |
|---|---|---|---|
| url | string |
Url is the address of the dataImage that we want to attach
to a BareMetalHost |
true |
DataImageStatus defines the observed state of DataImage.
| Name | Type | Description | Required |
|---|---|---|---|
| attachedImage | object |
Currently attached DataImage |
false |
| error | object |
Error count and message when attaching/detaching |
false |
| lastReconciled | string |
Time of last reconciliation Format: date-time |
false |
Currently attached DataImage
| Name | Type | Description | Required |
|---|---|---|---|
| url | string |
|
true |
Error count and message when attaching/detaching
| Name | Type | Description | Required |
|---|---|---|---|
| count | integer |
|
true |
| message | string |
|
true |
FirmwareSchema is the Schema for the firmwareschemas API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | FirmwareSchema | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
FirmwareSchemaSpec defines the desired state of FirmwareSchema. |
false |
FirmwareSchemaSpec defines the desired state of FirmwareSchema.
| Name | Type | Description | Required |
|---|---|---|---|
| schema | map[string]object |
Map of firmware name to schema |
true |
| hardwareModel | string |
The hardware model associated with this schema |
false |
| hardwareVendor | string |
The hardware vendor associated with this schema |
false |
Additional data describing the firmware setting.
| Name | Type | Description | Required |
|---|---|---|---|
| allowable_values | []string |
The allowable value for an Enumeration type setting. |
false |
| attribute_type | enum |
The type of setting. Enum: Enumeration, String, Integer, Boolean, Password |
false |
| lower_bound | integer |
The lowest value for an Integer type setting. |
false |
| max_length | integer |
Maximum length for a String type setting. |
false |
| min_length | integer |
Minimum length for a String type setting. |
false |
| read_only | boolean |
Whether or not this setting is read only. |
false |
| unique | boolean |
Whether or not this setting's value is unique to this node, e.g.
a serial number. |
false |
| upper_bound | integer |
The highest value for an Integer type setting. |
false |
HardwareData is the Schema for the hardwaredata API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | HardwareData | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
HardwareDataSpec defines the desired state of HardwareData. |
false |
HardwareDataSpec defines the desired state of HardwareData.
| Name | Type | Description | Required |
|---|---|---|---|
| hardware | object |
The hardware discovered on the host during its inspection. |
false |
The hardware discovered on the host during its inspection.
| Name | Type | Description | Required |
|---|---|---|---|
| cpu | object |
Details of the CPU(s) in the system. |
false |
| firmware | object |
System firmware information. |
false |
| hostname | string |
|
false |
| nics | []object |
List of network interfaces for the host. |
false |
| ramMebibytes | integer |
The host's amount of memory in Mebibytes. |
false |
| storage | []object |
List of storage (disk, SSD, etc.) available to the host. |
false |
| systemVendor | object |
System vendor information. |
false |
Details of the CPU(s) in the system.
| Name | Type | Description | Required |
|---|---|---|---|
| arch | string |
|
false |
| clockMegahertz | number |
ClockSpeed is a clock speed in MHz Format: double |
false |
| count | integer |
|
false |
| flags | []string |
|
false |
| model | string |
|
false |
System firmware information.
| Name | Type | Description | Required |
|---|---|---|---|
| bios | object |
The BIOS for this firmware |
false |
The BIOS for this firmware
| Name | Type | Description | Required |
|---|---|---|---|
| date | string |
The release/build date for this BIOS |
false |
| vendor | string |
The vendor name for this BIOS |
false |
| version | string |
The version of the BIOS |
false |
NIC describes one network interface on the host.
| Name | Type | Description | Required |
|---|---|---|---|
| ip | string |
The IP address of the interface. This will be an IPv4 or IPv6 address
if one is present. If both IPv4 and IPv6 addresses are present in a
dual-stack environment, two nics will be output, one with each IP. |
false |
| mac | string |
The device MAC address |
false |
| model | string |
The vendor and product IDs of the NIC, e.g. "0x8086 0x1572" |
false |
| name | string |
The name of the network interface, e.g. "en0" |
false |
| pxe | boolean |
Whether the NIC is PXE Bootable |
false |
| speedGbps | integer |
The speed of the device in Gigabits per second |
false |
| vlanId | integer |
The untagged VLAN ID Format: int32 Minimum: 0 Maximum: 4094 |
false |
| vlans | []object |
The VLANs available |
false |
VLAN represents the name and ID of a VLAN.
| Name | Type | Description | Required |
|---|---|---|---|
| id | integer |
VLANID is a 12-bit 802.1Q VLAN identifier Format: int32 Minimum: 0 Maximum: 4094 |
false |
| name | string |
|
false |
Storage describes one storage device (disk, SSD, etc.) on the host.
| Name | Type | Description | Required |
|---|---|---|---|
| alternateNames | []string |
A list of alternate Linux device names of the disk, e.g. "/dev/sda".
Note that this list is not exhaustive, and names may not be stable
across reboots. |
false |
| hctl | string |
The SCSI location of the device |
false |
| model | string |
Hardware model |
false |
| name | string |
A Linux device name of the disk, e.g.
"/dev/disk/by-path/pci-0000:01:00.0-scsi-0:2:0:0". This will be a name
that is stable across reboots if one is available. |
false |
| rotational | boolean |
Whether this disk represents rotational storage.
This field is not recommended for usage, please
prefer using 'Type' field instead, this field
will be deprecated eventually. |
false |
| serialNumber | string |
The serial number of the device |
false |
| sizeBytes | integer |
The size of the disk in Bytes Format: int64 |
false |
| type | enum |
Device type, one of: HDD, SSD, NVME. Enum: HDD, SSD, NVME |
false |
| vendor | string |
The name of the vendor of the device |
false |
| wwn | string |
The WWN of the device |
false |
| wwnVendorExtension | string |
The WWN Vendor extension of the device |
false |
| wwnWithExtension | string |
The WWN with the extension |
false |
System vendor information.
| Name | Type | Description | Required |
|---|---|---|---|
| manufacturer | string |
|
false |
| productName | string |
|
false |
| serialNumber | string |
|
false |
HostFirmwareComponents is the Schema for the hostfirmwarecomponents API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | HostFirmwareComponents | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
HostFirmwareComponentsSpec defines the desired state of HostFirmwareComponents. |
false |
| status | object |
HostFirmwareComponentsStatus defines the observed state of HostFirmwareComponents. |
false |
HostFirmwareComponentsSpec defines the desired state of HostFirmwareComponents.
| Name | Type | Description | Required |
|---|---|---|---|
| updates | []object |
|
true |
FirmwareUpdate defines a firmware update specification.
| Name | Type | Description | Required |
|---|---|---|---|
| component | string |
|
true |
| url | string |
|
true |
HostFirmwareComponentsStatus defines the observed state of HostFirmwareComponents.
| Name | Type | Description | Required |
|---|---|---|---|
| components | []object |
Components is the list of all available firmware components and their information. |
false |
| conditions | []object |
Track whether updates stored in the spec are valid based on the schema |
false |
| lastUpdated | string |
Time that the status was last updated Format: date-time |
false |
| updates | []object |
Updates is the list of all firmware components that should be updated
they are specified via name and url fields. |
false |
FirmwareComponentStatus defines the status of a firmware component.
| Name | Type | Description | Required |
|---|---|---|---|
| component | string |
|
true |
| initialVersion | string |
|
true |
| currentVersion | string |
|
false |
| lastVersionFlashed | string |
|
false |
| updatedAt | string |
Format: date-time |
false |
Condition contains details for one aspect of the current state of this API Resource.
| Name | Type | Description | Required |
|---|---|---|---|
| lastTransitionTime | string |
lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. Format: date-time |
true |
| message | string |
message is a human readable message indicating details about the transition.
This may be an empty string. |
true |
| reason | string |
reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty. |
true |
| status | enum |
status of the condition, one of True, False, Unknown. Enum: True, False, Unknown |
true |
| type | string |
type of condition in CamelCase or in foo.example.com/CamelCase. |
true |
| observedGeneration | integer |
observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance. Format: int64 Minimum: 0 |
false |
FirmwareUpdate defines a firmware update specification.
| Name | Type | Description | Required |
|---|---|---|---|
| component | string |
|
true |
| url | string |
|
true |
HostFirmwareSettings is the Schema for the hostfirmwaresettings API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | HostFirmwareSettings | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
HostFirmwareSettingsSpec defines the desired state of HostFirmwareSettings. |
false |
| status | object |
HostFirmwareSettingsStatus defines the observed state of HostFirmwareSettings. |
false |
HostFirmwareSettingsSpec defines the desired state of HostFirmwareSettings.
| Name | Type | Description | Required |
|---|---|---|---|
| settings | map[string]int or string |
Settings are the desired firmware settings stored as name/value pairs. |
true |
HostFirmwareSettingsStatus defines the observed state of HostFirmwareSettings.
| Name | Type | Description | Required |
|---|---|---|---|
| settings | map[string]string |
Settings are the firmware settings stored as name/value pairs |
true |
| conditions | []object |
Track whether settings stored in the spec are valid based on the schema |
false |
| lastUpdated | string |
Time that the status was last updated Format: date-time |
false |
| schema | object |
FirmwareSchema is a reference to the Schema used to describe each
FirmwareSetting. By default, this will be a Schema in the same
Namespace as the settings but it can be overwritten in the Spec |
false |
Condition contains details for one aspect of the current state of this API Resource.
| Name | Type | Description | Required |
|---|---|---|---|
| lastTransitionTime | string |
lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. Format: date-time |
true |
| message | string |
message is a human readable message indicating details about the transition.
This may be an empty string. |
true |
| reason | string |
reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty. |
true |
| status | enum |
status of the condition, one of True, False, Unknown. Enum: True, False, Unknown |
true |
| type | string |
type of condition in CamelCase or in foo.example.com/CamelCase. |
true |
| observedGeneration | integer |
observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance. Format: int64 Minimum: 0 |
false |
FirmwareSchema is a reference to the Schema used to describe each FirmwareSetting. By default, this will be a Schema in the same Namespace as the settings but it can be overwritten in the Spec
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
`name` is the reference to the schema. |
true |
| namespace | string |
`namespace` is the namespace of the where the schema is stored. |
true |
HostUpdatePolicy is the Schema for the hostupdatepolicy API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | HostUpdatePolicy | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
HostUpdatePolicySpec defines the desired state of HostUpdatePolicy. |
false |
| status | object |
HostUpdatePolicyStatus defines the observed state of HostUpdatePolicy. |
false |
HostUpdatePolicySpec defines the desired state of HostUpdatePolicy.
| Name | Type | Description | Required |
|---|---|---|---|
| firmwareSettings | enum |
Defines policy for changing firmware settings Enum: onPreparing, onReboot |
false |
| firmwareUpdates | enum |
Defines policy for updating firmware Enum: onPreparing, onReboot |
false |
PreprovisioningImage is the Schema for the preprovisioningimages API.
| Name | Type | Description | Required |
|---|---|---|---|
| apiVersion | string | metal3.io/v1alpha1 | true |
| kind | string | PreprovisioningImage | true |
| metadata | object | Refer to the Kubernetes API documentation for the fields of the `metadata` field. | true |
| spec | object |
PreprovisioningImageSpec defines the desired state of PreprovisioningImage. |
false |
| status | object |
PreprovisioningImageStatus defines the observed state of PreprovisioningImage. |
false |
PreprovisioningImageSpec defines the desired state of PreprovisioningImage.
| Name | Type | Description | Required |
|---|---|---|---|
| acceptFormats | []enum |
acceptFormats is a list of acceptable image formats. |
false |
| architecture | string |
architecture is the processor architecture for which to build the image. |
false |
| networkDataName | string |
networkDataName is the name of a Secret in the local namespace that
contains network data to build in to the image. |
false |
PreprovisioningImageStatus defines the observed state of PreprovisioningImage.
| Name | Type | Description | Required |
|---|---|---|---|
| architecture | string |
architecture is the processor architecture for which the image is built |
false |
| conditions | []object |
conditions describe the state of the built image |
false |
| extraKernelParams | string |
extraKernelParams is a string with extra parameters to pass to the
kernel when booting the image over network. Only makes sense for initrd images. |
false |
| format | enum |
format is the type of image that is available at the download url:
either iso or initrd. Enum: iso, initrd |
false |
| imageUrl | string |
imageUrl is the URL from which the built image can be downloaded. |
false |
| kernelUrl | string |
kernelUrl is the URL from which the kernel of the image can be downloaded.
Only makes sense for initrd images. |
false |
| networkData | object |
networkData is a reference to the version of the Secret containing the
network data used to build the image. |
false |
Condition contains details for one aspect of the current state of this API Resource.
| Name | Type | Description | Required |
|---|---|---|---|
| lastTransitionTime | string |
lastTransitionTime is the last time the condition transitioned from one status to another.
This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable. Format: date-time |
true |
| message | string |
message is a human readable message indicating details about the transition.
This may be an empty string. |
true |
| reason | string |
reason contains a programmatic identifier indicating the reason for the condition's last transition.
Producers of specific condition types may define expected values and meanings for this field,
and whether the values are considered a guaranteed API.
The value should be a CamelCase string.
This field may not be empty. |
true |
| status | enum |
status of the condition, one of True, False, Unknown. Enum: True, False, Unknown |
true |
| type | string |
type of condition in CamelCase or in foo.example.com/CamelCase. |
true |
| observedGeneration | integer |
observedGeneration represents the .metadata.generation that the condition was set based upon.
For instance, if .metadata.generation is currently 12, but the .status.conditions[x].observedGeneration is 9, the condition is out of date
with respect to the current state of the instance. Format: int64 Minimum: 0 |
false |
networkData is a reference to the version of the Secret containing the network data used to build the image.
| Name | Type | Description | Required |
|---|---|---|---|
| name | string |
|
false |
| version | string |
|
false |