github.com/giantswarm/apiextensions/v2@v2.6.2/config/crd/v1/infrastructure.cluster.x-k8s.io_azureclusters.yaml (about) 1 2 --- 3 apiVersion: apiextensions.k8s.io/v1 4 kind: CustomResourceDefinition 5 metadata: 6 annotations: 7 controller-gen.kubebuilder.io/version: v0.2.4 8 creationTimestamp: null 9 name: azureclusters.infrastructure.cluster.x-k8s.io 10 spec: 11 group: infrastructure.cluster.x-k8s.io 12 names: 13 categories: 14 - cluster-api 15 kind: AzureCluster 16 listKind: AzureClusterList 17 plural: azureclusters 18 singular: azurecluster 19 scope: Namespaced 20 versions: 21 - additionalPrinterColumns: 22 - description: Cluster to which this AzureCluster belongs 23 jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name 24 name: Cluster 25 type: string 26 - jsonPath: .status.ready 27 name: Ready 28 type: boolean 29 - jsonPath: .spec.resourceGroup 30 name: Resource Group 31 priority: 1 32 type: string 33 - jsonPath: .spec.subscriptionID 34 name: SubscriptionID 35 priority: 1 36 type: string 37 - jsonPath: .spec.location 38 name: Location 39 priority: 1 40 type: string 41 - description: Control Plane Endpoint 42 jsonPath: .spec.controlPlaneEndpoint.host 43 name: Endpoint 44 priority: 1 45 type: string 46 name: v1alpha3 47 schema: 48 openAPIV3Schema: 49 description: AzureCluster is the Schema for the azureclusters API 50 properties: 51 apiVersion: 52 description: 'APIVersion defines the versioned schema of this representation 53 of an object. Servers should convert recognized schemas to the latest 54 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 55 type: string 56 kind: 57 description: 'Kind is a string value representing the REST resource this 58 object represents. Servers may infer this from the endpoint the client 59 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 60 type: string 61 metadata: 62 type: object 63 spec: 64 description: AzureClusterSpec defines the desired state of AzureCluster 65 properties: 66 additionalTags: 67 additionalProperties: 68 type: string 69 description: AdditionalTags is an optional set of tags to add to Azure 70 resources managed by the Azure provider, in addition to the ones 71 added by default. 72 type: object 73 controlPlaneEndpoint: 74 description: ControlPlaneEndpoint represents the endpoint used to 75 communicate with the control plane. 76 properties: 77 host: 78 description: The hostname on which the API server is serving. 79 type: string 80 port: 81 description: The port on which the API server is serving. 82 format: int32 83 type: integer 84 required: 85 - host 86 - port 87 type: object 88 location: 89 type: string 90 networkSpec: 91 description: NetworkSpec encapsulates all things related to Azure 92 network. 93 properties: 94 subnets: 95 description: Subnets is the configuration for the control-plane 96 subnet and the node subnet. 97 items: 98 description: SubnetSpec configures an Azure subnet. 99 properties: 100 cidrBlock: 101 description: CidrBlock is the CIDR block to be used when 102 the provider creates a managed Vnet. 103 type: string 104 id: 105 description: ID defines a unique identifier to reference 106 this resource. 107 type: string 108 internalLBIPAddress: 109 description: InternalLBIPAddress is the IP address that 110 will be used as the internal LB private IP. For the control 111 plane subnet only. 112 type: string 113 name: 114 description: Name defines a name for the subnet resource. 115 type: string 116 role: 117 description: Role defines the subnet role (eg. Node, ControlPlane) 118 type: string 119 routeTable: 120 description: RouteTable defines the route table that should 121 be attached to this subnet. 122 properties: 123 id: 124 type: string 125 name: 126 type: string 127 type: object 128 securityGroup: 129 description: SecurityGroup defines the NSG (network security 130 group) that should be attached to this subnet. 131 properties: 132 id: 133 type: string 134 ingressRule: 135 description: IngressRules is a slice of Azure ingress 136 rules for security groups. 137 items: 138 description: IngressRule defines an Azure ingress 139 rule for security groups. 140 properties: 141 description: 142 type: string 143 destination: 144 description: Destination - The destination address 145 prefix. CIDR or destination IP range. Asterix 146 '*' can also be used to match all source IPs. 147 Default tags such as 'VirtualNetwork', 'AzureLoadBalancer' 148 and 'Internet' can also be used. 149 type: string 150 destinationPorts: 151 description: DestinationPorts - The destination 152 port or range. Integer or range between 0 and 153 65535. Asterix '*' can also be used to match 154 all ports. 155 type: string 156 name: 157 type: string 158 priority: 159 description: Priority - A number between 100 and 160 4096. Each rule should have a unique value for 161 priority. Rules are processed in priority order, 162 with lower numbers processed before higher numbers. 163 Once traffic matches a rule, processing stops. 164 format: int32 165 type: integer 166 protocol: 167 description: SecurityGroupProtocol defines the 168 protocol type for a security group rule. 169 type: string 170 source: 171 description: Source - The CIDR or source IP range. 172 Asterix '*' can also be used to match all source 173 IPs. Default tags such as 'VirtualNetwork', 174 'AzureLoadBalancer' and 'Internet' can also 175 be used. If this is an ingress rule, specifies 176 where network traffic originates from. 177 type: string 178 sourcePorts: 179 description: SourcePorts - The source port or 180 range. Integer or range between 0 and 65535. 181 Asterix '*' can also be used to match all ports. 182 type: string 183 required: 184 - description 185 - name 186 - protocol 187 type: object 188 type: array 189 name: 190 type: string 191 tags: 192 additionalProperties: 193 type: string 194 description: Tags defines a map of tags. 195 type: object 196 type: object 197 required: 198 - name 199 type: object 200 type: array 201 vnet: 202 description: Vnet is the configuration for the Azure virtual network. 203 properties: 204 cidrBlock: 205 description: CidrBlock is the CIDR block to be used when the 206 provider creates a managed virtual network. 207 type: string 208 id: 209 description: ID is the identifier of the virtual network this 210 provider should use to create resources. 211 type: string 212 name: 213 description: Name defines a name for the virtual network resource. 214 type: string 215 resourceGroup: 216 description: ResourceGroup is the name of the resource group 217 of the existing virtual network or the resource group where 218 a managed virtual network should be created. 219 type: string 220 tags: 221 additionalProperties: 222 type: string 223 description: Tags is a collection of tags describing the resource. 224 type: object 225 required: 226 - name 227 type: object 228 type: object 229 resourceGroup: 230 type: string 231 subscriptionID: 232 type: string 233 required: 234 - location 235 type: object 236 status: 237 description: AzureClusterStatus defines the observed state of AzureCluster 238 properties: 239 bastion: 240 description: VM describes an Azure virtual machine. 241 properties: 242 addresses: 243 description: Addresses contains the addresses associated with 244 the Azure VM. 245 items: 246 description: NodeAddress contains information for the node's 247 address. 248 properties: 249 address: 250 description: The node address. 251 type: string 252 type: 253 description: Node address type, one of Hostname, ExternalIP 254 or InternalIP. 255 type: string 256 required: 257 - address 258 - type 259 type: object 260 type: array 261 availabilityZone: 262 type: string 263 id: 264 type: string 265 identity: 266 description: VMIdentity defines the identity of the virtual machine, 267 if configured. 268 enum: 269 - None 270 - SystemAssigned 271 - UserAssigned 272 type: string 273 image: 274 description: Storage profile 275 properties: 276 id: 277 description: ID specifies an image to use by ID 278 type: string 279 marketplace: 280 description: Marketplace specifies an image to use from the 281 Azure Marketplace 282 properties: 283 offer: 284 description: Offer specifies the name of a group of related 285 images created by the publisher. For example, UbuntuServer, 286 WindowsServer 287 minLength: 1 288 type: string 289 publisher: 290 description: Publisher is the name of the organization 291 that created the image 292 minLength: 1 293 type: string 294 sku: 295 description: SKU specifies an instance of an offer, such 296 as a major release of a distribution. For example, 18.04-LTS, 297 2019-Datacenter 298 minLength: 1 299 type: string 300 version: 301 description: Version specifies the version of an image 302 sku. The allowed formats are Major.Minor.Build or 'latest'. 303 Major, Minor, and Build are decimal numbers. Specify 304 'latest' to use the latest version of an image available 305 at deploy time. Even if you use 'latest', the VM image 306 will not automatically update after deploy time even 307 if a new version becomes available. 308 minLength: 1 309 type: string 310 required: 311 - offer 312 - publisher 313 - sku 314 - version 315 type: object 316 sharedGallery: 317 description: SharedGallery specifies an image to use from 318 an Azure Shared Image Gallery 319 properties: 320 gallery: 321 description: Gallery specifies the name of the shared 322 image gallery that contains the image 323 minLength: 1 324 type: string 325 name: 326 description: Name is the name of the image 327 minLength: 1 328 type: string 329 resourceGroup: 330 description: ResourceGroup specifies the resource group 331 containing the shared image gallery 332 minLength: 1 333 type: string 334 subscriptionID: 335 description: SubscriptionID is the identifier of the subscription 336 that contains the shared image gallery 337 minLength: 1 338 type: string 339 version: 340 description: Version specifies the version of the marketplace 341 image. The allowed formats are Major.Minor.Build or 342 'latest'. Major, Minor, and Build are decimal numbers. 343 Specify 'latest' to use the latest version of an image 344 available at deploy time. Even if you use 'latest', 345 the VM image will not automatically update after deploy 346 time even if a new version becomes available. 347 minLength: 1 348 type: string 349 required: 350 - gallery 351 - name 352 - resourceGroup 353 - subscriptionID 354 - version 355 type: object 356 type: object 357 name: 358 type: string 359 osDisk: 360 description: OSDisk defines the operating system disk for a VM. 361 properties: 362 diffDiskSettings: 363 description: DiffDiskSettings describe ephemeral disk settings 364 for the os disk. 365 properties: 366 option: 367 description: Option enables ephemeral OS when set to "Local" 368 See https://docs.microsoft.com/en-us/azure/virtual-machines/linux/ephemeral-os-disks 369 for full details 370 enum: 371 - Local 372 type: string 373 required: 374 - option 375 type: object 376 diskSizeGB: 377 format: int32 378 type: integer 379 managedDisk: 380 description: ManagedDisk defines the managed disk options 381 for a VM. 382 properties: 383 storageAccountType: 384 type: string 385 required: 386 - storageAccountType 387 type: object 388 osType: 389 type: string 390 required: 391 - diskSizeGB 392 - managedDisk 393 - osType 394 type: object 395 startupScript: 396 type: string 397 tags: 398 additionalProperties: 399 type: string 400 description: Tags defines a map of tags. 401 type: object 402 vmSize: 403 description: Hardware profile 404 type: string 405 vmState: 406 description: State - The provisioning state, which only appears 407 in the response. 408 type: string 409 type: object 410 conditions: 411 description: Conditions defines current service state of the AzureCluster. 412 items: 413 description: Condition defines an observation of a Cluster API resource 414 operational state. 415 properties: 416 lastTransitionTime: 417 description: Last time the condition transitioned from one status 418 to another. This should be when the underlying condition changed. 419 If that is not known, then using the time when the API field 420 changed is acceptable. 421 format: date-time 422 type: string 423 message: 424 description: A human readable message indicating details about 425 the transition. This field may be empty. 426 type: string 427 reason: 428 description: The reason for the condition's last transition 429 in CamelCase. The specific API may choose whether or not this 430 field is considered a guaranteed API. This field may not be 431 empty. 432 type: string 433 severity: 434 description: Severity provides an explicit classification of 435 Reason code, so the users or machines can immediately understand 436 the current situation and act accordingly. The Severity field 437 MUST be set only when Status=False. 438 type: string 439 status: 440 description: Status of the condition, one of True, False, Unknown. 441 type: string 442 type: 443 description: Type of condition in CamelCase or in foo.example.com/CamelCase. 444 Many .condition.type values are consistent across resources 445 like Available, but because arbitrary conditions can be useful 446 (see .node.status.conditions), the ability to deconflict is 447 important. 448 type: string 449 required: 450 - status 451 - type 452 type: object 453 type: array 454 failureDomains: 455 additionalProperties: 456 description: FailureDomainSpec is the Schema for Cluster API failure 457 domains. It allows controllers to understand how many failure 458 domains a cluster can optionally span across. 459 properties: 460 attributes: 461 additionalProperties: 462 type: string 463 description: Attributes is a free form map of attributes an 464 infrastructure provider might use or require. 465 type: object 466 controlPlane: 467 description: ControlPlane determines if this failure domain 468 is suitable for use by control plane machines. 469 type: boolean 470 type: object 471 description: 'FailureDomains specifies the list of unique failure 472 domains for the location/region of the cluster. A FailureDomain 473 maps to Availability Zone with an Azure Region (if the region support 474 them). An Availability Zone is a separate data center within a region 475 and they can be used to ensure the cluster is more resilient to 476 failure. See: https://docs.microsoft.com/en-us/azure/availability-zones/az-overview 477 This list will be used by Cluster API to try and spread the machines 478 across the failure domains.' 479 type: object 480 network: 481 description: Network encapsulates the state of Azure networking resources. 482 properties: 483 apiServerIp: 484 description: APIServerIP is the Kubernetes API server public IP 485 address. 486 properties: 487 dnsName: 488 type: string 489 id: 490 type: string 491 ipAddress: 492 type: string 493 name: 494 type: string 495 type: object 496 apiServerLb: 497 description: APIServerLB is the Kubernetes API server load balancer. 498 properties: 499 backendPool: 500 description: BackendPool defines a load balancer backend pool 501 properties: 502 id: 503 type: string 504 name: 505 type: string 506 type: object 507 frontendIpConfig: 508 description: FrontendIPConfig - DO NOT USE this empty struct 509 is here to preserve backwards compatibility and should be 510 removed in v1alpha4 511 type: object 512 id: 513 type: string 514 name: 515 type: string 516 sku: 517 description: SKU defines an Azure load balancer SKU. 518 type: string 519 tags: 520 additionalProperties: 521 type: string 522 description: Tags defines a map of tags. 523 type: object 524 type: object 525 type: object 526 ready: 527 description: Ready is true when the provider resource is ready. 528 type: boolean 529 type: object 530 type: object 531 served: true 532 storage: true 533 subresources: 534 status: {} 535 status: 536 acceptedNames: 537 kind: "" 538 plural: "" 539 conditions: [] 540 storedVersions: []