sigs.k8s.io/cluster-api-provider-azure@v1.14.3/config/crd/bases/infrastructure.cluster.x-k8s.io_azuremachinepools.yaml (about) 1 --- 2 apiVersion: apiextensions.k8s.io/v1 3 kind: CustomResourceDefinition 4 metadata: 5 annotations: 6 controller-gen.kubebuilder.io/version: v0.13.0 7 name: azuremachinepools.infrastructure.cluster.x-k8s.io 8 spec: 9 group: infrastructure.cluster.x-k8s.io 10 names: 11 categories: 12 - cluster-api 13 kind: AzureMachinePool 14 listKind: AzureMachinePoolList 15 plural: azuremachinepools 16 shortNames: 17 - amp 18 singular: azuremachinepool 19 scope: Namespaced 20 versions: 21 - additionalPrinterColumns: 22 - description: AzureMachinePool replicas count 23 jsonPath: .status.replicas 24 name: Replicas 25 type: string 26 - description: AzureMachinePool replicas count 27 jsonPath: .status.ready 28 name: Ready 29 type: string 30 - description: Azure VMSS provisioning state 31 jsonPath: .status.provisioningState 32 name: State 33 type: string 34 - description: Cluster to which this AzureMachinePool belongs 35 jsonPath: .metadata.labels.cluster\.x-k8s\.io/cluster-name 36 name: Cluster 37 priority: 1 38 type: string 39 - description: MachinePool object to which this AzureMachinePool belongs 40 jsonPath: .metadata.ownerReferences[?(@.kind=="MachinePool")].name 41 name: MachinePool 42 priority: 1 43 type: string 44 - description: Azure VMSS ID 45 jsonPath: .spec.providerID 46 name: VMSS ID 47 priority: 1 48 type: string 49 - description: Azure VM Size 50 jsonPath: .spec.template.vmSize 51 name: VM Size 52 priority: 1 53 type: string 54 - description: Time duration since creation of this AzureMachinePool 55 jsonPath: .metadata.creationTimestamp 56 name: Age 57 type: date 58 name: v1beta1 59 schema: 60 openAPIV3Schema: 61 description: AzureMachinePool is the Schema for the azuremachinepools API. 62 properties: 63 apiVersion: 64 description: 'APIVersion defines the versioned schema of this representation 65 of an object. Servers should convert recognized schemas to the latest 66 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 67 type: string 68 kind: 69 description: 'Kind is a string value representing the REST resource this 70 object represents. Servers may infer this from the endpoint the client 71 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 72 type: string 73 metadata: 74 type: object 75 spec: 76 description: AzureMachinePoolSpec defines the desired state of AzureMachinePool. 77 properties: 78 additionalTags: 79 additionalProperties: 80 type: string 81 description: AdditionalTags is an optional set of tags to add to an 82 instance, in addition to the ones added by default by the Azure 83 provider. If both the AzureCluster and the AzureMachine specify 84 the same tag name with different values, the AzureMachine's value 85 takes precedence. 86 type: object 87 identity: 88 default: None 89 description: Identity is the type of identity used for the Virtual 90 Machine Scale Set. The type 'SystemAssigned' is an implicitly created 91 identity. The generated identity will be assigned a Subscription 92 contributor role. The type 'UserAssigned' is a standalone Azure 93 resource provided by the user and assigned to the VM 94 enum: 95 - None 96 - SystemAssigned 97 - UserAssigned 98 type: string 99 location: 100 description: Location is the Azure region location e.g. westus2 101 type: string 102 orchestrationMode: 103 default: Uniform 104 description: OrchestrationMode specifies the orchestration mode for 105 the Virtual Machine Scale Set 106 enum: 107 - Flexible 108 - Uniform 109 type: string 110 platformFaultDomainCount: 111 description: PlatformFaultDomainCount specifies the number of fault 112 domains that the Virtual Machine Scale Set can use. The count determines 113 the spreading algorithm of the Azure fault domain. 114 format: int32 115 type: integer 116 providerID: 117 description: ProviderID is the identification ID of the Virtual Machine 118 Scale Set 119 type: string 120 providerIDList: 121 description: ProviderIDList are the identification IDs of machine 122 instances provided by the provider. This field must match the provider 123 IDs as seen on the node objects corresponding to a machine pool's 124 machine instances. 125 items: 126 type: string 127 type: array 128 roleAssignmentName: 129 description: 'Deprecated: RoleAssignmentName should be set in the 130 systemAssignedIdentityRole field.' 131 type: string 132 strategy: 133 default: 134 rollingUpdate: 135 deletePolicy: Oldest 136 maxSurge: 1 137 maxUnavailable: 0 138 type: RollingUpdate 139 description: The deployment strategy to use to replace existing AzureMachinePoolMachines 140 with new ones. 141 properties: 142 rollingUpdate: 143 description: Rolling update config params. Present only if MachineDeploymentStrategyType 144 = RollingUpdate. 145 properties: 146 deletePolicy: 147 default: Oldest 148 description: DeletePolicy defines the policy used by the MachineDeployment 149 to identify nodes to delete when downscaling. Valid values 150 are "Random, "Newest", "Oldest" When no value is supplied, 151 the default is Oldest 152 enum: 153 - Random 154 - Newest 155 - Oldest 156 type: string 157 maxSurge: 158 anyOf: 159 - type: integer 160 - type: string 161 default: 1 162 description: 'The maximum number of machines that can be scheduled 163 above the desired number of machines. Value can be an absolute 164 number (ex: 5) or a percentage of desired machines (ex: 165 10%). This can not be 0 if MaxUnavailable is 0. Absolute 166 number is calculated from percentage by rounding up. Defaults 167 to 1. Example: when this is set to 30%, the new MachineSet 168 can be scaled up immediately when the rolling update starts, 169 such that the total number of old and new machines do not 170 exceed 130% of desired machines. Once old machines have 171 been killed, new MachineSet can be scaled up further, ensuring 172 that total number of machines running at any time during 173 the update is at most 130% of desired machines.' 174 x-kubernetes-int-or-string: true 175 maxUnavailable: 176 anyOf: 177 - type: integer 178 - type: string 179 default: 0 180 description: 'The maximum number of machines that can be unavailable 181 during the update. Value can be an absolute number (ex: 182 5) or a percentage of desired machines (ex: 10%). Absolute 183 number is calculated from percentage by rounding down. This 184 can not be 0 if MaxSurge is 0. Defaults to 0. Example: when 185 this is set to 30%, the old MachineSet can be scaled down 186 to 70% of desired machines immediately when the rolling 187 update starts. Once new machines are ready, old MachineSet 188 can be scaled down further, followed by scaling up the new 189 MachineSet, ensuring that the total number of machines available 190 at all times during the update is at least 70% of desired 191 machines.' 192 x-kubernetes-int-or-string: true 193 type: object 194 type: 195 default: RollingUpdate 196 description: Type of deployment. Currently the only supported 197 strategy is RollingUpdate 198 enum: 199 - RollingUpdate 200 type: string 201 type: object 202 systemAssignedIdentityRole: 203 description: SystemAssignedIdentityRole defines the role and scope 204 to assign to the system assigned identity. 205 properties: 206 definitionID: 207 description: 'DefinitionID is the ID of the role definition to 208 create for a system assigned identity. It can be an Azure built-in 209 role or a custom role. Refer to built-in roles: https://learn.microsoft.com/en-us/azure/role-based-access-control/built-in-roles' 210 type: string 211 name: 212 description: Name is the name of the role assignment to create 213 for a system assigned identity. It can be any valid UUID. If 214 not specified, a random UUID will be generated. 215 type: string 216 scope: 217 description: Scope is the scope that the role assignment or definition 218 applies to. The scope can be any REST resource instance. If 219 not specified, the scope will be the subscription. 220 type: string 221 type: object 222 template: 223 description: Template contains the details used to build a replica 224 virtual machine within the Machine Pool 225 properties: 226 acceleratedNetworking: 227 description: 'Deprecated: AcceleratedNetworking should be set 228 in the networkInterfaces field.' 229 type: boolean 230 dataDisks: 231 description: DataDisks specifies the list of data disks to be 232 created for a Virtual Machine 233 items: 234 description: DataDisk specifies the parameters that are used 235 to add one or more data disks to the machine. 236 properties: 237 cachingType: 238 description: CachingType specifies the caching requirements. 239 enum: 240 - None 241 - ReadOnly 242 - ReadWrite 243 type: string 244 diskSizeGB: 245 description: DiskSizeGB is the size in GB to assign to the 246 data disk. 247 format: int32 248 type: integer 249 lun: 250 description: Lun Specifies the logical unit number of the 251 data disk. This value is used to identify data disks within 252 the VM and therefore must be unique for each data disk 253 attached to a VM. The value must be between 0 and 63. 254 format: int32 255 type: integer 256 managedDisk: 257 description: ManagedDisk specifies the Managed Disk parameters 258 for the data disk. 259 properties: 260 diskEncryptionSet: 261 description: DiskEncryptionSet specifies the customer-managed 262 disk encryption set resource id for the managed disk. 263 properties: 264 id: 265 description: ID defines resourceID for diskEncryptionSet 266 resource. It must be in the same subscription 267 type: string 268 type: object 269 securityProfile: 270 description: SecurityProfile specifies the security 271 profile for the managed disk. 272 properties: 273 diskEncryptionSet: 274 description: DiskEncryptionSet specifies the customer-managed 275 disk encryption set resource id for the managed 276 disk that is used for Customer Managed Key encrypted 277 ConfidentialVM OS Disk and VMGuest blob. 278 properties: 279 id: 280 description: ID defines resourceID for diskEncryptionSet 281 resource. It must be in the same subscription 282 type: string 283 type: object 284 securityEncryptionType: 285 description: SecurityEncryptionType specifies the 286 encryption type of the managed disk. It is set 287 to DiskWithVMGuestState to encrypt the managed 288 disk along with the VMGuestState blob, and to 289 VMGuestStateOnly to encrypt the VMGuestState blob 290 only. When set to VMGuestStateOnly, VirtualizedTrustedPlatformModule 291 should be set to Enabled. When set to DiskWithVMGuestState, 292 EncryptionAtHost should be disabled, SecureBoot 293 and VirtualizedTrustedPlatformModule should be 294 set to Enabled. It can be set only for Confidential 295 VMs. 296 enum: 297 - VMGuestStateOnly 298 - DiskWithVMGuestState 299 type: string 300 type: object 301 storageAccountType: 302 type: string 303 type: object 304 nameSuffix: 305 description: NameSuffix is the suffix to be appended to 306 the machine name to generate the disk name. Each disk 307 name will be in format <machineName>_<nameSuffix>. 308 type: string 309 required: 310 - diskSizeGB 311 - nameSuffix 312 type: object 313 type: array 314 diagnostics: 315 description: Diagnostics specifies the diagnostics settings for 316 a virtual machine. If not specified then Boot diagnostics (Managed) 317 will be enabled. 318 properties: 319 boot: 320 description: Boot configures the boot diagnostics settings 321 for the virtual machine. This allows to configure capturing 322 serial output from the virtual machine on boot. This is 323 useful for debugging software based launch issues. If not 324 specified then Boot diagnostics (Managed) will be enabled. 325 properties: 326 storageAccountType: 327 description: StorageAccountType determines if the storage 328 account for storing the diagnostics data should be disabled 329 (Disabled), provisioned by Azure (Managed) or by the 330 user (UserManaged). 331 enum: 332 - Managed 333 - UserManaged 334 - Disabled 335 type: string 336 userManaged: 337 description: UserManaged provides a reference to the user-managed 338 storage account. 339 properties: 340 storageAccountURI: 341 description: 'StorageAccountURI is the URI of the 342 user-managed storage account. The URI typically 343 will be `https://<mystorageaccountname>.blob.core.windows.net/` 344 but may differ if you are using Azure DNS zone endpoints. 345 You can find the correct endpoint by looking for 346 the Blob Primary Endpoint in the endpoints tab in 347 the Azure console or with the CLI by issuing `az 348 storage account list --query=''[].{name: name, "resource 349 group": resourceGroup, "blob endpoint": primaryEndpoints.blob}''`.' 350 maxLength: 1024 351 pattern: ^https:// 352 type: string 353 required: 354 - storageAccountURI 355 type: object 356 required: 357 - storageAccountType 358 type: object 359 type: object 360 image: 361 description: Image is used to provide details of an image to use 362 during VM creation. If image details are omitted the image will 363 default the Azure Marketplace "capi" offer, which is based on 364 Ubuntu. 365 properties: 366 computeGallery: 367 description: ComputeGallery specifies an image to use from 368 the Azure Compute Gallery 369 properties: 370 gallery: 371 description: Gallery specifies the name of the compute 372 image gallery that contains the image 373 minLength: 1 374 type: string 375 name: 376 description: Name is the name of the image 377 minLength: 1 378 type: string 379 plan: 380 description: Plan contains plan information. 381 properties: 382 offer: 383 description: Offer specifies the name of a group of 384 related images created by the publisher. For example, 385 UbuntuServer, WindowsServer 386 minLength: 1 387 type: string 388 publisher: 389 description: Publisher is the name of the organization 390 that created the image 391 minLength: 1 392 type: string 393 sku: 394 description: SKU specifies an instance of an offer, 395 such as a major release of a distribution. For example, 396 18.04-LTS, 2019-Datacenter 397 minLength: 1 398 type: string 399 required: 400 - offer 401 - publisher 402 - sku 403 type: object 404 resourceGroup: 405 description: ResourceGroup specifies the resource group 406 containing the private compute gallery. 407 type: string 408 subscriptionID: 409 description: SubscriptionID is the identifier of the subscription 410 that contains the private compute gallery. 411 type: string 412 version: 413 description: Version specifies the version of the marketplace 414 image. The allowed formats are Major.Minor.Build or 415 'latest'. Major, Minor, and Build are decimal numbers. 416 Specify 'latest' to use the latest version of an image 417 available at deploy time. Even if you use 'latest', 418 the VM image will not automatically update after deploy 419 time even if a new version becomes available. 420 minLength: 1 421 type: string 422 required: 423 - gallery 424 - name 425 - version 426 type: object 427 id: 428 description: ID specifies an image to use by ID 429 type: string 430 marketplace: 431 description: Marketplace specifies an image to use from the 432 Azure Marketplace 433 properties: 434 offer: 435 description: Offer specifies the name of a group of related 436 images created by the publisher. For example, UbuntuServer, 437 WindowsServer 438 minLength: 1 439 type: string 440 publisher: 441 description: Publisher is the name of the organization 442 that created the image 443 minLength: 1 444 type: string 445 sku: 446 description: SKU specifies an instance of an offer, such 447 as a major release of a distribution. For example, 18.04-LTS, 448 2019-Datacenter 449 minLength: 1 450 type: string 451 thirdPartyImage: 452 default: false 453 description: ThirdPartyImage indicates the image is published 454 by a third party publisher and a Plan will be generated 455 for it. 456 type: boolean 457 version: 458 description: Version specifies the version of an image 459 sku. The allowed formats are Major.Minor.Build or 'latest'. 460 Major, Minor, and Build are decimal numbers. Specify 461 'latest' to use the latest version of an image available 462 at deploy time. Even if you use 'latest', the VM image 463 will not automatically update after deploy time even 464 if a new version becomes available. 465 minLength: 1 466 type: string 467 required: 468 - offer 469 - publisher 470 - sku 471 - version 472 type: object 473 sharedGallery: 474 description: 'SharedGallery specifies an image to use from 475 an Azure Shared Image Gallery Deprecated: use ComputeGallery 476 instead.' 477 properties: 478 gallery: 479 description: Gallery specifies the name of the shared 480 image gallery that contains the image 481 minLength: 1 482 type: string 483 name: 484 description: Name is the name of the image 485 minLength: 1 486 type: string 487 offer: 488 description: Offer specifies the name of a group of related 489 images created by the publisher. For example, UbuntuServer, 490 WindowsServer This value will be used to add a `Plan` 491 in the API request when creating the VM/VMSS resource. 492 This is needed when the source image from which this 493 SIG image was built requires the `Plan` to be used. 494 type: string 495 publisher: 496 description: Publisher is the name of the organization 497 that created the image. This value will be used to add 498 a `Plan` in the API request when creating the VM/VMSS 499 resource. This is needed when the source image from 500 which this SIG image was built requires the `Plan` to 501 be used. 502 type: string 503 resourceGroup: 504 description: ResourceGroup specifies the resource group 505 containing the shared image gallery 506 minLength: 1 507 type: string 508 sku: 509 description: SKU specifies an instance of an offer, such 510 as a major release of a distribution. For example, 18.04-LTS, 511 2019-Datacenter This value will be used to add a `Plan` 512 in the API request when creating the VM/VMSS resource. 513 This is needed when the source image from which this 514 SIG image was built requires the `Plan` to be used. 515 type: string 516 subscriptionID: 517 description: SubscriptionID is the identifier of the subscription 518 that contains the shared image gallery 519 minLength: 1 520 type: string 521 version: 522 description: Version specifies the version of the marketplace 523 image. The allowed formats are Major.Minor.Build or 524 'latest'. Major, Minor, and Build are decimal numbers. 525 Specify 'latest' to use the latest version of an image 526 available at deploy time. Even if you use 'latest', 527 the VM image will not automatically update after deploy 528 time even if a new version becomes available. 529 minLength: 1 530 type: string 531 required: 532 - gallery 533 - name 534 - resourceGroup 535 - subscriptionID 536 - version 537 type: object 538 type: object 539 networkInterfaces: 540 description: NetworkInterfaces specifies a list of network interface 541 configurations. If left unspecified, the VM will get a single 542 network interface with a single IPConfig in the subnet specified 543 in the cluster's node subnet field. The primary interface will 544 be the first networkInterface specified (index 0) in the list. 545 items: 546 description: NetworkInterface defines a network interface. 547 properties: 548 acceleratedNetworking: 549 description: AcceleratedNetworking enables or disables Azure 550 accelerated networking. If omitted, it will be set based 551 on whether the requested VMSize supports accelerated networking. 552 If AcceleratedNetworking is set to true with a VMSize 553 that does not support it, Azure will return an error. 554 type: boolean 555 privateIPConfigs: 556 description: PrivateIPConfigs specifies the number of private 557 IP addresses to attach to the interface. Defaults to 1 558 if not specified. 559 type: integer 560 subnetName: 561 description: SubnetName specifies the subnet in which the 562 new network interface will be placed. 563 type: string 564 type: object 565 type: array 566 osDisk: 567 description: OSDisk contains the operating system disk information 568 for a Virtual Machine 569 properties: 570 cachingType: 571 description: CachingType specifies the caching requirements. 572 enum: 573 - None 574 - ReadOnly 575 - ReadWrite 576 type: string 577 diffDiskSettings: 578 description: DiffDiskSettings describe ephemeral disk settings 579 for the os disk. 580 properties: 581 option: 582 description: Option enables ephemeral OS when set to "Local" 583 See https://learn.microsoft.com/azure/virtual-machines/ephemeral-os-disks 584 for full details 585 enum: 586 - Local 587 type: string 588 required: 589 - option 590 type: object 591 diskSizeGB: 592 description: DiskSizeGB is the size in GB to assign to the 593 OS disk. Will have a default of 30GB if not provided 594 format: int32 595 type: integer 596 managedDisk: 597 description: ManagedDisk specifies the Managed Disk parameters 598 for the OS disk. 599 properties: 600 diskEncryptionSet: 601 description: DiskEncryptionSet specifies the customer-managed 602 disk encryption set resource id for the managed disk. 603 properties: 604 id: 605 description: ID defines resourceID for diskEncryptionSet 606 resource. It must be in the same subscription 607 type: string 608 type: object 609 securityProfile: 610 description: SecurityProfile specifies the security profile 611 for the managed disk. 612 properties: 613 diskEncryptionSet: 614 description: DiskEncryptionSet specifies the customer-managed 615 disk encryption set resource id for the managed 616 disk that is used for Customer Managed Key encrypted 617 ConfidentialVM OS Disk and VMGuest blob. 618 properties: 619 id: 620 description: ID defines resourceID for diskEncryptionSet 621 resource. It must be in the same subscription 622 type: string 623 type: object 624 securityEncryptionType: 625 description: SecurityEncryptionType specifies the 626 encryption type of the managed disk. It is set to 627 DiskWithVMGuestState to encrypt the managed disk 628 along with the VMGuestState blob, and to VMGuestStateOnly 629 to encrypt the VMGuestState blob only. When set 630 to VMGuestStateOnly, VirtualizedTrustedPlatformModule 631 should be set to Enabled. When set to DiskWithVMGuestState, 632 EncryptionAtHost should be disabled, SecureBoot 633 and VirtualizedTrustedPlatformModule should be set 634 to Enabled. It can be set only for Confidential 635 VMs. 636 enum: 637 - VMGuestStateOnly 638 - DiskWithVMGuestState 639 type: string 640 type: object 641 storageAccountType: 642 type: string 643 type: object 644 osType: 645 type: string 646 required: 647 - osType 648 type: object 649 securityProfile: 650 description: SecurityProfile specifies the Security profile settings 651 for a virtual machine. 652 properties: 653 encryptionAtHost: 654 description: This field indicates whether Host Encryption 655 should be enabled or disabled for a virtual machine or virtual 656 machine scale set. This should be disabled when SecurityEncryptionType 657 is set to DiskWithVMGuestState. Default is disabled. 658 type: boolean 659 securityType: 660 description: 'SecurityType specifies the SecurityType of the 661 virtual machine. It has to be set to any specified value 662 to enable UefiSettings. The default behavior is: UefiSettings 663 will not be enabled unless this property is set.' 664 enum: 665 - ConfidentialVM 666 - TrustedLaunch 667 type: string 668 uefiSettings: 669 description: UefiSettings specifies the security settings 670 like secure boot and vTPM used while creating the virtual 671 machine. 672 properties: 673 secureBootEnabled: 674 description: SecureBootEnabled specifies whether secure 675 boot should be enabled on the virtual machine. Secure 676 Boot verifies the digital signature of all boot components 677 and halts the boot process if signature verification 678 fails. If omitted, the platform chooses a default, which 679 is subject to change over time, currently that default 680 is false. 681 type: boolean 682 vTpmEnabled: 683 description: VTpmEnabled specifies whether vTPM should 684 be enabled on the virtual machine. When true it enables 685 the virtualized trusted platform module measurements 686 to create a known good boot integrity policy baseline. 687 The integrity policy baseline is used for comparison 688 with measurements from subsequent VM boots to determine 689 if anything has changed. This is required to be set 690 to Enabled if SecurityEncryptionType is defined. If 691 omitted, the platform chooses a default, which is subject 692 to change over time, currently that default is false. 693 type: boolean 694 type: object 695 type: object 696 spotVMOptions: 697 description: SpotVMOptions allows the ability to specify the Machine 698 should use a Spot VM 699 properties: 700 evictionPolicy: 701 description: EvictionPolicy defines the behavior of the virtual 702 machine when it is evicted. It can be either Delete or Deallocate. 703 enum: 704 - Deallocate 705 - Delete 706 type: string 707 maxPrice: 708 anyOf: 709 - type: integer 710 - type: string 711 description: MaxPrice defines the maximum price the user is 712 willing to pay for Spot VM instances 713 pattern: ^(\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))(([KMGTPE]i)|[numkMGTPE]|([eE](\+|-)?(([0-9]+(\.[0-9]*)?)|(\.[0-9]+))))?$ 714 x-kubernetes-int-or-string: true 715 type: object 716 sshPublicKey: 717 description: SSHPublicKey is the SSH public key string, base64-encoded 718 to add to a Virtual Machine. Linux only. Refer to documentation 719 on how to set up SSH access on Windows instances. 720 type: string 721 subnetName: 722 description: 'Deprecated: SubnetName should be set in the networkInterfaces 723 field.' 724 type: string 725 terminateNotificationTimeout: 726 description: TerminateNotificationTimeout enables or disables 727 VMSS scheduled events termination notification with specified 728 timeout allowed values are between 5 and 15 (mins) 729 type: integer 730 vmExtensions: 731 description: VMExtensions specifies a list of extensions to be 732 added to the scale set. 733 items: 734 description: VMExtension specifies the parameters for a custom 735 VM extension. 736 properties: 737 name: 738 description: Name is the name of the extension. 739 type: string 740 protectedSettings: 741 additionalProperties: 742 type: string 743 description: ProtectedSettings is a JSON formatted protected 744 settings for the extension. 745 type: object 746 publisher: 747 description: Publisher is the name of the extension handler 748 publisher. 749 type: string 750 settings: 751 additionalProperties: 752 type: string 753 description: Settings is a JSON formatted public settings 754 for the extension. 755 type: object 756 version: 757 description: Version specifies the version of the script 758 handler. 759 type: string 760 required: 761 - name 762 - publisher 763 - version 764 type: object 765 type: array 766 vmSize: 767 description: VMSize is the size of the Virtual Machine to build. 768 See https://learn.microsoft.com/rest/api/compute/virtualmachines/createorupdate#virtualmachinesizetypes 769 type: string 770 required: 771 - osDisk 772 - vmSize 773 type: object 774 userAssignedIdentities: 775 description: UserAssignedIdentities is a list of standalone Azure 776 identities provided by the user The lifecycle of a user-assigned 777 identity is managed separately from the lifecycle of the AzureMachinePool. 778 See https://learn.microsoft.com/azure/active-directory/managed-identities-azure-resources/how-to-manage-ua-identity-cli 779 items: 780 description: UserAssignedIdentity defines the user-assigned identities 781 provided by the user to be assigned to Azure resources. 782 properties: 783 providerID: 784 description: 'ProviderID is the identification ID of the user-assigned 785 Identity, the format of an identity is: ''azure:///subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}''' 786 type: string 787 required: 788 - providerID 789 type: object 790 type: array 791 zoneBalance: 792 description: ZoneBalane dictates whether to force strictly even Virtual 793 Machine distribution cross x-zones in case there is zone outage. 794 type: boolean 795 required: 796 - location 797 - template 798 type: object 799 status: 800 description: AzureMachinePoolStatus defines the observed state of AzureMachinePool. 801 properties: 802 conditions: 803 description: Conditions defines current service state of the AzureMachinePool. 804 items: 805 description: Condition defines an observation of a Cluster API resource 806 operational state. 807 properties: 808 lastTransitionTime: 809 description: Last time the condition transitioned from one status 810 to another. This should be when the underlying condition changed. 811 If that is not known, then using the time when the API field 812 changed is acceptable. 813 format: date-time 814 type: string 815 message: 816 description: A human readable message indicating details about 817 the transition. This field may be empty. 818 type: string 819 reason: 820 description: The reason for the condition's last transition 821 in CamelCase. The specific API may choose whether or not this 822 field is considered a guaranteed API. This field may not be 823 empty. 824 type: string 825 severity: 826 description: Severity provides an explicit classification of 827 Reason code, so the users or machines can immediately understand 828 the current situation and act accordingly. The Severity field 829 MUST be set only when Status=False. 830 type: string 831 status: 832 description: Status of the condition, one of True, False, Unknown. 833 type: string 834 type: 835 description: Type of condition in CamelCase or in foo.example.com/CamelCase. 836 Many .condition.type values are consistent across resources 837 like Available, but because arbitrary conditions can be useful 838 (see .node.status.conditions), the ability to deconflict is 839 important. 840 type: string 841 required: 842 - lastTransitionTime 843 - status 844 - type 845 type: object 846 type: array 847 failureMessage: 848 description: "FailureMessage will be set in the event that there is 849 a terminal problem reconciling the MachinePool and will contain 850 a more verbose string suitable for logging and human consumption. 851 \n This field should not be set for transitive errors that a controller 852 faces that are expected to be fixed automatically over time (like 853 service outages), but instead indicate that something is fundamentally 854 wrong with the MachinePool's spec or the configuration of the controller, 855 and that manual intervention is required. Examples of terminal errors 856 would be invalid combinations of settings in the spec, values that 857 are unsupported by the controller, or the responsible controller 858 itself being critically misconfigured. \n Any transient errors that 859 occur during the reconciliation of MachinePools can be added as 860 events to the MachinePool object and/or logged in the controller's 861 output." 862 type: string 863 failureReason: 864 description: "FailureReason will be set in the event that there is 865 a terminal problem reconciling the MachinePool and will contain 866 a succinct value suitable for machine interpretation. \n This field 867 should not be set for transitive errors that a controller faces 868 that are expected to be fixed automatically over time (like service 869 outages), but instead indicate that something is fundamentally wrong 870 with the MachinePool's spec or the configuration of the controller, 871 and that manual intervention is required. Examples of terminal errors 872 would be invalid combinations of settings in the spec, values that 873 are unsupported by the controller, or the responsible controller 874 itself being critically misconfigured. \n Any transient errors that 875 occur during the reconciliation of MachinePools can be added as 876 events to the MachinePool object and/or logged in the controller's 877 output." 878 type: string 879 image: 880 description: Image is the current image used in the AzureMachinePool. 881 When the spec image is nil, this image is populated with the details 882 of the defaulted Azure Marketplace "capi" offer. 883 properties: 884 computeGallery: 885 description: ComputeGallery specifies an image to use from the 886 Azure Compute Gallery 887 properties: 888 gallery: 889 description: Gallery specifies the name of the compute image 890 gallery that contains the image 891 minLength: 1 892 type: string 893 name: 894 description: Name is the name of the image 895 minLength: 1 896 type: string 897 plan: 898 description: Plan contains plan information. 899 properties: 900 offer: 901 description: Offer specifies the name of a group of related 902 images created by the publisher. For example, UbuntuServer, 903 WindowsServer 904 minLength: 1 905 type: string 906 publisher: 907 description: Publisher is the name of the organization 908 that created the image 909 minLength: 1 910 type: string 911 sku: 912 description: SKU specifies an instance of an offer, such 913 as a major release of a distribution. For example, 18.04-LTS, 914 2019-Datacenter 915 minLength: 1 916 type: string 917 required: 918 - offer 919 - publisher 920 - sku 921 type: object 922 resourceGroup: 923 description: ResourceGroup specifies the resource group containing 924 the private compute gallery. 925 type: string 926 subscriptionID: 927 description: SubscriptionID is the identifier of the subscription 928 that contains the private compute gallery. 929 type: string 930 version: 931 description: Version specifies the version of the marketplace 932 image. The allowed formats are Major.Minor.Build or 'latest'. 933 Major, Minor, and Build are decimal numbers. Specify 'latest' 934 to use the latest version of an image available at deploy 935 time. Even if you use 'latest', the VM image will not automatically 936 update after deploy time even if a new version becomes available. 937 minLength: 1 938 type: string 939 required: 940 - gallery 941 - name 942 - version 943 type: object 944 id: 945 description: ID specifies an image to use by ID 946 type: string 947 marketplace: 948 description: Marketplace specifies an image to use from the Azure 949 Marketplace 950 properties: 951 offer: 952 description: Offer specifies the name of a group of related 953 images created by the publisher. For example, UbuntuServer, 954 WindowsServer 955 minLength: 1 956 type: string 957 publisher: 958 description: Publisher is the name of the organization that 959 created the image 960 minLength: 1 961 type: string 962 sku: 963 description: SKU specifies an instance of an offer, such as 964 a major release of a distribution. For example, 18.04-LTS, 965 2019-Datacenter 966 minLength: 1 967 type: string 968 thirdPartyImage: 969 default: false 970 description: ThirdPartyImage indicates the image is published 971 by a third party publisher and a Plan will be generated 972 for it. 973 type: boolean 974 version: 975 description: Version specifies the version of an image sku. 976 The allowed formats are Major.Minor.Build or 'latest'. Major, 977 Minor, and Build are decimal numbers. Specify 'latest' to 978 use the latest version of an image available at deploy time. 979 Even if you use 'latest', the VM image will not automatically 980 update after deploy time even if a new version becomes available. 981 minLength: 1 982 type: string 983 required: 984 - offer 985 - publisher 986 - sku 987 - version 988 type: object 989 sharedGallery: 990 description: 'SharedGallery specifies an image to use from an 991 Azure Shared Image Gallery Deprecated: use ComputeGallery instead.' 992 properties: 993 gallery: 994 description: Gallery specifies the name of the shared image 995 gallery that contains the image 996 minLength: 1 997 type: string 998 name: 999 description: Name is the name of the image 1000 minLength: 1 1001 type: string 1002 offer: 1003 description: Offer specifies the name of a group of related 1004 images created by the publisher. For example, UbuntuServer, 1005 WindowsServer This value will be used to add a `Plan` in 1006 the API request when creating the VM/VMSS resource. This 1007 is needed when the source image from which this SIG image 1008 was built requires the `Plan` to be used. 1009 type: string 1010 publisher: 1011 description: Publisher is the name of the organization that 1012 created the image. This value will be used to add a `Plan` 1013 in the API request when creating the VM/VMSS resource. This 1014 is needed when the source image from which this SIG image 1015 was built requires the `Plan` to be used. 1016 type: string 1017 resourceGroup: 1018 description: ResourceGroup specifies the resource group containing 1019 the shared image gallery 1020 minLength: 1 1021 type: string 1022 sku: 1023 description: SKU specifies an instance of an offer, such as 1024 a major release of a distribution. For example, 18.04-LTS, 1025 2019-Datacenter This value will be used to add a `Plan` 1026 in the API request when creating the VM/VMSS resource. This 1027 is needed when the source image from which this SIG image 1028 was built requires the `Plan` to be used. 1029 type: string 1030 subscriptionID: 1031 description: SubscriptionID is the identifier of the subscription 1032 that contains the shared image gallery 1033 minLength: 1 1034 type: string 1035 version: 1036 description: Version specifies the version of the marketplace 1037 image. The allowed formats are Major.Minor.Build or 'latest'. 1038 Major, Minor, and Build are decimal numbers. Specify 'latest' 1039 to use the latest version of an image available at deploy 1040 time. Even if you use 'latest', the VM image will not automatically 1041 update after deploy time even if a new version becomes available. 1042 minLength: 1 1043 type: string 1044 required: 1045 - gallery 1046 - name 1047 - resourceGroup 1048 - subscriptionID 1049 - version 1050 type: object 1051 type: object 1052 infrastructureMachineKind: 1053 description: InfrastructureMachineKind is the kind of the infrastructure 1054 resources behind MachinePool Machines. 1055 type: string 1056 instances: 1057 description: Instances is the VM instance status for each VM in the 1058 VMSS 1059 items: 1060 description: AzureMachinePoolInstanceStatus provides status information 1061 for each instance in the VMSS. 1062 properties: 1063 instanceID: 1064 description: InstanceID is the identification of the Machine 1065 Instance within the VMSS 1066 type: string 1067 instanceName: 1068 description: InstanceName is the name of the Machine Instance 1069 within the VMSS 1070 type: string 1071 latestModelApplied: 1072 description: LatestModelApplied indicates the instance is running 1073 the most up-to-date VMSS model. A VMSS model describes the 1074 image version the VM is running. If the instance is not running 1075 the latest model, it means the instance may not be running 1076 the version of Kubernetes the Machine Pool has specified and 1077 needs to be updated. 1078 type: boolean 1079 providerID: 1080 description: ProviderID is the provider identification of the 1081 VMSS Instance 1082 type: string 1083 provisioningState: 1084 description: ProvisioningState is the provisioning state of 1085 the Azure virtual machine instance. 1086 type: string 1087 version: 1088 description: Version defines the Kubernetes version for the 1089 VM Instance 1090 type: string 1091 required: 1092 - latestModelApplied 1093 type: object 1094 type: array 1095 longRunningOperationStates: 1096 description: LongRunningOperationStates saves the state for Azure 1097 long-running operations so they can be continued on the next reconciliation 1098 loop. 1099 items: 1100 description: Future contains the data needed for an Azure long-running 1101 operation to continue across reconcile loops. 1102 properties: 1103 data: 1104 description: Data is the base64 url encoded json Azure AutoRest 1105 Future. 1106 type: string 1107 name: 1108 description: Name is the name of the Azure resource. Together 1109 with the service name, this forms the unique identifier for 1110 the future. 1111 type: string 1112 resourceGroup: 1113 description: ResourceGroup is the Azure resource group for the 1114 resource. 1115 type: string 1116 serviceName: 1117 description: ServiceName is the name of the Azure service. Together 1118 with the name of the resource, this forms the unique identifier 1119 for the future. 1120 type: string 1121 type: 1122 description: Type describes the type of future, such as update, 1123 create, delete, etc. 1124 type: string 1125 required: 1126 - data 1127 - name 1128 - serviceName 1129 - type 1130 type: object 1131 type: array 1132 provisioningState: 1133 description: ProvisioningState is the provisioning state of the Azure 1134 virtual machine. 1135 type: string 1136 ready: 1137 description: Ready is true when the provider resource is ready. 1138 type: boolean 1139 replicas: 1140 description: Replicas is the most recently observed number of replicas. 1141 format: int32 1142 type: integer 1143 version: 1144 description: Version is the Kubernetes version for the current VMSS 1145 model 1146 type: string 1147 type: object 1148 type: object 1149 served: true 1150 storage: true 1151 subresources: 1152 status: {}