infrastructure.cluster.x-k8s.io/v1alpha7
Package v1alpha7 contains API Schema definitions for the infrastructure v1alpha7 API group.
Resource Types:OpenStackCluster
OpenStackCluster is the Schema for the openstackclusters API.
Field | Description | ||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
apiVersion string |
infrastructure.cluster.x-k8s.io/v1alpha7
|
||||||||||||||||||||||||||||||||||||||||||||||
kind string |
OpenStackCluster |
||||||||||||||||||||||||||||||||||||||||||||||
metadata Kubernetes meta/v1.ObjectMeta |
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||||||||||||||||||||||||||||||||||||||||||
spec OpenStackClusterSpec |
|
||||||||||||||||||||||||||||||||||||||||||||||
status OpenStackClusterStatus |
OpenStackClusterTemplate
OpenStackClusterTemplate is the Schema for the openstackclustertemplates API.
Field | Description | ||
---|---|---|---|
apiVersion string |
infrastructure.cluster.x-k8s.io/v1alpha7
|
||
kind string |
OpenStackClusterTemplate |
||
metadata Kubernetes meta/v1.ObjectMeta |
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||
spec OpenStackClusterTemplateSpec |
|
OpenStackMachine
OpenStackMachine is the Schema for the openstackmachines API.
Field | Description | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
apiVersion string |
infrastructure.cluster.x-k8s.io/v1alpha7
|
||||||||||||||||||||||||||||||||||||
kind string |
OpenStackMachine |
||||||||||||||||||||||||||||||||||||
metadata Kubernetes meta/v1.ObjectMeta |
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||||||||||||||||||||||||||||||||||||
spec OpenStackMachineSpec |
|
||||||||||||||||||||||||||||||||||||
status OpenStackMachineStatus |
OpenStackMachineTemplate
OpenStackMachineTemplate is the Schema for the openstackmachinetemplates API.
Field | Description | ||
---|---|---|---|
apiVersion string |
infrastructure.cluster.x-k8s.io/v1alpha7
|
||
kind string |
OpenStackMachineTemplate |
||
metadata Kubernetes meta/v1.ObjectMeta |
Refer to the Kubernetes API documentation for the fields of the
metadata field.
|
||
spec OpenStackMachineTemplateSpec |
|
APIServerLoadBalancer
(Appears on: OpenStackClusterSpec)
Field | Description |
---|---|
enabled bool |
Enabled defines whether a load balancer should be created. |
additionalPorts []int |
AdditionalPorts adds additional tcp ports to the load balancer. |
allowedCidrs []string |
AllowedCIDRs restrict access to all API-Server listeners to the given address CIDRs. |
provider string |
Octavia Provider Used to create load balancer |
AdditionalBlockDevice
(Appears on: OpenStackMachineSpec)
AdditionalBlockDevice is a block device to attach to the server.
Field | Description |
---|---|
name string |
Name of the block device in the context of a machine. If the block device is a volume, the Cinder volume will be named as a combination of the machine name and this name. Also, this name will be used for tagging the block device. Information about the block device tag can be obtained from the OpenStack metadata API or the config drive. |
sizeGiB int |
SizeGiB is the size of the block device in gibibytes (GiB). |
storage BlockDeviceStorage |
Storage specifies the storage type of the block device and additional storage options. |
AddressPair
(Appears on: PortOpts)
Field | Description |
---|---|
ipAddress string |
|
macAddress string |
Bastion
(Appears on: OpenStackClusterSpec)
Bastion represents basic information about the bastion node.
Field | Description |
---|---|
enabled bool |
(Optional) |
instance OpenStackMachineSpec |
Instance for the bastion itself |
availabilityZone string |
(Optional) |
BastionStatus
(Appears on: OpenStackClusterStatus)
Field | Description |
---|---|
id string |
|
name string |
|
sshKeyName string |
|
state InstanceState |
|
ip string |
|
floatingIP string |
BindingProfile
(Appears on: PortOpts)
Field | Description |
---|---|
ovsHWOffload bool |
OVSHWOffload enables or disables the OVS hardware offload feature. |
trustedVF bool |
TrustedVF enables or disables the “trusted mode” for the VF. |
BlockDeviceStorage
(Appears on: AdditionalBlockDevice)
BlockDeviceStorage is the storage type of a block device to create and contains additional storage options.
Field | Description |
---|---|
type BlockDeviceType |
Type is the type of block device to create. This can be either “Volume” or “Local”. |
volume BlockDeviceVolume |
(Optional)
Volume contains additional storage options for a volume block device. |
BlockDeviceType
(string
alias)
(Appears on: BlockDeviceStorage)
BlockDeviceType defines the type of block device to create.
Value | Description |
---|---|
"Local" |
LocalBlockDevice is an ephemeral block device attached to the server. |
"Volume" |
VolumeBlockDevice is a volume block device attached to the server. |
BlockDeviceVolume
(Appears on: BlockDeviceStorage)
BlockDeviceVolume contains additional storage options for a volume block device.
Field | Description |
---|---|
type string |
(Optional)
Type is the Cinder volume type of the volume. If omitted, the default Cinder volume type that is configured in the OpenStack cloud will be used. |
availabilityZone string |
(Optional)
AvailabilityZone is the volume availability zone to create the volume in. If omitted, the availability zone of the server will be used. The availability zone must NOT contain spaces otherwise it will lead to volume that belongs to this availability zone register failure, see kubernetes/cloud-provider-openstack#1379 for further information. |
ExternalRouterIPParam
(Appears on: OpenStackClusterSpec)
Field | Description |
---|---|
fixedIP string |
The FixedIP in the corresponding subnet |
subnet SubnetFilter |
The subnet in which the FixedIP is used for the Gateway of this router |
FixedIP
(Appears on: PortOpts)
Field | Description |
---|---|
subnet SubnetFilter |
Subnet is an openstack subnet query that will return the id of a subnet to create the fixed IP of a port in. This query must not return more than one subnet. |
ipAddress string |
InstanceState
(string
alias)
(Appears on: BastionStatus, OpenStackMachineStatus)
InstanceState describes the state of an OpenStack instance.
LoadBalancer
(Appears on: OpenStackClusterStatus)
LoadBalancer represents basic information about the associated OpenStack LoadBalancer.
Field | Description |
---|---|
name string |
|
id string |
|
ip string |
|
internalIP string |
|
allowedCIDRs []string |
(Optional) |
tags []string |
(Optional) |
NetworkFilter
(Appears on: OpenStackClusterSpec, PortOpts)
Field | Description |
---|---|
name string |
|
description string |
|
projectId string |
|
id string |
|
tags string |
|
tagsAny string |
|
notTags string |
|
notTagsAny string |
NetworkStatus
(Appears on: NetworkStatusWithSubnets, OpenStackClusterStatus)
NetworkStatus contains basic information about an existing neutron network.
Field | Description |
---|---|
name string |
|
id string |
|
tags []string |
(Optional) |
NetworkStatusWithSubnets
(Appears on: OpenStackClusterStatus)
NetworkStatusWithSubnets represents basic information about an existing neutron network and an associated set of subnets.
Field | Description |
---|---|
NetworkStatus NetworkStatus |
(Members of |
subnets []Subnet |
Subnets is a list of subnets associated with the default cluster network. Machines which use the default cluster network will get an address from all of these subnets. |
OpenStackClusterSpec
(Appears on: OpenStackCluster, OpenStackClusterTemplateResource)
OpenStackClusterSpec defines the desired state of OpenStackCluster.
Field | Description |
---|---|
cloudName string |
(Optional)
The name of the cloud to use from the clouds secret |
nodeCidr string |
NodeCIDR is the OpenStack Subnet to be created. Cluster actuator will create a network, a subnet with NodeCIDR, and a router connected to this subnet. If you leave this empty, no network will be created. |
router RouterFilter |
(Optional)
If NodeCIDR is set this option can be used to detect an existing router. If specified, no new router will be created. |
network NetworkFilter |
If NodeCIDR cannot be set this can be used to detect an existing network. |
subnet SubnetFilter |
If NodeCIDR cannot be set this can be used to detect an existing subnet. |
networkMtu int |
(Optional)
NetworkMTU sets the maximum transmission unit (MTU) value to address fragmentation for the private network ID. This value will be used only if the Cluster actuator creates the network. If leaved empty, the network will have the default MTU defined in Openstack network service. To use this field, the Openstack installation requires the net-mtu neutron API extension. |
dnsNameservers []string |
DNSNameservers is the list of nameservers for OpenStack Subnet being created. Set this value when you need create a new network/subnet while the access through DNS is required. |
externalRouterIPs []ExternalRouterIPParam |
ExternalRouterIPs is an array of externalIPs on the respective subnets. This is necessary if the router needs a fixed ip in a specific subnet. |
externalNetworkId string |
(Optional)
ExternalNetworkID is the ID of an external OpenStack Network. This is necessary to get public internet to the VMs. |
apiServerLoadBalancer APIServerLoadBalancer |
(Optional)
APIServerLoadBalancer configures the optional LoadBalancer for the APIServer.
It must be activated by setting |
disableAPIServerFloatingIP bool |
(Optional)
DisableAPIServerFloatingIP determines whether or not to attempt to attach a floating IP to the API server. This allows for the creation of clusters when attaching a floating IP to the API server (and hence, in many cases, exposing the API server to the internet) is not possible or desirable, e.g. if using a shared VLAN for communication between management and workload clusters or when the management cluster is inside the project network. This option requires that the API server use a VIP on the cluster network so that the underlying machines can change without changing ControlPlaneEndpoint.Host. When using a managed load balancer, this VIP will be managed automatically. If not using a managed load balancer, cluster configuration will fail without additional configuration to manage the VIP on the control plane machines, which falls outside of the scope of this controller. |
apiServerFloatingIP string |
APIServerFloatingIP is the floatingIP which will be associated with the API server. The floatingIP will be created if it does not already exist. If not specified, a new floatingIP is allocated. This field is not used if DisableAPIServerFloatingIP is set to true. |
apiServerFixedIP string |
APIServerFixedIP is the fixed IP which will be associated with the API server. In the case where the API server has a floating IP but not a managed load balancer, this field is not used. If a managed load balancer is used and this field is not specified, a fixed IP will be dynamically allocated for the load balancer. If a managed load balancer is not used AND the API server floating IP is disabled, this field MUST be specified and should correspond to a pre-allocated port that holds the fixed IP to be used as a VIP. |
apiServerPort int |
APIServerPort is the port on which the listener on the APIServer will be created |
managedSecurityGroups bool |
(Optional)
ManagedSecurityGroups determines whether OpenStack security groups for the cluster will be managed by the OpenStack provider or whether pre-existing security groups will be specified as part of the configuration. By default, the managed security groups have rules that allow the Kubelet, etcd, the Kubernetes API server and the Calico CNI plugin to function correctly. |
allowAllInClusterTraffic bool |
(Optional)
AllowAllInClusterTraffic is only used when managed security groups are in use. If set to true, the rules for the managed security groups are configured so that all ingress and egress between cluster nodes is permitted, allowing CNIs other than Calico to be used. |
disablePortSecurity bool |
DisablePortSecurity disables the port security of the network created for the Kubernetes cluster, which also disables SecurityGroups |
tags []string |
Tags for all resources in cluster |
controlPlaneEndpoint sigs.k8s.io/cluster-api/api/v1beta1.APIEndpoint |
(Optional)
ControlPlaneEndpoint represents the endpoint used to communicate with the control plane. |
controlPlaneAvailabilityZones []string |
ControlPlaneAvailabilityZones is the az to deploy control plane to |
controlPlaneOmitAvailabilityZone bool |
Indicates whether to omit the az for control plane nodes, allowing the Nova scheduler to make a decision on which az to use based on other scheduling constraints |
bastion Bastion |
(Optional)
Bastion is the OpenStack instance to login the nodes As a rolling update is not ideal during a bastion host session, we
prevent changes to a running bastion configuration. Set |
identityRef OpenStackIdentityReference |
(Optional)
IdentityRef is a reference to a identity to be used when reconciling this cluster |
OpenStackClusterStatus
(Appears on: OpenStackCluster)
OpenStackClusterStatus defines the observed state of OpenStackCluster.
Field | Description |
---|---|
ready bool |
|
network NetworkStatusWithSubnets |
Network contains information about the created OpenStack Network. |
externalNetwork NetworkStatus |
externalNetwork contains information about the external network used for default ingress and egress traffic. |
router Router |
Router describes the default cluster router |
apiServerLoadBalancer LoadBalancer |
APIServerLoadBalancer describes the api server load balancer if one exists |
failureDomains sigs.k8s.io/cluster-api/api/v1beta1.FailureDomains |
FailureDomains represent OpenStack availability zones |
controlPlaneSecurityGroup SecurityGroup |
ControlPlaneSecurityGroups contains all the information about the OpenStack Security Group that needs to be applied to control plane nodes. TODO: Maybe instead of two properties, we add a property to the group? |
workerSecurityGroup SecurityGroup |
WorkerSecurityGroup contains all the information about the OpenStack Security Group that needs to be applied to worker nodes. |
bastionSecurityGroup SecurityGroup |
|
bastion BastionStatus |
|
failureReason sigs.k8s.io/cluster-api/errors.ClusterStatusError |
(Optional)
FailureReason will be set in the event that there is a terminal problem reconciling the OpenStackCluster and will contain a succinct value suitable for machine interpretation. This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the OpenStackCluster’s spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured. Any transient errors that occur during the reconciliation of OpenStackClusters can be added as events to the OpenStackCluster object and/or logged in the controller’s output. |
failureMessage string |
(Optional)
FailureMessage will be set in the event that there is a terminal problem reconciling the OpenStackCluster and will contain a more verbose string suitable for logging and human consumption. This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the OpenStackCluster’s spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured. Any transient errors that occur during the reconciliation of OpenStackClusters can be added as events to the OpenStackCluster object and/or logged in the controller’s output. |
OpenStackClusterTemplateResource
(Appears on: OpenStackClusterTemplateSpec)
OpenStackClusterTemplateResource describes the data needed to create a OpenStackCluster from a template.
Field | Description | ||||||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
spec OpenStackClusterSpec |
|
OpenStackClusterTemplateSpec
(Appears on: OpenStackClusterTemplate)
OpenStackClusterTemplateSpec defines the desired state of OpenStackClusterTemplate.
Field | Description |
---|---|
template OpenStackClusterTemplateResource |
OpenStackIdentityReference
(Appears on: OpenStackClusterSpec, OpenStackMachineSpec)
OpenStackIdentityReference is a reference to an infrastructure provider identity to be used to provision cluster resources.
Field | Description |
---|---|
kind string |
Kind of the identity. Must be supported by the infrastructure provider and may be either cluster or namespace-scoped. |
name string |
Name of the infrastructure identity to be used. Must be either a cluster-scoped resource, or namespaced-scoped resource the same namespace as the resource(s) being provisioned. |
OpenStackMachineSpec
(Appears on: OpenStackMachine, Bastion, OpenStackMachineTemplateResource)
OpenStackMachineSpec defines the desired state of OpenStackMachine.
Field | Description |
---|---|
providerID string |
ProviderID is the unique identifier as specified by the cloud provider. |
instanceID string |
InstanceID is the OpenStack instance ID for this machine. |
cloudName string |
(Optional)
The name of the cloud to use from the clouds secret |
flavor string |
The flavor reference for the flavor for your server instance. |
image string |
The name of the image to use for your server instance. If the RootVolume is specified, this will be ignored and use rootVolume directly. |
imageUUID string |
The uuid of the image to use for your server instance. if it’s empty, Image name will be used |
sshKeyName string |
The ssh key to inject in the instance |
ports []PortOpts |
Ports to be attached to the server instance. They are created if a port with the given name does not already exist. If not specified a default port will be added for the default cluster network. |
floatingIP string |
The floatingIP which will be associated to the machine, only used for master. The floatingIP should have been created and haven’t been associated. |
securityGroups []SecurityGroupFilter |
The names of the security groups to assign to the instance |
trunk bool |
Whether the server instance is created on a trunk port or not. |
tags []string |
Machine tags Requires Nova api 2.52 minimum! |
serverMetadata map[string]string |
Metadata mapping. Allows you to create a map of key value pairs to add to the server instance. |
configDrive bool |
Config Drive support |
rootVolume RootVolume |
The volume metadata to boot from |
additionalBlockDevices []AdditionalBlockDevice |
(Optional)
AdditionalBlockDevices is a list of specifications for additional block devices to attach to the server instance |
serverGroupID string |
The server group to assign the machine to |
identityRef OpenStackIdentityReference |
(Optional)
IdentityRef is a reference to a identity to be used when reconciling this cluster. If not specified, the identity ref of the cluster will be used instead. |
OpenStackMachineStatus
(Appears on: OpenStackMachine)
OpenStackMachineStatus defines the observed state of OpenStackMachine.
Field | Description |
---|---|
ready bool |
(Optional)
Ready is true when the provider resource is ready. |
addresses []Kubernetes core/v1.NodeAddress |
Addresses contains the OpenStack instance associated addresses. |
instanceState InstanceState |
(Optional)
InstanceState is the state of the OpenStack instance for this machine. |
failureReason sigs.k8s.io/cluster-api/errors.MachineStatusError |
|
failureMessage string |
(Optional)
FailureMessage will be set in the event that there is a terminal problem reconciling the Machine and will contain a more verbose string suitable for logging and human consumption. This field should not be set for transitive errors that a controller faces that are expected to be fixed automatically over time (like service outages), but instead indicate that something is fundamentally wrong with the Machine’s spec or the configuration of the controller, and that manual intervention is required. Examples of terminal errors would be invalid combinations of settings in the spec, values that are unsupported by the controller, or the responsible controller itself being critically misconfigured. Any transient errors that occur during the reconciliation of Machines can be added as events to the Machine object and/or logged in the controller’s output. |
conditions sigs.k8s.io/cluster-api/api/v1beta1.Conditions |
OpenStackMachineTemplateResource
(Appears on: OpenStackMachineTemplateSpec)
OpenStackMachineTemplateResource describes the data needed to create a OpenStackMachine from a template.
Field | Description | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
spec OpenStackMachineSpec |
Spec is the specification of the desired behavior of the machine.
|
OpenStackMachineTemplateSpec
(Appears on: OpenStackMachineTemplate)
OpenStackMachineTemplateSpec defines the desired state of OpenStackMachineTemplate.
Field | Description |
---|---|
template OpenStackMachineTemplateResource |
PortOpts
(Appears on: OpenStackMachineSpec)
Field | Description |
---|---|
network NetworkFilter |
Network is a query for an openstack network that the port will be created or discovered on. This will fail if the query returns more than one network. |
nameSuffix string |
Used to make the name of the port unique. If unspecified, instead the 0-based index of the port in the list is used. |
description string |
|
adminStateUp bool |
|
macAddress string |
|
fixedIPs []FixedIP |
Specify pairs of subnet and/or IP address. These should be subnets of the network with the given NetworkID. |
securityGroupFilters []SecurityGroupFilter |
The names, uuids, filters or any combination these of the security groups to assign to the instance |
allowedAddressPairs []AddressPair |
|
trunk bool |
Enables and disables trunk at port level. If not provided, openStackMachine.Spec.Trunk is inherited. |
hostId string |
The ID of the host where the port is allocated |
vnicType string |
The virtual network interface card (vNIC) type that is bound to the neutron port. |
profile BindingProfile |
Profile is a set of key-value pairs that are used for binding details. We intentionally don’t expose this as a map[string]string because we only want to enable the users to set the values of the keys that are known to work in OpenStack Networking API. See https://docs.openstack.org/api-ref/network/v2/index.html?expanded=create-port-detail#create-port |
disablePortSecurity bool |
DisablePortSecurity enables or disables the port security when set. When not set, it takes the value of the corresponding field at the network level. |
propagateUplinkStatus bool |
PropageteUplinkStatus enables or disables the propagate uplink status on the port. |
tags []string |
Tags applied to the port (and corresponding trunk, if a trunk is configured.) These tags are applied in addition to the instance’s tags, which will also be applied to the port. |
valueSpecs []ValueSpec |
(Optional)
Value specs are extra parameters to include in the API request with OpenStack. This is an extension point for the API, so what they do and if they are supported, depends on the specific OpenStack implementation. |
RootVolume
(Appears on: OpenStackMachineSpec)
Field | Description |
---|---|
diskSize int |
|
volumeType string |
|
availabilityZone string |
Router
(Appears on: OpenStackClusterStatus)
Router represents basic information about the associated OpenStack Neutron Router.
Field | Description |
---|---|
name string |
|
id string |
|
tags []string |
(Optional) |
ips []string |
(Optional) |
RouterFilter
(Appears on: OpenStackClusterSpec)
Field | Description |
---|---|
id string |
|
name string |
|
description string |
|
projectId string |
|
tags string |
|
tagsAny string |
|
notTags string |
|
notTagsAny string |
SecurityGroup
(Appears on: OpenStackClusterStatus)
SecurityGroup represents the basic information of the associated OpenStack Neutron Security Group.
Field | Description |
---|---|
name string |
|
id string |
|
rules []SecurityGroupRule |
SecurityGroupFilter
(Appears on: OpenStackMachineSpec, PortOpts)
Field | Description |
---|---|
id string |
|
name string |
|
description string |
|
projectId string |
|
tags string |
|
tagsAny string |
|
notTags string |
|
notTagsAny string |
SecurityGroupRule
(Appears on: SecurityGroup)
SecurityGroupRule represent the basic information of the associated OpenStack Security Group Role.
Field | Description |
---|---|
description string |
|
name string |
|
direction string |
|
etherType string |
|
securityGroupID string |
|
portRangeMin int |
|
portRangeMax int |
|
protocol string |
|
remoteGroupID string |
|
remoteIPPrefix string |
Subnet
(Appears on: NetworkStatusWithSubnets)
Subnet represents basic information about the associated OpenStack Neutron Subnet.
Field | Description |
---|---|
name string |
|
id string |
|
cidr string |
|
tags []string |
(Optional) |
SubnetFilter
(Appears on: ExternalRouterIPParam, FixedIP, OpenStackClusterSpec)
Field | Description |
---|---|
name string |
|
description string |
|
projectId string |
|
ipVersion int |
|
gateway_ip string |
|
cidr string |
|
ipv6AddressMode string |
|
ipv6RaMode string |
|
id string |
|
tags string |
|
tagsAny string |
|
notTags string |
|
notTagsAny string |
ValueSpec
(Appears on: PortOpts)
ValueSpec represents a single value_spec key-value pair.
Field | Description |
---|---|
name string |
Name is the name of the key-value pair. This is just for identifying the pair and will not be sent to the OpenStack API. |
key string |
Key is the key in the key-value pair. |
value string |
Value is the value in the key-value pair. |
Generated with gen-crd-api-reference-docs
.