| apiVersion: v1 |
| kind: Namespace |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-system |
| --- |
| apiVersion: apiextensions.k8s.io/v1 |
| kind: CustomResourceDefinition |
| metadata: |
| annotations: |
| cert-manager.io/inject-ca-from: capo-system/capo-serving-cert |
| controller-gen.kubebuilder.io/version: v0.9.2 |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| cluster.x-k8s.io/v1alpha3: v1alpha3 |
| cluster.x-k8s.io/v1beta1: v1alpha4_v1alpha5_v1alpha6 |
| name: openstackclusters.infrastructure.cluster.x-k8s.io |
| spec: |
| conversion: |
| strategy: Webhook |
| webhook: |
| clientConfig: |
| caBundle: Cg== |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /convert |
| conversionReviewVersions: |
| - v1 |
| - v1beta1 |
| group: infrastructure.cluster.x-k8s.io |
| names: |
| categories: |
| - cluster-api |
| kind: OpenStackCluster |
| listKind: OpenStackClusterList |
| plural: openstackclusters |
| shortNames: |
| - osc |
| singular: openstackcluster |
| scope: Namespaced |
| versions: |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackCluster belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: Cluster infrastructure is ready for OpenStack instances |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: Network the cluster is using |
| jsonPath: .status.network.id |
| name: Network |
| type: string |
| - description: Subnet the cluster is using |
| jsonPath: .status.network.subnet.id |
| name: Subnet |
| type: string |
| - description: API Endpoint |
| jsonPath: .spec.controlPlaneEndpoint.host |
| name: Endpoint |
| priority: 1 |
| type: string |
| - description: Bastion floating IP |
| jsonPath: .status.bastion.floatingIP |
| name: Bastion |
| type: string |
| - description: Time duration since creation of OpenStackCluster |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha3 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackCluster is the Schema for the openstackclusters API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackClusterSpec defines the desired state of OpenStackCluster. |
| properties: |
| apiServerFloatingIP: |
| description: APIServerFloatingIP is the floatingIP which will be associated |
| to the APIServer. The floatingIP will be created if it not already |
| exists. |
| type: string |
| apiServerLoadBalancerAdditionalPorts: |
| description: APIServerLoadBalancerAdditionalPorts adds additional |
| ports to the APIServerLoadBalancer |
| items: |
| type: integer |
| type: array |
| apiServerPort: |
| description: APIServerPort is the port on which the listener on the |
| APIServer will be created |
| type: integer |
| bastion: |
| description: "Bastion is the OpenStack instance to login the nodes |
| \n As a rolling update is not ideal during a bastion host session, |
| we prevent changes to a running bastion configuration. Set `enabled: |
| false` to make changes." |
| properties: |
| availabilityZone: |
| type: string |
| enabled: |
| type: boolean |
| instance: |
| description: Instance for the bastion itself |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| cloudsSecret: |
| description: The name of the secret containing the openstack |
| credentials |
| properties: |
| name: |
| description: name is unique within a namespace to reference |
| a secret resource. |
| type: string |
| namespace: |
| description: namespace defines the space within which |
| the secret name must be unique. |
| type: string |
| type: object |
| x-kubernetes-map-type: atomic |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify the networks parameter, the server attaches |
| to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| fixedIp: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: The UUID of the network. Required |
| if you omit the port attribute. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: The UUID of the network. Required if you |
| omit the port attribute. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| userDataSecret: |
| description: The name of the secret containing the user data |
| (startup script in most cases) |
| properties: |
| name: |
| description: name is unique within a namespace to reference |
| a secret resource. |
| type: string |
| namespace: |
| description: namespace defines the space within which |
| the secret name must be unique. |
| type: string |
| type: object |
| x-kubernetes-map-type: atomic |
| required: |
| - flavor |
| type: object |
| type: object |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| cloudsSecret: |
| description: The name of the secret containing the openstack credentials |
| properties: |
| name: |
| description: name is unique within a namespace to reference a |
| secret resource. |
| type: string |
| namespace: |
| description: namespace defines the space within which the secret |
| name must be unique. |
| type: string |
| type: object |
| x-kubernetes-map-type: atomic |
| controlPlaneAvailabilityZones: |
| description: ControlPlaneAvailabilityZones is the az to deploy control |
| plane to |
| items: |
| type: string |
| type: array |
| controlPlaneEndpoint: |
| description: ControlPlaneEndpoint represents the endpoint used to |
| communicate with the control plane. |
| properties: |
| host: |
| description: The hostname on which the API server is serving. |
| type: string |
| port: |
| description: The port on which the API server is serving. |
| format: int32 |
| type: integer |
| required: |
| - host |
| - port |
| type: object |
| disablePortSecurity: |
| description: DisablePortSecurity disables the port security of the |
| network created for the Kubernetes cluster, which also disables |
| SecurityGroups |
| type: boolean |
| dnsNameservers: |
| description: 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. |
| items: |
| type: string |
| type: array |
| externalNetworkId: |
| description: ExternalNetworkID is the ID of an external OpenStack |
| Network. This is necessary to get public internet to the VMs. |
| type: string |
| externalRouterIPs: |
| description: ExternalRouterIPs is an array of externalIPs on the respective |
| subnets. This is necessary if the router needs a fixed ip in a specific |
| subnet. |
| items: |
| properties: |
| fixedIP: |
| description: The FixedIP in the corresponding subnet |
| type: string |
| subnet: |
| description: The subnet in which the FixedIP is used for the |
| Gateway of this router |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: The UUID of the network. Required if you omit |
| the port attribute. |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| managedAPIServerLoadBalancer: |
| description: 'ManagedAPIServerLoadBalancer defines whether a LoadBalancer |
| for the APIServer should be created. If set to true the following |
| properties are mandatory: APIServerFloatingIP, APIServerPort' |
| type: boolean |
| managedSecurityGroups: |
| description: 'ManagedSecurityGroups defines that kubernetes manages |
| the OpenStack security groups for now, that means that we''ll create |
| security group allows traffic to/from machines belonging to that |
| group based on Calico CNI plugin default network requirements: BGP |
| and IP-in-IP for master node(s) and worker node(s) respectively. |
| In the future, we could make this more flexible.' |
| type: boolean |
| network: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing network. |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| nodeCidr: |
| description: 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. |
| type: string |
| subnet: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing subnet. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| tags: |
| description: Tags for all resources in cluster |
| items: |
| type: string |
| type: array |
| useOctavia: |
| description: UseOctavia is weather LoadBalancer Service is Octavia |
| or not |
| type: boolean |
| type: object |
| status: |
| description: OpenStackClusterStatus defines the observed state of OpenStackCluster. |
| properties: |
| bastion: |
| properties: |
| configDrive: |
| type: boolean |
| failureDomain: |
| type: string |
| flavor: |
| type: string |
| floatingIP: |
| type: string |
| id: |
| type: string |
| image: |
| type: string |
| ip: |
| type: string |
| metadata: |
| additionalProperties: |
| type: string |
| type: object |
| name: |
| type: string |
| networks: |
| items: |
| description: Network represents basic information about the |
| associated OpenStach Neutron Network. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, |
| because this field is optional and therefore not set in |
| all cases |
| properties: |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| router: |
| description: Router represents basic information about the |
| associated OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the |
| associated OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| type: array |
| rootVolume: |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securigyGroups: |
| items: |
| type: string |
| type: array |
| serverGroupID: |
| type: string |
| sshKeyName: |
| type: string |
| state: |
| description: InstanceState describes the state of an OpenStack |
| instance. |
| type: string |
| subnet: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| trunk: |
| type: boolean |
| userData: |
| type: string |
| type: object |
| bastionSecurityGroup: |
| description: SecurityGroup represents the basic information of the |
| associated OpenStack Neutron Security Group. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| controlPlaneSecurityGroup: |
| description: '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?' |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| externalNetwork: |
| description: External Network contains information about the created |
| OpenStack external network. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| failureDomains: |
| additionalProperties: |
| description: FailureDomainSpec is the Schema for Cluster API failure |
| domains. It allows controllers to understand how many failure |
| domains a cluster can optionally span across. |
| properties: |
| attributes: |
| additionalProperties: |
| type: string |
| description: Attributes is a free form map of attributes an |
| infrastructure provider might use or require. |
| type: object |
| controlPlane: |
| description: ControlPlane determines if this failure domain |
| is suitable for use by control plane machines. |
| type: boolean |
| type: object |
| description: FailureDomains represent OpenStack availability zones |
| type: object |
| network: |
| description: Network contains all information about the created OpenStack |
| Network. It includes Subnets and Router. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| ready: |
| type: boolean |
| workerSecurityGroup: |
| description: WorkerSecurityGroup contains all the information about |
| the OpenStack Security Group that needs to be applied to worker |
| nodes. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| required: |
| - ready |
| type: object |
| type: object |
| served: true |
| storage: false |
| subresources: |
| status: {} |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackCluster belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: Cluster infrastructure is ready for OpenStack instances |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: Network the cluster is using |
| jsonPath: .status.network.id |
| name: Network |
| type: string |
| - description: Subnet the cluster is using |
| jsonPath: .status.network.subnet.id |
| name: Subnet |
| type: string |
| - description: API Endpoint |
| jsonPath: .spec.controlPlaneEndpoint.host |
| name: Endpoint |
| priority: 1 |
| type: string |
| - description: Bastion address for breakglass access |
| jsonPath: .status.bastion.floatingIP |
| name: Bastion IP |
| type: string |
| - description: Time duration since creation of OpenStackCluster |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha4 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackCluster is the Schema for the openstackclusters API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackClusterSpec defines the desired state of OpenStackCluster. |
| properties: |
| allowAllInClusterTraffic: |
| description: 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. |
| type: boolean |
| apiServerFixedIP: |
| description: 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. |
| type: string |
| apiServerFloatingIP: |
| description: 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. |
| type: string |
| apiServerLoadBalancerAdditionalPorts: |
| description: APIServerLoadBalancerAdditionalPorts adds additional |
| ports to the APIServerLoadBalancer |
| items: |
| type: integer |
| type: array |
| apiServerPort: |
| description: APIServerPort is the port on which the listener on the |
| APIServer will be created |
| type: integer |
| bastion: |
| description: "Bastion is the OpenStack instance to login the nodes |
| \n As a rolling update is not ideal during a bastion host session, |
| we prevent changes to a running bastion configuration. Set `enabled: |
| false` to make changes." |
| properties: |
| availabilityZone: |
| type: string |
| enabled: |
| type: boolean |
| instance: |
| description: Instance for the bastion itself |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified |
| this will not be validated prior to server creation. |
| Required if `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does not |
| already exist. When you do not specify both networks and |
| ports parameters, the server attaches to the only network |
| created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnetId: |
| type: string |
| required: |
| - subnetId |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| networkId: |
| description: ID of the OpenStack network on which to |
| create the port. If unspecified, create the port on |
| the default cluster network. |
| type: string |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroups: |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| type: object |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| controlPlaneAvailabilityZones: |
| description: ControlPlaneAvailabilityZones is the az to deploy control |
| plane to |
| items: |
| type: string |
| type: array |
| controlPlaneEndpoint: |
| description: ControlPlaneEndpoint represents the endpoint used to |
| communicate with the control plane. |
| properties: |
| host: |
| description: The hostname on which the API server is serving. |
| type: string |
| port: |
| description: The port on which the API server is serving. |
| format: int32 |
| type: integer |
| required: |
| - host |
| - port |
| type: object |
| disableAPIServerFloatingIP: |
| description: 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. |
| type: boolean |
| disablePortSecurity: |
| description: DisablePortSecurity disables the port security of the |
| network created for the Kubernetes cluster, which also disables |
| SecurityGroups |
| type: boolean |
| dnsNameservers: |
| description: 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. |
| items: |
| type: string |
| type: array |
| externalNetworkId: |
| description: ExternalNetworkID is the ID of an external OpenStack |
| Network. This is necessary to get public internet to the VMs. |
| type: string |
| externalRouterIPs: |
| description: ExternalRouterIPs is an array of externalIPs on the respective |
| subnets. This is necessary if the router needs a fixed ip in a specific |
| subnet. |
| items: |
| properties: |
| fixedIP: |
| description: The FixedIP in the corresponding subnet |
| type: string |
| subnet: |
| description: The subnet in which the FixedIP is used for the |
| Gateway of this router |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified this |
| will not be validated prior to server creation. If specified, |
| the enclosing `NetworkParam` must also be specified by |
| UUID. |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| identityRef: |
| description: IdentityRef is a reference to a identity to be used when |
| reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by the infrastructure |
| provider and may be either cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| managedAPIServerLoadBalancer: |
| description: ManagedAPIServerLoadBalancer defines whether a LoadBalancer |
| for the APIServer should be created. |
| type: boolean |
| managedSecurityGroups: |
| description: 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. |
| type: boolean |
| network: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing network. |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| nodeCidr: |
| description: 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. |
| type: string |
| subnet: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing subnet. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| tags: |
| description: Tags for all resources in cluster |
| items: |
| type: string |
| type: array |
| type: object |
| status: |
| description: OpenStackClusterStatus defines the observed state of OpenStackCluster. |
| properties: |
| bastion: |
| properties: |
| configDrive: |
| type: boolean |
| failureDomain: |
| type: string |
| flavor: |
| type: string |
| floatingIP: |
| type: string |
| id: |
| type: string |
| image: |
| type: string |
| ip: |
| type: string |
| metadata: |
| additionalProperties: |
| type: string |
| type: object |
| name: |
| type: string |
| networks: |
| items: |
| description: Network represents basic information about an OpenStack |
| Neutron Network associated with an instance's port. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, |
| because this field is optional and therefore not set in |
| all cases |
| properties: |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnetId: |
| type: string |
| required: |
| - subnetId |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| networkId: |
| description: ID of the OpenStack network on which to |
| create the port. If unspecified, create the port on |
| the default cluster network. |
| type: string |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroups: |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the |
| associated OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the |
| associated OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| type: array |
| rootVolume: |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securigyGroups: |
| items: |
| type: string |
| type: array |
| serverGroupID: |
| type: string |
| sshKeyName: |
| type: string |
| state: |
| description: InstanceState describes the state of an OpenStack |
| instance. |
| type: string |
| subnet: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| trunk: |
| type: boolean |
| userData: |
| type: string |
| type: object |
| bastionSecurityGroup: |
| description: SecurityGroup represents the basic information of the |
| associated OpenStack Neutron Security Group. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| controlPlaneSecurityGroup: |
| description: '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?' |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| externalNetwork: |
| description: External Network contains information about the created |
| OpenStack external network. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnetId: |
| type: string |
| required: |
| - subnetId |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If |
| unspecified, instead the 0-based index of the port in the |
| list is used. |
| type: string |
| networkId: |
| description: ID of the OpenStack network on which to create |
| the port. If unspecified, create the port on the default |
| cluster network. |
| type: string |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroups: |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If |
| not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| failureDomains: |
| additionalProperties: |
| description: FailureDomainSpec is the Schema for Cluster API failure |
| domains. It allows controllers to understand how many failure |
| domains a cluster can optionally span across. |
| properties: |
| attributes: |
| additionalProperties: |
| type: string |
| description: Attributes is a free form map of attributes an |
| infrastructure provider might use or require. |
| type: object |
| controlPlane: |
| description: ControlPlane determines if this failure domain |
| is suitable for use by control plane machines. |
| type: boolean |
| type: object |
| description: FailureDomains represent OpenStack availability zones |
| type: object |
| failureMessage: |
| description: "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. |
| \n 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. \n 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." |
| type: string |
| failureReason: |
| description: "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. \n 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. \n 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." |
| type: string |
| network: |
| description: Network contains all information about the created OpenStack |
| Network. It includes Subnets and Router. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnetId: |
| type: string |
| required: |
| - subnetId |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If |
| unspecified, instead the 0-based index of the port in the |
| list is used. |
| type: string |
| networkId: |
| description: ID of the OpenStack network on which to create |
| the port. If unspecified, create the port on the default |
| cluster network. |
| type: string |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroups: |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If |
| not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| ready: |
| type: boolean |
| workerSecurityGroup: |
| description: WorkerSecurityGroup contains all the information about |
| the OpenStack Security Group that needs to be applied to worker |
| nodes. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| required: |
| - ready |
| type: object |
| type: object |
| served: true |
| storage: false |
| subresources: |
| status: {} |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackCluster belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: Cluster infrastructure is ready for OpenStack instances |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: Network the cluster is using |
| jsonPath: .status.network.id |
| name: Network |
| type: string |
| - description: Subnet the cluster is using |
| jsonPath: .status.network.subnet.id |
| name: Subnet |
| type: string |
| - description: API Endpoint |
| jsonPath: .spec.controlPlaneEndpoint.host |
| name: Endpoint |
| priority: 1 |
| type: string |
| - description: Bastion address for breakglass access |
| jsonPath: .status.bastion.floatingIP |
| name: Bastion IP |
| type: string |
| - description: Time duration since creation of OpenStackCluster |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha5 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackCluster is the Schema for the openstackclusters API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackClusterSpec defines the desired state of OpenStackCluster. |
| properties: |
| allowAllInClusterTraffic: |
| description: 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. |
| type: boolean |
| apiServerFixedIP: |
| description: 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. |
| type: string |
| apiServerFloatingIP: |
| description: 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. |
| type: string |
| apiServerLoadBalancer: |
| description: 'APIServerLoadBalancer configures the optional LoadBalancer |
| for the APIServer. It must be activated by setting `enabled: true`.' |
| properties: |
| additionalPorts: |
| description: AdditionalPorts adds additional tcp ports to the |
| load balancer. |
| items: |
| type: integer |
| type: array |
| allowedCidrs: |
| description: AllowedCIDRs restrict access to all API-Server listeners |
| to the given address CIDRs. |
| items: |
| type: string |
| type: array |
| enabled: |
| description: Enabled defines whether a load balancer should be |
| created. |
| type: boolean |
| type: object |
| apiServerPort: |
| description: APIServerPort is the port on which the listener on the |
| APIServer will be created |
| type: integer |
| bastion: |
| description: "Bastion is the OpenStack instance to login the nodes |
| \n As a rolling update is not ideal during a bastion host session, |
| we prevent changes to a running bastion configuration. Set `enabled: |
| false` to make changes." |
| properties: |
| availabilityZone: |
| type: string |
| enabled: |
| type: boolean |
| instance: |
| description: Instance for the bastion itself |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your server |
| instance. if it's empty, Image name will be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified |
| this will not be validated prior to server creation. |
| Required if `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does not |
| already exist. When you do not specify both networks and |
| ports parameters, the server attaches to the only network |
| created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups |
| in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign |
| to the instance |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| type: object |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| controlPlaneAvailabilityZones: |
| description: ControlPlaneAvailabilityZones is the az to deploy control |
| plane to |
| items: |
| type: string |
| type: array |
| controlPlaneEndpoint: |
| description: ControlPlaneEndpoint represents the endpoint used to |
| communicate with the control plane. |
| properties: |
| host: |
| description: The hostname on which the API server is serving. |
| type: string |
| port: |
| description: The port on which the API server is serving. |
| format: int32 |
| type: integer |
| required: |
| - host |
| - port |
| type: object |
| disableAPIServerFloatingIP: |
| description: 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. |
| type: boolean |
| disablePortSecurity: |
| description: DisablePortSecurity disables the port security of the |
| network created for the Kubernetes cluster, which also disables |
| SecurityGroups |
| type: boolean |
| dnsNameservers: |
| description: 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. |
| items: |
| type: string |
| type: array |
| externalNetworkId: |
| description: ExternalNetworkID is the ID of an external OpenStack |
| Network. This is necessary to get public internet to the VMs. |
| type: string |
| externalRouterIPs: |
| description: ExternalRouterIPs is an array of externalIPs on the respective |
| subnets. This is necessary if the router needs a fixed ip in a specific |
| subnet. |
| items: |
| properties: |
| fixedIP: |
| description: The FixedIP in the corresponding subnet |
| type: string |
| subnet: |
| description: The subnet in which the FixedIP is used for the |
| Gateway of this router |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified this |
| will not be validated prior to server creation. If specified, |
| the enclosing `NetworkParam` must also be specified by |
| UUID. |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| identityRef: |
| description: IdentityRef is a reference to a identity to be used when |
| reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by the infrastructure |
| provider and may be either cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| managedSecurityGroups: |
| description: 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. |
| type: boolean |
| network: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing network. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| nodeCidr: |
| description: 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. |
| type: string |
| subnet: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing subnet. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| tags: |
| description: Tags for all resources in cluster |
| items: |
| type: string |
| type: array |
| type: object |
| status: |
| description: OpenStackClusterStatus defines the observed state of OpenStackCluster. |
| properties: |
| bastion: |
| properties: |
| configDrive: |
| type: boolean |
| failureDomain: |
| type: string |
| flavor: |
| type: string |
| floatingIP: |
| type: string |
| id: |
| type: string |
| image: |
| type: string |
| imageUUID: |
| type: string |
| ip: |
| type: string |
| metadata: |
| additionalProperties: |
| type: string |
| type: object |
| name: |
| type: string |
| networks: |
| items: |
| description: Network represents basic information about an OpenStack |
| Neutron Network associated with an instance's port. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, |
| because this field is optional and therefore not set in |
| all cases |
| properties: |
| allowedCIDRs: |
| items: |
| type: string |
| type: array |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups |
| in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign |
| to the instance |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the |
| associated OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| ips: |
| items: |
| type: string |
| type: array |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the |
| associated OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| type: array |
| rootVolume: |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securigyGroups: |
| items: |
| type: string |
| type: array |
| serverGroupID: |
| type: string |
| sshKeyName: |
| type: string |
| state: |
| description: InstanceState describes the state of an OpenStack |
| instance. |
| type: string |
| subnet: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| trunk: |
| type: boolean |
| userData: |
| type: string |
| type: object |
| bastionSecurityGroup: |
| description: SecurityGroup represents the basic information of the |
| associated OpenStack Neutron Security Group. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| controlPlaneSecurityGroup: |
| description: '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?' |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| externalNetwork: |
| description: External Network contains information about the created |
| OpenStack external network. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| allowedCIDRs: |
| items: |
| type: string |
| type: array |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If |
| unspecified, instead the 0-based index of the port in the |
| list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign to |
| the instance |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If |
| not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| ips: |
| items: |
| type: string |
| type: array |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| failureDomains: |
| additionalProperties: |
| description: FailureDomainSpec is the Schema for Cluster API failure |
| domains. It allows controllers to understand how many failure |
| domains a cluster can optionally span across. |
| properties: |
| attributes: |
| additionalProperties: |
| type: string |
| description: Attributes is a free form map of attributes an |
| infrastructure provider might use or require. |
| type: object |
| controlPlane: |
| description: ControlPlane determines if this failure domain |
| is suitable for use by control plane machines. |
| type: boolean |
| type: object |
| description: FailureDomains represent OpenStack availability zones |
| type: object |
| failureMessage: |
| description: "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. |
| \n 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. \n 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." |
| type: string |
| failureReason: |
| description: "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. \n 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. \n 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." |
| type: string |
| network: |
| description: Network contains all information about the created OpenStack |
| Network. It includes Subnets and Router. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| allowedCIDRs: |
| items: |
| type: string |
| type: array |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If |
| unspecified, instead the 0-based index of the port in the |
| list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign to |
| the instance |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If |
| not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| ips: |
| items: |
| type: string |
| type: array |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| ready: |
| type: boolean |
| workerSecurityGroup: |
| description: WorkerSecurityGroup contains all the information about |
| the OpenStack Security Group that needs to be applied to worker |
| nodes. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| required: |
| - ready |
| type: object |
| type: object |
| served: true |
| storage: false |
| subresources: |
| status: {} |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackCluster belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: Cluster infrastructure is ready for OpenStack instances |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: Network the cluster is using |
| jsonPath: .status.network.id |
| name: Network |
| type: string |
| - description: Subnet the cluster is using |
| jsonPath: .status.network.subnet.id |
| name: Subnet |
| type: string |
| - description: API Endpoint |
| jsonPath: .spec.controlPlaneEndpoint.host |
| name: Endpoint |
| priority: 1 |
| type: string |
| - description: Bastion address for breakglass access |
| jsonPath: .status.bastion.floatingIP |
| name: Bastion IP |
| type: string |
| - description: Time duration since creation of OpenStackCluster |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha6 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackCluster is the Schema for the openstackclusters API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackClusterSpec defines the desired state of OpenStackCluster. |
| properties: |
| allowAllInClusterTraffic: |
| description: 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. |
| type: boolean |
| apiServerFixedIP: |
| description: 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. |
| type: string |
| apiServerFloatingIP: |
| description: 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. |
| type: string |
| apiServerLoadBalancer: |
| description: 'APIServerLoadBalancer configures the optional LoadBalancer |
| for the APIServer. It must be activated by setting `enabled: true`.' |
| properties: |
| additionalPorts: |
| description: AdditionalPorts adds additional tcp ports to the |
| load balancer. |
| items: |
| type: integer |
| type: array |
| allowedCidrs: |
| description: AllowedCIDRs restrict access to all API-Server listeners |
| to the given address CIDRs. |
| items: |
| type: string |
| type: array |
| enabled: |
| description: Enabled defines whether a load balancer should be |
| created. |
| type: boolean |
| type: object |
| apiServerPort: |
| description: APIServerPort is the port on which the listener on the |
| APIServer will be created |
| type: integer |
| bastion: |
| description: "Bastion is the OpenStack instance to login the nodes |
| \n As a rolling update is not ideal during a bastion host session, |
| we prevent changes to a running bastion configuration. Set `enabled: |
| false` to make changes." |
| properties: |
| availabilityZone: |
| type: string |
| enabled: |
| type: boolean |
| instance: |
| description: Instance for the bastion itself |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your server |
| instance. if it's empty, Image name will be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified |
| this will not be validated prior to server creation. |
| Required if `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does not |
| already exist. When you do not specify both networks and |
| ports parameters, the server attaches to the only network |
| created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups |
| in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign |
| to the instance |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| type: object |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| controlPlaneAvailabilityZones: |
| description: ControlPlaneAvailabilityZones is the az to deploy control |
| plane to |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| controlPlaneEndpoint: |
| description: ControlPlaneEndpoint represents the endpoint used to |
| communicate with the control plane. |
| properties: |
| host: |
| description: The hostname on which the API server is serving. |
| type: string |
| port: |
| description: The port on which the API server is serving. |
| format: int32 |
| type: integer |
| required: |
| - host |
| - port |
| type: object |
| controlPlaneOmitAvailabilityZone: |
| description: 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 |
| type: boolean |
| disableAPIServerFloatingIP: |
| description: 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. |
| type: boolean |
| disablePortSecurity: |
| description: DisablePortSecurity disables the port security of the |
| network created for the Kubernetes cluster, which also disables |
| SecurityGroups |
| type: boolean |
| dnsNameservers: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| externalNetworkId: |
| description: ExternalNetworkID is the ID of an external OpenStack |
| Network. This is necessary to get public internet to the VMs. |
| type: string |
| externalRouterIPs: |
| description: ExternalRouterIPs is an array of externalIPs on the respective |
| subnets. This is necessary if the router needs a fixed ip in a specific |
| subnet. |
| items: |
| properties: |
| fixedIP: |
| description: The FixedIP in the corresponding subnet |
| type: string |
| subnet: |
| description: The subnet in which the FixedIP is used for the |
| Gateway of this router |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified this |
| will not be validated prior to server creation. If specified, |
| the enclosing `NetworkParam` must also be specified by |
| UUID. |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| identityRef: |
| description: IdentityRef is a reference to a identity to be used when |
| reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by the infrastructure |
| provider and may be either cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| managedSecurityGroups: |
| description: 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. |
| type: boolean |
| network: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing network. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| nodeCidr: |
| description: 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. |
| type: string |
| subnet: |
| description: If NodeCIDR cannot be set this can be used to detect |
| an existing subnet. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| tags: |
| description: Tags for all resources in cluster |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| type: object |
| status: |
| description: OpenStackClusterStatus defines the observed state of OpenStackCluster. |
| properties: |
| bastion: |
| properties: |
| configDrive: |
| type: boolean |
| failureDomain: |
| type: string |
| flavor: |
| type: string |
| floatingIP: |
| type: string |
| id: |
| type: string |
| image: |
| type: string |
| imageUUID: |
| type: string |
| ip: |
| type: string |
| metadata: |
| additionalProperties: |
| type: string |
| type: object |
| name: |
| type: string |
| networks: |
| items: |
| description: Network represents basic information about an OpenStack |
| Neutron Network associated with an instance's port. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, |
| because this field is optional and therefore not set in |
| all cases |
| properties: |
| allowedCIDRs: |
| items: |
| type: string |
| type: array |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups |
| in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign |
| to the instance |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the |
| associated OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| ips: |
| items: |
| type: string |
| type: array |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the |
| associated OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| type: array |
| rootVolume: |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securigyGroups: |
| items: |
| type: string |
| type: array |
| serverGroupID: |
| type: string |
| sshKeyName: |
| type: string |
| state: |
| description: InstanceState describes the state of an OpenStack |
| instance. |
| type: string |
| subnet: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| trunk: |
| type: boolean |
| userData: |
| type: string |
| type: object |
| bastionSecurityGroup: |
| description: SecurityGroup represents the basic information of the |
| associated OpenStack Neutron Security Group. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| controlPlaneSecurityGroup: |
| description: '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?' |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| externalNetwork: |
| description: External Network contains information about the created |
| OpenStack external network. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| allowedCIDRs: |
| items: |
| type: string |
| type: array |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If |
| unspecified, instead the 0-based index of the port in the |
| list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign to |
| the instance |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If |
| not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| ips: |
| items: |
| type: string |
| type: array |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| failureDomains: |
| additionalProperties: |
| description: FailureDomainSpec is the Schema for Cluster API failure |
| domains. It allows controllers to understand how many failure |
| domains a cluster can optionally span across. |
| properties: |
| attributes: |
| additionalProperties: |
| type: string |
| description: Attributes is a free form map of attributes an |
| infrastructure provider might use or require. |
| type: object |
| controlPlane: |
| description: ControlPlane determines if this failure domain |
| is suitable for use by control plane machines. |
| type: boolean |
| type: object |
| description: FailureDomains represent OpenStack availability zones |
| type: object |
| failureMessage: |
| description: "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. |
| \n 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. \n 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." |
| type: string |
| failureReason: |
| description: "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. \n 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. \n 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." |
| type: string |
| network: |
| description: Network contains all information about the created OpenStack |
| Network. It includes Subnets and Router. |
| properties: |
| apiServerLoadBalancer: |
| description: Be careful when using APIServerLoadBalancer, because |
| this field is optional and therefore not set in all cases |
| properties: |
| allowedCIDRs: |
| items: |
| type: string |
| type: array |
| id: |
| type: string |
| internalIP: |
| type: string |
| ip: |
| type: string |
| name: |
| type: string |
| required: |
| - id |
| - internalIP |
| - ip |
| - name |
| type: object |
| id: |
| type: string |
| name: |
| type: string |
| port: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If |
| unspecified, instead the 0-based index of the port in the |
| list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign to |
| the instance |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If |
| not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| router: |
| description: Router represents basic information about the associated |
| OpenStack Neutron Router. |
| properties: |
| id: |
| type: string |
| ips: |
| items: |
| type: string |
| type: array |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| subnet: |
| description: Subnet represents basic information about the associated |
| OpenStack Neutron Subnet. |
| properties: |
| cidr: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - cidr |
| - id |
| - name |
| type: object |
| tags: |
| items: |
| type: string |
| type: array |
| required: |
| - id |
| - name |
| type: object |
| ready: |
| type: boolean |
| workerSecurityGroup: |
| description: WorkerSecurityGroup contains all the information about |
| the OpenStack Security Group that needs to be applied to worker |
| nodes. |
| properties: |
| id: |
| type: string |
| name: |
| type: string |
| rules: |
| items: |
| description: SecurityGroupRule represent the basic information |
| of the associated OpenStack Security Group Role. |
| properties: |
| description: |
| type: string |
| direction: |
| type: string |
| etherType: |
| type: string |
| name: |
| type: string |
| portRangeMax: |
| type: integer |
| portRangeMin: |
| type: integer |
| protocol: |
| type: string |
| remoteGroupID: |
| type: string |
| remoteIPPrefix: |
| type: string |
| securityGroupID: |
| type: string |
| required: |
| - description |
| - direction |
| - etherType |
| - name |
| - portRangeMax |
| - portRangeMin |
| - protocol |
| - remoteGroupID |
| - remoteIPPrefix |
| - securityGroupID |
| type: object |
| type: array |
| required: |
| - id |
| - name |
| - rules |
| type: object |
| required: |
| - ready |
| type: object |
| type: object |
| served: true |
| storage: true |
| subresources: |
| status: {} |
| --- |
| apiVersion: apiextensions.k8s.io/v1 |
| kind: CustomResourceDefinition |
| metadata: |
| annotations: |
| cert-manager.io/inject-ca-from: capo-system/capo-serving-cert |
| controller-gen.kubebuilder.io/version: v0.9.2 |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| cluster.x-k8s.io/v1alpha3: v1alpha3 |
| cluster.x-k8s.io/v1beta1: v1alpha4_v1alpha5_v1alpha6 |
| name: openstackclustertemplates.infrastructure.cluster.x-k8s.io |
| spec: |
| conversion: |
| strategy: Webhook |
| webhook: |
| clientConfig: |
| caBundle: Cg== |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /convert |
| conversionReviewVersions: |
| - v1 |
| - v1beta1 |
| group: infrastructure.cluster.x-k8s.io |
| names: |
| categories: |
| - cluster-api |
| kind: OpenStackClusterTemplate |
| listKind: OpenStackClusterTemplateList |
| plural: openstackclustertemplates |
| shortNames: |
| - osct |
| singular: openstackclustertemplate |
| scope: Namespaced |
| versions: |
| - name: v1alpha4 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackClusterTemplate is the Schema for the openstackclustertemplates |
| API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackClusterTemplateSpec defines the desired state of |
| OpenStackClusterTemplate. |
| properties: |
| template: |
| description: OpenStackClusterTemplateResource describes the data needed |
| to create a OpenStackCluster from a template. |
| properties: |
| spec: |
| description: OpenStackClusterSpec defines the desired state of |
| OpenStackCluster. |
| properties: |
| allowAllInClusterTraffic: |
| description: 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. |
| type: boolean |
| apiServerFixedIP: |
| description: 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. |
| type: string |
| apiServerFloatingIP: |
| description: 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. |
| type: string |
| apiServerLoadBalancerAdditionalPorts: |
| description: APIServerLoadBalancerAdditionalPorts adds additional |
| ports to the APIServerLoadBalancer |
| items: |
| type: integer |
| type: array |
| apiServerPort: |
| description: APIServerPort is the port on which the listener |
| on the APIServer will be created |
| type: integer |
| bastion: |
| description: "Bastion is the OpenStack instance to login the |
| nodes \n As a rolling update is not ideal during a bastion |
| host session, we prevent changes to a running bastion configuration. |
| Set `enabled: false` to make changes." |
| properties: |
| availabilityZone: |
| type: string |
| enabled: |
| type: boolean |
| instance: |
| description: Instance for the bastion itself |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the |
| clouds secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for |
| your server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated |
| to the machine, only used for master. The floatingIP |
| should have been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity |
| to be used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported |
| by the infrastructure provider and may be either |
| cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your |
| server instance. If the RootVolume is specified, |
| this will be ignored and use rootVolume directly. |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance |
| ID for this machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter |
| when there are multiple networks defined for the |
| tenant. When you do not specify both networks and |
| ports parameters, the server attaches to the only |
| network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet |
| query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. |
| If specified this will not be validated |
| prior to server creation. If specified, |
| the enclosing `NetworkParam` must also |
| be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If |
| specified this will not be validated prior |
| to server creation. Required if `Subnets` |
| specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does |
| not already exist. When you do not specify both |
| networks and ports parameters, the server attaches |
| to the only network created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or |
| disables the port security when set. When |
| not set, it takes the value of the corresponding |
| field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or |
| IP address. These should be subnets of the |
| network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnetId: |
| type: string |
| required: |
| - subnetId |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port |
| is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port |
| unique. If unspecified, instead the 0-based |
| index of the port in the list is used. |
| type: string |
| networkId: |
| description: ID of the OpenStack network on |
| which to create the port. If unspecified, |
| create the port on the default cluster network. |
| type: string |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and |
| receive virtual network interface (VIF) port-specific |
| information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroups: |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port |
| level. If not provided, openStackMachine.Spec.Trunk |
| is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card |
| (vNIC) type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as |
| specified by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign |
| to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security |
| groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine |
| to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create |
| a map of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this |
| subnet will be marked as AccessIPv4 on the created |
| compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created |
| on a trunk port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| type: object |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| controlPlaneAvailabilityZones: |
| description: ControlPlaneAvailabilityZones is the az to deploy |
| control plane to |
| items: |
| type: string |
| type: array |
| controlPlaneEndpoint: |
| description: ControlPlaneEndpoint represents the endpoint |
| used to communicate with the control plane. |
| properties: |
| host: |
| description: The hostname on which the API server is serving. |
| type: string |
| port: |
| description: The port on which the API server is serving. |
| format: int32 |
| type: integer |
| required: |
| - host |
| - port |
| type: object |
| disableAPIServerFloatingIP: |
| description: 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. |
| type: boolean |
| disablePortSecurity: |
| description: DisablePortSecurity disables the port security |
| of the network created for the Kubernetes cluster, which |
| also disables SecurityGroups |
| type: boolean |
| dnsNameservers: |
| description: 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. |
| items: |
| type: string |
| type: array |
| externalNetworkId: |
| description: ExternalNetworkID is the ID of an external OpenStack |
| Network. This is necessary to get public internet to the |
| VMs. |
| type: string |
| externalRouterIPs: |
| description: ExternalRouterIPs is an array of externalIPs |
| on the respective subnets. This is necessary if the router |
| needs a fixed ip in a specific subnet. |
| items: |
| properties: |
| fixedIP: |
| description: The FixedIP in the corresponding subnet |
| type: string |
| subnet: |
| description: The subnet in which the FixedIP is used |
| for the Gateway of this router |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| managedAPIServerLoadBalancer: |
| description: ManagedAPIServerLoadBalancer defines whether |
| a LoadBalancer for the APIServer should be created. |
| type: boolean |
| managedSecurityGroups: |
| description: 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. |
| type: boolean |
| network: |
| description: If NodeCIDR cannot be set this can be used to |
| detect an existing network. |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| nodeCidr: |
| description: 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. |
| type: string |
| subnet: |
| description: If NodeCIDR cannot be set this can be used to |
| detect an existing subnet. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| tags: |
| description: Tags for all resources in cluster |
| items: |
| type: string |
| type: array |
| type: object |
| required: |
| - spec |
| type: object |
| required: |
| - template |
| type: object |
| type: object |
| served: true |
| storage: false |
| - name: v1alpha5 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackClusterTemplate is the Schema for the openstackclustertemplates |
| API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackClusterTemplateSpec defines the desired state of |
| OpenStackClusterTemplate. |
| properties: |
| template: |
| description: OpenStackClusterTemplateResource describes the data needed |
| to create a OpenStackCluster from a template. |
| properties: |
| spec: |
| description: OpenStackClusterSpec defines the desired state of |
| OpenStackCluster. |
| properties: |
| allowAllInClusterTraffic: |
| description: 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. |
| type: boolean |
| apiServerFixedIP: |
| description: 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. |
| type: string |
| apiServerFloatingIP: |
| description: 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. |
| type: string |
| apiServerLoadBalancer: |
| description: 'APIServerLoadBalancer configures the optional |
| LoadBalancer for the APIServer. It must be activated by |
| setting `enabled: true`.' |
| properties: |
| additionalPorts: |
| description: AdditionalPorts adds additional tcp ports |
| to the load balancer. |
| items: |
| type: integer |
| type: array |
| allowedCidrs: |
| description: AllowedCIDRs restrict access to all API-Server |
| listeners to the given address CIDRs. |
| items: |
| type: string |
| type: array |
| enabled: |
| description: Enabled defines whether a load balancer should |
| be created. |
| type: boolean |
| type: object |
| apiServerPort: |
| description: APIServerPort is the port on which the listener |
| on the APIServer will be created |
| type: integer |
| bastion: |
| description: "Bastion is the OpenStack instance to login the |
| nodes \n As a rolling update is not ideal during a bastion |
| host session, we prevent changes to a running bastion configuration. |
| Set `enabled: false` to make changes." |
| properties: |
| availabilityZone: |
| type: string |
| enabled: |
| type: boolean |
| instance: |
| description: Instance for the bastion itself |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the |
| clouds secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for |
| your server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated |
| to the machine, only used for master. The floatingIP |
| should have been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity |
| to be used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported |
| by the infrastructure provider and may be either |
| cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your |
| server instance. If the RootVolume is specified, |
| this will be ignored and use rootVolume directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your |
| server instance. if it's empty, Image name will |
| be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance |
| ID for this machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter |
| when there are multiple networks defined for the |
| tenant. When you do not specify both networks and |
| ports parameters, the server attaches to the only |
| network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet |
| query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. |
| If specified this will not be validated |
| prior to server creation. If specified, |
| the enclosing `NetworkParam` must also |
| be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If |
| specified this will not be validated prior |
| to server creation. Required if `Subnets` |
| specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does |
| not already exist. When you do not specify both |
| networks and ports parameters, the server attaches |
| to the only network created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or |
| disables the port security when set. When |
| not set, it takes the value of the corresponding |
| field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or |
| IP address. These should be subnets of the |
| network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port |
| is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port |
| unique. If unspecified, instead the 0-based |
| index of the port in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and |
| receive virtual network interface (VIF) port-specific |
| information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any |
| combination these of the security groups to |
| assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security |
| groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups |
| to assign to the instance |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port |
| level. If not provided, openStackMachine.Spec.Trunk |
| is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card |
| (vNIC) type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as |
| specified by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign |
| to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security |
| groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine |
| to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create |
| a map of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this |
| subnet will be marked as AccessIPv4 on the created |
| compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created |
| on a trunk port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| type: object |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| controlPlaneAvailabilityZones: |
| description: ControlPlaneAvailabilityZones is the az to deploy |
| control plane to |
| items: |
| type: string |
| type: array |
| controlPlaneEndpoint: |
| description: ControlPlaneEndpoint represents the endpoint |
| used to communicate with the control plane. |
| properties: |
| host: |
| description: The hostname on which the API server is serving. |
| type: string |
| port: |
| description: The port on which the API server is serving. |
| format: int32 |
| type: integer |
| required: |
| - host |
| - port |
| type: object |
| disableAPIServerFloatingIP: |
| description: 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. |
| type: boolean |
| disablePortSecurity: |
| description: DisablePortSecurity disables the port security |
| of the network created for the Kubernetes cluster, which |
| also disables SecurityGroups |
| type: boolean |
| dnsNameservers: |
| description: 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. |
| items: |
| type: string |
| type: array |
| externalNetworkId: |
| description: ExternalNetworkID is the ID of an external OpenStack |
| Network. This is necessary to get public internet to the |
| VMs. |
| type: string |
| externalRouterIPs: |
| description: ExternalRouterIPs is an array of externalIPs |
| on the respective subnets. This is necessary if the router |
| needs a fixed ip in a specific subnet. |
| items: |
| properties: |
| fixedIP: |
| description: The FixedIP in the corresponding subnet |
| type: string |
| subnet: |
| description: The subnet in which the FixedIP is used |
| for the Gateway of this router |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| managedSecurityGroups: |
| description: 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. |
| type: boolean |
| network: |
| description: If NodeCIDR cannot be set this can be used to |
| detect an existing network. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| nodeCidr: |
| description: 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. |
| type: string |
| subnet: |
| description: If NodeCIDR cannot be set this can be used to |
| detect an existing subnet. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| tags: |
| description: Tags for all resources in cluster |
| items: |
| type: string |
| type: array |
| type: object |
| required: |
| - spec |
| type: object |
| required: |
| - template |
| type: object |
| type: object |
| served: true |
| storage: false |
| - name: v1alpha6 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackClusterTemplate is the Schema for the openstackclustertemplates |
| API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackClusterTemplateSpec defines the desired state of |
| OpenStackClusterTemplate. |
| properties: |
| template: |
| description: OpenStackClusterTemplateResource describes the data needed |
| to create a OpenStackCluster from a template. |
| properties: |
| spec: |
| description: OpenStackClusterSpec defines the desired state of |
| OpenStackCluster. |
| properties: |
| allowAllInClusterTraffic: |
| description: 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. |
| type: boolean |
| apiServerFixedIP: |
| description: 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. |
| type: string |
| apiServerFloatingIP: |
| description: 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. |
| type: string |
| apiServerLoadBalancer: |
| description: 'APIServerLoadBalancer configures the optional |
| LoadBalancer for the APIServer. It must be activated by |
| setting `enabled: true`.' |
| properties: |
| additionalPorts: |
| description: AdditionalPorts adds additional tcp ports |
| to the load balancer. |
| items: |
| type: integer |
| type: array |
| allowedCidrs: |
| description: AllowedCIDRs restrict access to all API-Server |
| listeners to the given address CIDRs. |
| items: |
| type: string |
| type: array |
| enabled: |
| description: Enabled defines whether a load balancer should |
| be created. |
| type: boolean |
| type: object |
| apiServerPort: |
| description: APIServerPort is the port on which the listener |
| on the APIServer will be created |
| type: integer |
| bastion: |
| description: "Bastion is the OpenStack instance to login the |
| nodes \n As a rolling update is not ideal during a bastion |
| host session, we prevent changes to a running bastion configuration. |
| Set `enabled: false` to make changes." |
| properties: |
| availabilityZone: |
| type: string |
| enabled: |
| type: boolean |
| instance: |
| description: Instance for the bastion itself |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the |
| clouds secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for |
| your server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated |
| to the machine, only used for master. The floatingIP |
| should have been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity |
| to be used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported |
| by the infrastructure provider and may be either |
| cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your |
| server instance. If the RootVolume is specified, |
| this will be ignored and use rootVolume directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your |
| server instance. if it's empty, Image name will |
| be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance |
| ID for this machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter |
| when there are multiple networks defined for the |
| tenant. When you do not specify both networks and |
| ports parameters, the server attaches to the only |
| network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet |
| query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. |
| If specified this will not be validated |
| prior to server creation. If specified, |
| the enclosing `NetworkParam` must also |
| be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If |
| specified this will not be validated prior |
| to server creation. Required if `Subnets` |
| specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does |
| not already exist. When you do not specify both |
| networks and ports parameters, the server attaches |
| to the only network created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or |
| disables the port security when set. When |
| not set, it takes the value of the corresponding |
| field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or |
| IP address. These should be subnets of the |
| network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port |
| is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port |
| unique. If unspecified, instead the 0-based |
| index of the port in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and |
| receive virtual network interface (VIF) port-specific |
| information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any |
| combination these of the security groups to |
| assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security |
| groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups |
| to assign to the instance |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port |
| level. If not provided, openStackMachine.Spec.Trunk |
| is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card |
| (vNIC) type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as |
| specified by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign |
| to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security |
| groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine |
| to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create |
| a map of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this |
| subnet will be marked as AccessIPv4 on the created |
| compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| trunk: |
| description: Whether the server instance is created |
| on a trunk port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| type: object |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| controlPlaneAvailabilityZones: |
| description: ControlPlaneAvailabilityZones is the az to deploy |
| control plane to |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| controlPlaneEndpoint: |
| description: ControlPlaneEndpoint represents the endpoint |
| used to communicate with the control plane. |
| properties: |
| host: |
| description: The hostname on which the API server is serving. |
| type: string |
| port: |
| description: The port on which the API server is serving. |
| format: int32 |
| type: integer |
| required: |
| - host |
| - port |
| type: object |
| controlPlaneOmitAvailabilityZone: |
| description: 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 |
| type: boolean |
| disableAPIServerFloatingIP: |
| description: 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. |
| type: boolean |
| disablePortSecurity: |
| description: DisablePortSecurity disables the port security |
| of the network created for the Kubernetes cluster, which |
| also disables SecurityGroups |
| type: boolean |
| dnsNameservers: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| externalNetworkId: |
| description: ExternalNetworkID is the ID of an external OpenStack |
| Network. This is necessary to get public internet to the |
| VMs. |
| type: string |
| externalRouterIPs: |
| description: ExternalRouterIPs is an array of externalIPs |
| on the respective subnets. This is necessary if the router |
| needs a fixed ip in a specific subnet. |
| items: |
| properties: |
| fixedIP: |
| description: The FixedIP in the corresponding subnet |
| type: string |
| subnet: |
| description: The subnet in which the FixedIP is used |
| for the Gateway of this router |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| managedSecurityGroups: |
| description: 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. |
| type: boolean |
| network: |
| description: If NodeCIDR cannot be set this can be used to |
| detect an existing network. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| nodeCidr: |
| description: 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. |
| type: string |
| subnet: |
| description: If NodeCIDR cannot be set this can be used to |
| detect an existing subnet. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| tags: |
| description: Tags for all resources in cluster |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| type: object |
| required: |
| - spec |
| type: object |
| required: |
| - template |
| type: object |
| type: object |
| served: true |
| storage: true |
| --- |
| apiVersion: apiextensions.k8s.io/v1 |
| kind: CustomResourceDefinition |
| metadata: |
| annotations: |
| cert-manager.io/inject-ca-from: capo-system/capo-serving-cert |
| controller-gen.kubebuilder.io/version: v0.9.2 |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| cluster.x-k8s.io/v1alpha3: v1alpha3 |
| cluster.x-k8s.io/v1beta1: v1alpha4_v1alpha5_v1alpha6 |
| name: openstackmachines.infrastructure.cluster.x-k8s.io |
| spec: |
| conversion: |
| strategy: Webhook |
| webhook: |
| clientConfig: |
| caBundle: Cg== |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /convert |
| conversionReviewVersions: |
| - v1 |
| - v1beta1 |
| group: infrastructure.cluster.x-k8s.io |
| names: |
| categories: |
| - cluster-api |
| kind: OpenStackMachine |
| listKind: OpenStackMachineList |
| plural: openstackmachines |
| shortNames: |
| - osm |
| singular: openstackmachine |
| scope: Namespaced |
| versions: |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackMachine belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: OpenStack instance state |
| jsonPath: .status.instanceState |
| name: InstanceState |
| type: string |
| - description: Machine ready status |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: OpenStack instance ID |
| jsonPath: .spec.providerID |
| name: ProviderID |
| type: string |
| - description: Machine object which owns with this OpenStackMachine |
| jsonPath: .metadata.ownerReferences[?(@.kind=="Machine")].name |
| name: Machine |
| type: string |
| - description: Time duration since creation of OpenStackMachine |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha3 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachine is the Schema for the openstackmachines API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineSpec defines the desired state of OpenStackMachine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| cloudsSecret: |
| description: The name of the secret containing the openstack credentials |
| properties: |
| name: |
| description: name is unique within a namespace to reference a |
| secret resource. |
| type: string |
| namespace: |
| description: namespace defines the space within which the secret |
| name must be unique. |
| type: string |
| type: object |
| x-kubernetes-map-type: atomic |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the machine, |
| only used for master. The floatingIP should have been created and |
| haven't been associated. |
| type: string |
| image: |
| description: The name of the image to use for your server instance. |
| If the RootVolume is specified, this will be ignored and use rootVolume |
| directly. |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there are |
| multiple networks defined for the tenant. When you do not specify |
| the networks parameter, the server attaches to the only network |
| created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| fixedIp: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: The UUID of the network. Required if you |
| omit the port attribute. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: The UUID of the network. Required if you omit the |
| port attribute. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified by the |
| cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map of key value |
| pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will be marked |
| as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk port |
| or not. |
| type: boolean |
| userDataSecret: |
| description: The name of the secret containing the user data (startup |
| script in most cases) |
| properties: |
| name: |
| description: name is unique within a namespace to reference a |
| secret resource. |
| type: string |
| namespace: |
| description: namespace defines the space within which the secret |
| name must be unique. |
| type: string |
| type: object |
| x-kubernetes-map-type: atomic |
| required: |
| - flavor |
| type: object |
| status: |
| description: OpenStackMachineStatus defines the observed state of OpenStackMachine. |
| properties: |
| addresses: |
| description: Addresses contains the OpenStack instance associated |
| addresses. |
| items: |
| description: NodeAddress contains information for the node's address. |
| properties: |
| address: |
| description: The node address. |
| type: string |
| type: |
| description: Node address type, one of Hostname, ExternalIP |
| or InternalIP. |
| type: string |
| required: |
| - address |
| - type |
| type: object |
| type: array |
| conditions: |
| description: Conditions provide observations of the operational state |
| of a Cluster API resource. |
| items: |
| description: Condition defines an observation of a Cluster API resource |
| operational state. |
| properties: |
| lastTransitionTime: |
| description: 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 |
| type: string |
| message: |
| description: A human readable message indicating details about |
| the transition. This field may be empty. |
| type: string |
| reason: |
| description: The reason for the condition's last transition |
| in CamelCase. The specific API may choose whether or not this |
| field is considered a guaranteed API. This field may not be |
| empty. |
| type: string |
| severity: |
| description: Severity provides an explicit classification of |
| Reason code, so the users or machines can immediately understand |
| the current situation and act accordingly. The Severity field |
| MUST be set only when Status=False. |
| type: string |
| status: |
| description: Status of the condition, one of True, False, Unknown. |
| type: string |
| type: |
| description: Type of condition in CamelCase or in foo.example.com/CamelCase. |
| Many .condition.type values are consistent across resources |
| like Available, but because arbitrary conditions can be useful |
| (see .node.status.conditions), the ability to deconflict is |
| important. |
| type: string |
| required: |
| - lastTransitionTime |
| - status |
| - type |
| type: object |
| type: array |
| errorMessage: |
| description: "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. \n 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. \n 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." |
| type: string |
| errorReason: |
| description: MachineStatusError defines errors states for Machine |
| objects. |
| type: string |
| instanceState: |
| description: InstanceState is the state of the OpenStack instance |
| for this machine. |
| type: string |
| ready: |
| description: Ready is true when the provider resource is ready. |
| type: boolean |
| type: object |
| type: object |
| served: true |
| storage: false |
| subresources: |
| status: {} |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackMachine belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: OpenStack instance state |
| jsonPath: .status.instanceState |
| name: InstanceState |
| type: string |
| - description: Machine ready status |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: OpenStack instance ID |
| jsonPath: .spec.providerID |
| name: ProviderID |
| type: string |
| - description: Machine object which owns with this OpenStackMachine |
| jsonPath: .metadata.ownerReferences[?(@.kind=="Machine")].name |
| name: Machine |
| type: string |
| - description: Time duration since creation of OpenStackMachine |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha4 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachine is the Schema for the openstackmachines API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineSpec defines the desired state of OpenStackMachine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the machine, |
| only used for master. The floatingIP should have been created and |
| haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be used when |
| reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by the infrastructure |
| provider and may be either cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server instance. |
| If the RootVolume is specified, this will be ignored and use rootVolume |
| directly. |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there are |
| multiple networks defined for the tenant. When you do not specify |
| both networks and ports parameters, the server attaches to the only |
| network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must also |
| be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified this |
| will not be validated prior to server creation. Required if |
| `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. They are |
| created if a port with the given name does not already exist. When |
| you do not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnetId: |
| type: string |
| required: |
| - subnetId |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If unspecified, |
| instead the 0-based index of the port in the list is used. |
| type: string |
| networkId: |
| description: ID of the OpenStack network on which to create |
| the port. If unspecified, create the port on the default cluster |
| network. |
| type: string |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroups: |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If not |
| provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified by the |
| cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map of key value |
| pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will be marked |
| as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk port |
| or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| status: |
| description: OpenStackMachineStatus defines the observed state of OpenStackMachine. |
| properties: |
| addresses: |
| description: Addresses contains the OpenStack instance associated |
| addresses. |
| items: |
| description: NodeAddress contains information for the node's address. |
| properties: |
| address: |
| description: The node address. |
| type: string |
| type: |
| description: Node address type, one of Hostname, ExternalIP |
| or InternalIP. |
| type: string |
| required: |
| - address |
| - type |
| type: object |
| type: array |
| conditions: |
| description: Conditions provide observations of the operational state |
| of a Cluster API resource. |
| items: |
| description: Condition defines an observation of a Cluster API resource |
| operational state. |
| properties: |
| lastTransitionTime: |
| description: 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 |
| type: string |
| message: |
| description: A human readable message indicating details about |
| the transition. This field may be empty. |
| type: string |
| reason: |
| description: The reason for the condition's last transition |
| in CamelCase. The specific API may choose whether or not this |
| field is considered a guaranteed API. This field may not be |
| empty. |
| type: string |
| severity: |
| description: Severity provides an explicit classification of |
| Reason code, so the users or machines can immediately understand |
| the current situation and act accordingly. The Severity field |
| MUST be set only when Status=False. |
| type: string |
| status: |
| description: Status of the condition, one of True, False, Unknown. |
| type: string |
| type: |
| description: Type of condition in CamelCase or in foo.example.com/CamelCase. |
| Many .condition.type values are consistent across resources |
| like Available, but because arbitrary conditions can be useful |
| (see .node.status.conditions), the ability to deconflict is |
| important. |
| type: string |
| required: |
| - lastTransitionTime |
| - status |
| - type |
| type: object |
| type: array |
| errorMessage: |
| description: "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. \n 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. \n 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." |
| type: string |
| errorReason: |
| description: MachineStatusError defines errors states for Machine |
| objects. |
| type: string |
| instanceState: |
| description: InstanceState is the state of the OpenStack instance |
| for this machine. |
| type: string |
| ready: |
| description: Ready is true when the provider resource is ready. |
| type: boolean |
| type: object |
| type: object |
| served: true |
| storage: false |
| subresources: |
| status: {} |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackMachine belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: OpenStack instance state |
| jsonPath: .status.instanceState |
| name: InstanceState |
| type: string |
| - description: Machine ready status |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: OpenStack instance ID |
| jsonPath: .spec.providerID |
| name: ProviderID |
| type: string |
| - description: Machine object which owns with this OpenStackMachine |
| jsonPath: .metadata.ownerReferences[?(@.kind=="Machine")].name |
| name: Machine |
| type: string |
| - description: Time duration since creation of OpenStackMachine |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha5 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachine is the Schema for the openstackmachines API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineSpec defines the desired state of OpenStackMachine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the machine, |
| only used for master. The floatingIP should have been created and |
| haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be used when |
| reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by the infrastructure |
| provider and may be either cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server instance. |
| If the RootVolume is specified, this will be ignored and use rootVolume |
| directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your server instance. |
| if it's empty, Image name will be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there are |
| multiple networks defined for the tenant. When you do not specify |
| both networks and ports parameters, the server attaches to the only |
| network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must also |
| be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified this |
| will not be validated prior to server creation. Required if |
| `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. They are |
| created if a port with the given name does not already exist. When |
| you do not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If unspecified, |
| instead the 0-based index of the port in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination these |
| of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign to the |
| instance |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If not |
| provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified by the |
| cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map of key value |
| pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will be marked |
| as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk port |
| or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| status: |
| description: OpenStackMachineStatus defines the observed state of OpenStackMachine. |
| properties: |
| addresses: |
| description: Addresses contains the OpenStack instance associated |
| addresses. |
| items: |
| description: NodeAddress contains information for the node's address. |
| properties: |
| address: |
| description: The node address. |
| type: string |
| type: |
| description: Node address type, one of Hostname, ExternalIP |
| or InternalIP. |
| type: string |
| required: |
| - address |
| - type |
| type: object |
| type: array |
| conditions: |
| description: Conditions provide observations of the operational state |
| of a Cluster API resource. |
| items: |
| description: Condition defines an observation of a Cluster API resource |
| operational state. |
| properties: |
| lastTransitionTime: |
| description: 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 |
| type: string |
| message: |
| description: A human readable message indicating details about |
| the transition. This field may be empty. |
| type: string |
| reason: |
| description: The reason for the condition's last transition |
| in CamelCase. The specific API may choose whether or not this |
| field is considered a guaranteed API. This field may not be |
| empty. |
| type: string |
| severity: |
| description: Severity provides an explicit classification of |
| Reason code, so the users or machines can immediately understand |
| the current situation and act accordingly. The Severity field |
| MUST be set only when Status=False. |
| type: string |
| status: |
| description: Status of the condition, one of True, False, Unknown. |
| type: string |
| type: |
| description: Type of condition in CamelCase or in foo.example.com/CamelCase. |
| Many .condition.type values are consistent across resources |
| like Available, but because arbitrary conditions can be useful |
| (see .node.status.conditions), the ability to deconflict is |
| important. |
| type: string |
| required: |
| - lastTransitionTime |
| - status |
| - type |
| type: object |
| type: array |
| failureMessage: |
| description: "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. \n 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. \n 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." |
| type: string |
| failureReason: |
| description: MachineStatusError defines errors states for Machine |
| objects. |
| type: string |
| instanceState: |
| description: InstanceState is the state of the OpenStack instance |
| for this machine. |
| type: string |
| ready: |
| description: Ready is true when the provider resource is ready. |
| type: boolean |
| type: object |
| type: object |
| served: true |
| storage: false |
| subresources: |
| status: {} |
| - additionalPrinterColumns: |
| - description: Cluster to which this OpenStackMachine belongs |
| jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name |
| name: Cluster |
| type: string |
| - description: OpenStack instance state |
| jsonPath: .status.instanceState |
| name: InstanceState |
| type: string |
| - description: Machine ready status |
| jsonPath: .status.ready |
| name: Ready |
| type: string |
| - description: OpenStack instance ID |
| jsonPath: .spec.providerID |
| name: ProviderID |
| type: string |
| - description: Machine object which owns with this OpenStackMachine |
| jsonPath: .metadata.ownerReferences[?(@.kind=="Machine")].name |
| name: Machine |
| type: string |
| - description: Time duration since creation of OpenStackMachine |
| jsonPath: .metadata.creationTimestamp |
| name: Age |
| type: date |
| name: v1alpha6 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachine is the Schema for the openstackmachines API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineSpec defines the desired state of OpenStackMachine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the machine, |
| only used for master. The floatingIP should have been created and |
| haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be used when |
| reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by the infrastructure |
| provider and may be either cluster or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server instance. |
| If the RootVolume is specified, this will be ignored and use rootVolume |
| directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your server instance. |
| if it's empty, Image name will be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there are |
| multiple networks defined for the tenant. When you do not specify |
| both networks and ports parameters, the server attaches to the only |
| network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must also |
| be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified this |
| will not be validated prior to server creation. Required if |
| `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. They are |
| created if a port with the given name does not already exist. When |
| you do not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables the port |
| security when set. When not set, it takes the value of the |
| corresponding field at the network level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. These |
| should be subnets of the network with the given NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. If unspecified, |
| instead the 0-based index of the port in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application running |
| on the specified host to pass and receive virtual network |
| interface (VIF) port-specific information to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination these |
| of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign to the |
| instance |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. If not |
| provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) type |
| that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified by the |
| cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map of key value |
| pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will be marked |
| as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| trunk: |
| description: Whether the server instance is created on a trunk port |
| or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| status: |
| description: OpenStackMachineStatus defines the observed state of OpenStackMachine. |
| properties: |
| addresses: |
| description: Addresses contains the OpenStack instance associated |
| addresses. |
| items: |
| description: NodeAddress contains information for the node's address. |
| properties: |
| address: |
| description: The node address. |
| type: string |
| type: |
| description: Node address type, one of Hostname, ExternalIP |
| or InternalIP. |
| type: string |
| required: |
| - address |
| - type |
| type: object |
| type: array |
| conditions: |
| description: Conditions provide observations of the operational state |
| of a Cluster API resource. |
| items: |
| description: Condition defines an observation of a Cluster API resource |
| operational state. |
| properties: |
| lastTransitionTime: |
| description: 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 |
| type: string |
| message: |
| description: A human readable message indicating details about |
| the transition. This field may be empty. |
| type: string |
| reason: |
| description: The reason for the condition's last transition |
| in CamelCase. The specific API may choose whether or not this |
| field is considered a guaranteed API. This field may not be |
| empty. |
| type: string |
| severity: |
| description: Severity provides an explicit classification of |
| Reason code, so the users or machines can immediately understand |
| the current situation and act accordingly. The Severity field |
| MUST be set only when Status=False. |
| type: string |
| status: |
| description: Status of the condition, one of True, False, Unknown. |
| type: string |
| type: |
| description: Type of condition in CamelCase or in foo.example.com/CamelCase. |
| Many .condition.type values are consistent across resources |
| like Available, but because arbitrary conditions can be useful |
| (see .node.status.conditions), the ability to deconflict is |
| important. |
| type: string |
| required: |
| - lastTransitionTime |
| - status |
| - type |
| type: object |
| type: array |
| failureMessage: |
| description: "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. \n 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. \n 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." |
| type: string |
| failureReason: |
| description: MachineStatusError defines errors states for Machine |
| objects. |
| type: string |
| instanceState: |
| description: InstanceState is the state of the OpenStack instance |
| for this machine. |
| type: string |
| ready: |
| description: Ready is true when the provider resource is ready. |
| type: boolean |
| type: object |
| type: object |
| served: true |
| storage: true |
| subresources: |
| status: {} |
| --- |
| apiVersion: apiextensions.k8s.io/v1 |
| kind: CustomResourceDefinition |
| metadata: |
| annotations: |
| cert-manager.io/inject-ca-from: capo-system/capo-serving-cert |
| controller-gen.kubebuilder.io/version: v0.9.2 |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| cluster.x-k8s.io/v1alpha3: v1alpha3 |
| cluster.x-k8s.io/v1beta1: v1alpha4_v1alpha5_v1alpha6 |
| name: openstackmachinetemplates.infrastructure.cluster.x-k8s.io |
| spec: |
| conversion: |
| strategy: Webhook |
| webhook: |
| clientConfig: |
| caBundle: Cg== |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /convert |
| conversionReviewVersions: |
| - v1 |
| - v1beta1 |
| group: infrastructure.cluster.x-k8s.io |
| names: |
| categories: |
| - cluster-api |
| kind: OpenStackMachineTemplate |
| listKind: OpenStackMachineTemplateList |
| plural: openstackmachinetemplates |
| shortNames: |
| - osmt |
| singular: openstackmachinetemplate |
| scope: Namespaced |
| versions: |
| - name: v1alpha3 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachineTemplate is the Schema for the openstackmachinetemplates |
| API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineTemplateSpec defines the desired state of |
| OpenStackMachineTemplate. |
| properties: |
| template: |
| description: OpenStackMachineTemplateResource describes the data needed |
| to create a OpenStackMachine from a template. |
| properties: |
| spec: |
| description: Spec is the specification of the desired behavior |
| of the machine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| cloudsSecret: |
| description: The name of the secret containing the openstack |
| credentials |
| properties: |
| name: |
| description: name is unique within a namespace to reference |
| a secret resource. |
| type: string |
| namespace: |
| description: namespace defines the space within which |
| the secret name must be unique. |
| type: string |
| type: object |
| x-kubernetes-map-type: atomic |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify the networks parameter, the server attaches |
| to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| fixedIp: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: The UUID of the network. Required |
| if you omit the port attribute. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: The UUID of the network. Required if you |
| omit the port attribute. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| userDataSecret: |
| description: The name of the secret containing the user data |
| (startup script in most cases) |
| properties: |
| name: |
| description: name is unique within a namespace to reference |
| a secret resource. |
| type: string |
| namespace: |
| description: namespace defines the space within which |
| the secret name must be unique. |
| type: string |
| type: object |
| x-kubernetes-map-type: atomic |
| required: |
| - flavor |
| type: object |
| required: |
| - spec |
| type: object |
| required: |
| - template |
| type: object |
| type: object |
| served: true |
| storage: false |
| - name: v1alpha4 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachineTemplate is the Schema for the openstackmachinetemplates |
| API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineTemplateSpec defines the desired state of |
| OpenStackMachineTemplate. |
| properties: |
| template: |
| description: OpenStackMachineTemplateResource describes the data needed |
| to create a OpenStackMachine from a template. |
| properties: |
| spec: |
| description: Spec is the specification of the desired behavior |
| of the machine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| adminStateUp: |
| type: boolean |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| shared: |
| type: boolean |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| status: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| enableDhcp: |
| type: boolean |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| networkId: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| subnetpoolId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified |
| this will not be validated prior to server creation. |
| Required if `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does not |
| already exist. When you do not specify both networks and |
| ports parameters, the server attaches to the only network |
| created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnetId: |
| type: string |
| required: |
| - subnetId |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| networkId: |
| description: ID of the OpenStack network on which to |
| create the port. If unspecified, create the port on |
| the default cluster network. |
| type: string |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroups: |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| deviceType: |
| type: string |
| diskSize: |
| type: integer |
| sourceType: |
| type: string |
| sourceUUID: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| required: |
| - spec |
| type: object |
| required: |
| - template |
| type: object |
| type: object |
| served: true |
| storage: false |
| - name: v1alpha5 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachineTemplate is the Schema for the openstackmachinetemplates |
| API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineTemplateSpec defines the desired state of |
| OpenStackMachineTemplate. |
| properties: |
| template: |
| description: OpenStackMachineTemplateResource describes the data needed |
| to create a OpenStackMachine from a template. |
| properties: |
| spec: |
| description: Spec is the specification of the desired behavior |
| of the machine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your server |
| instance. if it's empty, Image name will be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified |
| this will not be validated prior to server creation. |
| Required if `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does not |
| already exist. When you do not specify both networks and |
| ports parameters, the server attaches to the only network |
| created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups |
| in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign |
| to the instance |
| items: |
| type: string |
| type: array |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| required: |
| - spec |
| type: object |
| required: |
| - template |
| type: object |
| type: object |
| served: true |
| storage: false |
| - name: v1alpha6 |
| schema: |
| openAPIV3Schema: |
| description: OpenStackMachineTemplate is the Schema for the openstackmachinetemplates |
| API. |
| properties: |
| apiVersion: |
| description: 'APIVersion defines the versioned schema of this representation |
| of an object. Servers should convert recognized schemas to the latest |
| internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' |
| type: string |
| kind: |
| description: 'Kind is a string value representing the REST resource this |
| object represents. Servers may infer this from the endpoint the client |
| submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' |
| type: string |
| metadata: |
| type: object |
| spec: |
| description: OpenStackMachineTemplateSpec defines the desired state of |
| OpenStackMachineTemplate. |
| properties: |
| template: |
| description: OpenStackMachineTemplateResource describes the data needed |
| to create a OpenStackMachine from a template. |
| properties: |
| spec: |
| description: Spec is the specification of the desired behavior |
| of the machine. |
| properties: |
| cloudName: |
| description: The name of the cloud to use from the clouds |
| secret |
| type: string |
| configDrive: |
| description: Config Drive support |
| type: boolean |
| flavor: |
| description: The flavor reference for the flavor for your |
| server instance. |
| type: string |
| floatingIP: |
| description: The floatingIP which will be associated to the |
| machine, only used for master. The floatingIP should have |
| been created and haven't been associated. |
| type: string |
| identityRef: |
| description: IdentityRef is a reference to a identity to be |
| used when reconciling this cluster |
| properties: |
| kind: |
| description: Kind of the identity. Must be supported by |
| the infrastructure provider and may be either cluster |
| or namespace-scoped. |
| minLength: 1 |
| type: string |
| name: |
| description: 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. |
| type: string |
| required: |
| - kind |
| - name |
| type: object |
| image: |
| description: The name of the image to use for your server |
| instance. If the RootVolume is specified, this will be ignored |
| and use rootVolume directly. |
| type: string |
| imageUUID: |
| description: The uuid of the image to use for your server |
| instance. if it's empty, Image name will be used |
| type: string |
| instanceID: |
| description: InstanceID is the OpenStack instance ID for this |
| machine. |
| type: string |
| networks: |
| description: A networks object. Required parameter when there |
| are multiple networks defined for the tenant. When you do |
| not specify both networks and ports parameters, the server |
| attaches to the only network created for the current tenant. |
| items: |
| properties: |
| filter: |
| description: Filters for optional network query |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| fixedIP: |
| description: A fixed IPv4 address for the NIC. |
| type: string |
| subnets: |
| description: Subnet within a network to use |
| items: |
| properties: |
| filter: |
| description: Filters for optional subnet query |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| uuid: |
| description: Optional UUID of the subnet. If specified |
| this will not be validated prior to server creation. |
| If specified, the enclosing `NetworkParam` must |
| also be specified by UUID. |
| type: string |
| type: object |
| type: array |
| uuid: |
| description: Optional UUID of the network. If specified |
| this will not be validated prior to server creation. |
| Required if `Subnets` specifies a subnet by UUID. |
| type: string |
| type: object |
| type: array |
| ports: |
| description: Ports to be attached to the server instance. |
| They are created if a port with the given name does not |
| already exist. When you do not specify both networks and |
| ports parameters, the server attaches to the only network |
| created for the current tenant. |
| items: |
| properties: |
| adminStateUp: |
| type: boolean |
| allowedAddressPairs: |
| items: |
| properties: |
| ipAddress: |
| type: string |
| macAddress: |
| type: string |
| type: object |
| type: array |
| description: |
| type: string |
| disablePortSecurity: |
| description: DisablePortSecurity enables or disables |
| the port security when set. When not set, it takes |
| the value of the corresponding field at the network |
| level. |
| type: boolean |
| fixedIPs: |
| description: Specify pairs of subnet and/or IP address. |
| These should be subnets of the network with the given |
| NetworkID. |
| items: |
| properties: |
| ipAddress: |
| type: string |
| subnet: |
| description: 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. |
| properties: |
| cidr: |
| type: string |
| description: |
| type: string |
| gateway_ip: |
| type: string |
| id: |
| type: string |
| ipVersion: |
| type: integer |
| ipv6AddressMode: |
| type: string |
| ipv6RaMode: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| required: |
| - subnet |
| type: object |
| type: array |
| hostId: |
| description: The ID of the host where the port is allocated |
| type: string |
| macAddress: |
| type: string |
| nameSuffix: |
| description: Used to make the name of the port unique. |
| If unspecified, instead the 0-based index of the port |
| in the list is used. |
| type: string |
| network: |
| description: 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. |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| type: object |
| profile: |
| additionalProperties: |
| type: string |
| description: A dictionary that enables the application |
| running on the specified host to pass and receive |
| virtual network interface (VIF) port-specific information |
| to the plug-in. |
| type: object |
| projectId: |
| type: string |
| securityGroupFilters: |
| description: The names, uuids, filters or any combination |
| these of the security groups to assign to the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups |
| in openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| securityGroups: |
| description: The uuids of the security groups to assign |
| to the instance |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tags: |
| description: 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. |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| tenantId: |
| type: string |
| trunk: |
| description: Enables and disables trunk at port level. |
| If not provided, openStackMachine.Spec.Trunk is inherited. |
| type: boolean |
| vnicType: |
| description: The virtual network interface card (vNIC) |
| type that is bound to the neutron port. |
| type: string |
| type: object |
| type: array |
| providerID: |
| description: ProviderID is the unique identifier as specified |
| by the cloud provider. |
| type: string |
| rootVolume: |
| description: The volume metadata to boot from |
| properties: |
| availabilityZone: |
| type: string |
| diskSize: |
| type: integer |
| volumeType: |
| type: string |
| type: object |
| securityGroups: |
| description: The names of the security groups to assign to |
| the instance |
| items: |
| properties: |
| filter: |
| description: Filters used to query security groups in |
| openstack |
| properties: |
| description: |
| type: string |
| id: |
| type: string |
| limit: |
| type: integer |
| marker: |
| type: string |
| name: |
| type: string |
| notTags: |
| type: string |
| notTagsAny: |
| type: string |
| projectId: |
| type: string |
| sortDir: |
| type: string |
| sortKey: |
| type: string |
| tags: |
| type: string |
| tagsAny: |
| type: string |
| tenantId: |
| type: string |
| type: object |
| name: |
| description: Security Group name |
| type: string |
| uuid: |
| description: Security Group UID |
| type: string |
| type: object |
| type: array |
| serverGroupID: |
| description: The server group to assign the machine to |
| type: string |
| serverMetadata: |
| additionalProperties: |
| type: string |
| description: Metadata mapping. Allows you to create a map |
| of key value pairs to add to the server instance. |
| type: object |
| sshKeyName: |
| description: The ssh key to inject in the instance |
| type: string |
| subnet: |
| description: UUID, IP address of a port from this subnet will |
| be marked as AccessIPv4 on the created compute instance |
| type: string |
| tags: |
| description: Machine tags Requires Nova api 2.52 minimum! |
| items: |
| type: string |
| type: array |
| x-kubernetes-list-type: set |
| trunk: |
| description: Whether the server instance is created on a trunk |
| port or not. |
| type: boolean |
| required: |
| - flavor |
| type: object |
| required: |
| - spec |
| type: object |
| required: |
| - template |
| type: object |
| type: object |
| served: true |
| storage: true |
| --- |
| apiVersion: v1 |
| kind: ServiceAccount |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-manager |
| namespace: capo-system |
| --- |
| apiVersion: rbac.authorization.k8s.io/v1 |
| kind: Role |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-leader-election-role |
| namespace: capo-system |
| rules: |
| - apiGroups: |
| - "" |
| resources: |
| - configmaps |
| verbs: |
| - get |
| - list |
| - watch |
| - create |
| - update |
| - patch |
| - delete |
| - apiGroups: |
| - "" |
| resources: |
| - configmaps/status |
| verbs: |
| - get |
| - update |
| - patch |
| - apiGroups: |
| - "" |
| resources: |
| - events |
| verbs: |
| - create |
| - apiGroups: |
| - coordination.k8s.io |
| resources: |
| - leases |
| verbs: |
| - get |
| - list |
| - watch |
| - create |
| - update |
| - patch |
| - delete |
| --- |
| apiVersion: rbac.authorization.k8s.io/v1 |
| kind: ClusterRole |
| metadata: |
| creationTimestamp: null |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-manager-role |
| rules: |
| - apiGroups: |
| - "" |
| resources: |
| - events |
| verbs: |
| - create |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - "" |
| resources: |
| - secrets |
| verbs: |
| - get |
| - list |
| - watch |
| - apiGroups: |
| - cluster.x-k8s.io |
| resources: |
| - clusters |
| - clusters/status |
| verbs: |
| - get |
| - list |
| - watch |
| - apiGroups: |
| - cluster.x-k8s.io |
| resources: |
| - machines |
| - machines/status |
| verbs: |
| - get |
| - list |
| - watch |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| resources: |
| - openstackclusters |
| verbs: |
| - create |
| - delete |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| resources: |
| - openstackclusters/status |
| verbs: |
| - get |
| - patch |
| - update |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| resources: |
| - openstackmachines |
| verbs: |
| - create |
| - delete |
| - get |
| - list |
| - patch |
| - update |
| - watch |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| resources: |
| - openstackmachines/status |
| verbs: |
| - get |
| - patch |
| - update |
| --- |
| apiVersion: rbac.authorization.k8s.io/v1 |
| kind: RoleBinding |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-leader-election-rolebinding |
| namespace: capo-system |
| roleRef: |
| apiGroup: rbac.authorization.k8s.io |
| kind: Role |
| name: capo-leader-election-role |
| subjects: |
| - kind: ServiceAccount |
| name: capo-manager |
| namespace: capo-system |
| --- |
| apiVersion: rbac.authorization.k8s.io/v1 |
| kind: ClusterRoleBinding |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-manager-rolebinding |
| roleRef: |
| apiGroup: rbac.authorization.k8s.io |
| kind: ClusterRole |
| name: capo-manager-role |
| subjects: |
| - kind: ServiceAccount |
| name: capo-manager |
| namespace: capo-system |
| --- |
| apiVersion: v1 |
| kind: Service |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-webhook-service |
| namespace: capo-system |
| spec: |
| ports: |
| - port: 443 |
| targetPort: webhook-server |
| selector: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| --- |
| apiVersion: apps/v1 |
| kind: Deployment |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| control-plane: capo-controller-manager |
| name: capo-controller-manager |
| namespace: capo-system |
| spec: |
| replicas: 1 |
| selector: |
| matchLabels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| control-plane: capo-controller-manager |
| template: |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| control-plane: capo-controller-manager |
| spec: |
| containers: |
| - args: |
| - --leader-elect |
| - --v=2 |
| - --metrics-bind-addr=127.0.0.1:8080 |
| command: |
| - /manager |
| image: "{{ atmosphere_images['cluster_api_openstack_controller'] | vexxhost.atmosphere.docker_image('ref') }}" |
| imagePullPolicy: IfNotPresent |
| livenessProbe: |
| httpGet: |
| path: /healthz |
| port: healthz |
| name: manager |
| ports: |
| - containerPort: 9443 |
| name: webhook-server |
| protocol: TCP |
| - containerPort: 9440 |
| name: healthz |
| protocol: TCP |
| readinessProbe: |
| httpGet: |
| path: /readyz |
| port: healthz |
| volumeMounts: |
| - mountPath: /tmp/k8s-webhook-server/serving-certs |
| name: cert |
| readOnly: true |
| serviceAccountName: capo-manager |
| terminationGracePeriodSeconds: 10 |
| tolerations: |
| - effect: NoSchedule |
| key: node-role.kubernetes.io/master |
| - effect: NoSchedule |
| key: node-role.kubernetes.io/control-plane |
| volumes: |
| - name: cert |
| secret: |
| defaultMode: 420 |
| secretName: capo-webhook-service-cert |
| --- |
| apiVersion: cert-manager.io/v1 |
| kind: Certificate |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-serving-cert |
| namespace: capo-system |
| spec: |
| dnsNames: |
| - capo-webhook-service.capo-system.svc |
| - capo-webhook-service.capo-system.svc.cluster.local |
| issuerRef: |
| kind: Issuer |
| name: capo-selfsigned-issuer |
| secretName: capo-webhook-service-cert |
| --- |
| apiVersion: cert-manager.io/v1 |
| kind: Issuer |
| metadata: |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-selfsigned-issuer |
| namespace: capo-system |
| spec: |
| selfSigned: {} |
| --- |
| apiVersion: admissionregistration.k8s.io/v1 |
| kind: MutatingWebhookConfiguration |
| metadata: |
| annotations: |
| cert-manager.io/inject-ca-from: capo-system/capo-serving-cert |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-mutating-webhook-configuration |
| webhooks: |
| - admissionReviewVersions: |
| - v1beta1 |
| clientConfig: |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /mutate-infrastructure-cluster-x-k8s-io-v1alpha6-openstackcluster |
| failurePolicy: Fail |
| matchPolicy: Equivalent |
| name: default.openstackcluster.infrastructure.cluster.x-k8s.io |
| rules: |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| apiVersions: |
| - v1alpha6 |
| operations: |
| - CREATE |
| - UPDATE |
| resources: |
| - openstackclusters |
| sideEffects: None |
| - admissionReviewVersions: |
| - v1beta1 |
| clientConfig: |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /mutate-infrastructure-cluster-x-k8s-io-v1alpha6-openstackclustertemplate |
| failurePolicy: Fail |
| matchPolicy: Equivalent |
| name: default.openstackclustertemplate.infrastructure.cluster.x-k8s.io |
| rules: |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| apiVersions: |
| - v1alpha6 |
| operations: |
| - CREATE |
| - UPDATE |
| resources: |
| - openstackclustertemplates |
| sideEffects: None |
| - admissionReviewVersions: |
| - v1beta1 |
| clientConfig: |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /mutate-infrastructure-cluster-x-k8s-io-v1alpha6-openstackmachine |
| failurePolicy: Fail |
| matchPolicy: Equivalent |
| name: default.openstackmachine.infrastructure.cluster.x-k8s.io |
| rules: |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| apiVersions: |
| - v1alpha6 |
| operations: |
| - CREATE |
| - UPDATE |
| resources: |
| - openstackmachines |
| sideEffects: None |
| --- |
| apiVersion: admissionregistration.k8s.io/v1 |
| kind: ValidatingWebhookConfiguration |
| metadata: |
| annotations: |
| cert-manager.io/inject-ca-from: capo-system/capo-serving-cert |
| labels: |
| cluster.x-k8s.io/provider: infrastructure-openstack |
| name: capo-validating-webhook-configuration |
| webhooks: |
| - admissionReviewVersions: |
| - v1beta1 |
| clientConfig: |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /validate-infrastructure-cluster-x-k8s-io-v1alpha6-openstackcluster |
| failurePolicy: Fail |
| matchPolicy: Equivalent |
| name: validation.openstackcluster.infrastructure.cluster.x-k8s.io |
| rules: |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| apiVersions: |
| - v1alpha6 |
| operations: |
| - CREATE |
| - UPDATE |
| resources: |
| - openstackclusters |
| sideEffects: None |
| - admissionReviewVersions: |
| - v1beta1 |
| clientConfig: |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /validate-infrastructure-cluster-x-k8s-io-v1alpha6-openstackclustertemplate |
| failurePolicy: Fail |
| matchPolicy: Equivalent |
| name: validation.openstackclustertemplate.infrastructure.cluster.x-k8s.io |
| rules: |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| apiVersions: |
| - v1alpha6 |
| operations: |
| - CREATE |
| - UPDATE |
| resources: |
| - openstackclustertemplates |
| sideEffects: None |
| - admissionReviewVersions: |
| - v1beta1 |
| clientConfig: |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /validate-infrastructure-cluster-x-k8s-io-v1alpha6-openstackmachine |
| failurePolicy: Fail |
| matchPolicy: Equivalent |
| name: validation.openstackmachine.infrastructure.cluster.x-k8s.io |
| rules: |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| apiVersions: |
| - v1alpha6 |
| operations: |
| - CREATE |
| - UPDATE |
| resources: |
| - openstackmachines |
| sideEffects: None |
| - admissionReviewVersions: |
| - v1beta1 |
| clientConfig: |
| service: |
| name: capo-webhook-service |
| namespace: capo-system |
| path: /validate-infrastructure-cluster-x-k8s-io-v1alpha6-openstackmachinetemplate |
| failurePolicy: Fail |
| matchPolicy: Equivalent |
| name: validation.openstackmachinetemplate.infrastructure.cluster.x-k8s.io |
| rules: |
| - apiGroups: |
| - infrastructure.cluster.x-k8s.io |
| apiVersions: |
| - v1alpha6 |
| operations: |
| - CREATE |
| - UPDATE |
| resources: |
| - openstackmachinetemplates |
| sideEffects: None |