sigs.k8s.io/cluster-api-provider-aws@v1.5.5/config/crd/bases/infrastructure.cluster.x-k8s.io_awsmanagedmachinepools.yaml (about) 1 --- 2 apiVersion: apiextensions.k8s.io/v1 3 kind: CustomResourceDefinition 4 metadata: 5 annotations: 6 controller-gen.kubebuilder.io/version: v0.7.1-0.20211110210727-ab52f76cc7d1 7 creationTimestamp: null 8 name: awsmanagedmachinepools.infrastructure.cluster.x-k8s.io 9 spec: 10 group: infrastructure.cluster.x-k8s.io 11 names: 12 categories: 13 - cluster-api 14 kind: AWSManagedMachinePool 15 listKind: AWSManagedMachinePoolList 16 plural: awsmanagedmachinepools 17 shortNames: 18 - awsmmp 19 singular: awsmanagedmachinepool 20 scope: Namespaced 21 versions: 22 - additionalPrinterColumns: 23 - description: MachinePool ready status 24 jsonPath: .status.ready 25 name: Ready 26 type: string 27 - description: Number of replicas 28 jsonPath: .status.replicas 29 name: Replicas 30 type: integer 31 name: v1alpha3 32 schema: 33 openAPIV3Schema: 34 description: AWSManagedMachinePool is the Schema for the awsmanagedmachinepools 35 API 36 properties: 37 apiVersion: 38 description: 'APIVersion defines the versioned schema of this representation 39 of an object. Servers should convert recognized schemas to the latest 40 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 41 type: string 42 kind: 43 description: 'Kind is a string value representing the REST resource this 44 object represents. Servers may infer this from the endpoint the client 45 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 46 type: string 47 metadata: 48 type: object 49 spec: 50 description: AWSManagedMachinePoolSpec defines the desired state of AWSManagedMachinePool 51 properties: 52 additionalTags: 53 additionalProperties: 54 type: string 55 description: AdditionalTags is an optional set of tags to add to AWS 56 resources managed by the AWS provider, in addition to the ones added 57 by default. 58 type: object 59 amiType: 60 default: AL2_x86_64 61 description: AMIType defines the AMI type 62 enum: 63 - AL2_x86_64 64 - AL2_x86_64_GPU 65 - AL2_ARM_64 66 type: string 67 amiVersion: 68 description: AMIVersion defines the desired AMI release version. If 69 no version number is supplied then the latest version for the Kubernetes 70 version will be used 71 minLength: 2 72 type: string 73 availabilityZones: 74 description: AvailabilityZones is an array of availability zones instances 75 can run in 76 items: 77 type: string 78 type: array 79 diskSize: 80 description: DiskSize specifies the root disk size 81 format: int32 82 type: integer 83 eksNodegroupName: 84 description: EKSNodegroupName specifies the name of the nodegroup 85 in AWS corresponding to this MachinePool. If you don't specify a 86 name then a default name will be created based on the namespace 87 and name of the managed machine pool. 88 type: string 89 instanceType: 90 description: InstanceType specifies the AWS instance type 91 type: string 92 labels: 93 additionalProperties: 94 type: string 95 description: Labels specifies labels for the Kubernetes node objects 96 type: object 97 providerIDList: 98 description: ProviderIDList are the provider IDs of instances in the 99 autoscaling group corresponding to the nodegroup represented by 100 this machine pool 101 items: 102 type: string 103 type: array 104 remoteAccess: 105 description: RemoteAccess specifies how machines can be accessed remotely 106 properties: 107 public: 108 description: Public specifies whether to open port 22 to the public 109 internet 110 type: boolean 111 sourceSecurityGroups: 112 description: SourceSecurityGroups specifies which security groups 113 are allowed access 114 items: 115 type: string 116 type: array 117 sshKeyName: 118 description: SSHKeyName specifies which EC2 SSH key can be used 119 to access machines. If left empty, the key from the control 120 plane is used. 121 type: string 122 type: object 123 roleName: 124 description: RoleName specifies the name of IAM role for the node 125 group. If the role is pre-existing we will treat it as unmanaged 126 and not delete it on deletion. If the EKSEnableIAM feature flag 127 is true and no name is supplied then a role is created. 128 type: string 129 scaling: 130 description: Scaling specifies scaling for the ASG behind this pool 131 properties: 132 maxSize: 133 format: int32 134 type: integer 135 minSize: 136 format: int32 137 type: integer 138 type: object 139 subnetIDs: 140 description: SubnetIDs specifies which subnets are used for the auto 141 scaling group of this nodegroup 142 items: 143 type: string 144 type: array 145 type: object 146 status: 147 description: AWSManagedMachinePoolStatus defines the observed state of 148 AWSManagedMachinePool 149 properties: 150 conditions: 151 description: Conditions defines current service state of the managed 152 machine pool 153 items: 154 description: Condition defines an observation of a Cluster API resource 155 operational state. 156 properties: 157 lastTransitionTime: 158 description: Last time the condition transitioned from one status 159 to another. This should be when the underlying condition changed. 160 If that is not known, then using the time when the API field 161 changed is acceptable. 162 format: date-time 163 type: string 164 message: 165 description: A human readable message indicating details about 166 the transition. This field may be empty. 167 type: string 168 reason: 169 description: The reason for the condition's last transition 170 in CamelCase. The specific API may choose whether or not this 171 field is considered a guaranteed API. This field may not be 172 empty. 173 type: string 174 severity: 175 description: Severity provides an explicit classification of 176 Reason code, so the users or machines can immediately understand 177 the current situation and act accordingly. The Severity field 178 MUST be set only when Status=False. 179 type: string 180 status: 181 description: Status of the condition, one of True, False, Unknown. 182 type: string 183 type: 184 description: Type of condition in CamelCase or in foo.example.com/CamelCase. 185 Many .condition.type values are consistent across resources 186 like Available, but because arbitrary conditions can be useful 187 (see .node.status.conditions), the ability to deconflict is 188 important. 189 type: string 190 required: 191 - status 192 - type 193 type: object 194 type: array 195 failureMessage: 196 description: "FailureMessage will be set in the event that there is 197 a terminal problem reconciling the MachinePool and will contain 198 a more verbose string suitable for logging and human consumption. 199 \n This field should not be set for transitive errors that a controller 200 faces that are expected to be fixed automatically over time (like 201 service outages), but instead indicate that something is fundamentally 202 wrong with the MachinePool's spec or the configuration of the controller, 203 and that manual intervention is required. Examples of terminal errors 204 would be invalid combinations of settings in the spec, values that 205 are unsupported by the controller, or the responsible controller 206 itself being critically misconfigured. \n Any transient errors that 207 occur during the reconciliation of MachinePools can be added as 208 events to the MachinePool object and/or logged in the controller's 209 output." 210 type: string 211 failureReason: 212 description: "FailureReason will be set in the event that there is 213 a terminal problem reconciling the MachinePool and will contain 214 a succinct value suitable for machine interpretation. \n This field 215 should not be set for transitive errors that a controller faces 216 that are expected to be fixed automatically over time (like service 217 outages), but instead indicate that something is fundamentally wrong 218 with the Machine's spec or the configuration of the controller, 219 and that manual intervention is required. Examples of terminal errors 220 would be invalid combinations of settings in the spec, values that 221 are unsupported by the controller, or the responsible controller 222 itself being critically misconfigured. \n Any transient errors that 223 occur during the reconciliation of MachinePools can be added as 224 events to the MachinePool object and/or logged in the controller's 225 output." 226 type: string 227 ready: 228 default: false 229 description: Ready denotes that the AWSManagedMachinePool nodegroup 230 has joined the cluster 231 type: boolean 232 replicas: 233 description: Replicas is the most recently observed number of replicas. 234 format: int32 235 type: integer 236 required: 237 - ready 238 type: object 239 type: object 240 served: true 241 storage: false 242 subresources: 243 status: {} 244 - additionalPrinterColumns: 245 - description: MachinePool ready status 246 jsonPath: .status.ready 247 name: Ready 248 type: string 249 - description: Number of replicas 250 jsonPath: .status.replicas 251 name: Replicas 252 type: integer 253 name: v1alpha4 254 schema: 255 openAPIV3Schema: 256 description: AWSManagedMachinePool is the Schema for the awsmanagedmachinepools 257 API 258 properties: 259 apiVersion: 260 description: 'APIVersion defines the versioned schema of this representation 261 of an object. Servers should convert recognized schemas to the latest 262 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 263 type: string 264 kind: 265 description: 'Kind is a string value representing the REST resource this 266 object represents. Servers may infer this from the endpoint the client 267 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 268 type: string 269 metadata: 270 type: object 271 spec: 272 description: AWSManagedMachinePoolSpec defines the desired state of AWSManagedMachinePool 273 properties: 274 additionalTags: 275 additionalProperties: 276 type: string 277 description: AdditionalTags is an optional set of tags to add to AWS 278 resources managed by the AWS provider, in addition to the ones added 279 by default. 280 type: object 281 amiType: 282 default: AL2_x86_64 283 description: AMIType defines the AMI type 284 enum: 285 - AL2_x86_64 286 - AL2_x86_64_GPU 287 - AL2_ARM_64 288 type: string 289 amiVersion: 290 description: AMIVersion defines the desired AMI release version. If 291 no version number is supplied then the latest version for the Kubernetes 292 version will be used 293 minLength: 2 294 type: string 295 availabilityZones: 296 description: AvailabilityZones is an array of availability zones instances 297 can run in 298 items: 299 type: string 300 type: array 301 capacityType: 302 default: onDemand 303 description: CapacityType specifies the capacity type for the ASG 304 behind this pool 305 enum: 306 - onDemand 307 - spot 308 type: string 309 diskSize: 310 description: DiskSize specifies the root disk size 311 format: int32 312 type: integer 313 eksNodegroupName: 314 description: EKSNodegroupName specifies the name of the nodegroup 315 in AWS corresponding to this MachinePool. If you don't specify a 316 name then a default name will be created based on the namespace 317 and name of the managed machine pool. 318 type: string 319 instanceType: 320 description: InstanceType specifies the AWS instance type 321 type: string 322 labels: 323 additionalProperties: 324 type: string 325 description: Labels specifies labels for the Kubernetes node objects 326 type: object 327 providerIDList: 328 description: ProviderIDList are the provider IDs of instances in the 329 autoscaling group corresponding to the nodegroup represented by 330 this machine pool 331 items: 332 type: string 333 type: array 334 remoteAccess: 335 description: RemoteAccess specifies how machines can be accessed remotely 336 properties: 337 public: 338 description: Public specifies whether to open port 22 to the public 339 internet 340 type: boolean 341 sourceSecurityGroups: 342 description: SourceSecurityGroups specifies which security groups 343 are allowed access 344 items: 345 type: string 346 type: array 347 sshKeyName: 348 description: SSHKeyName specifies which EC2 SSH key can be used 349 to access machines. If left empty, the key from the control 350 plane is used. 351 type: string 352 type: object 353 roleName: 354 description: RoleName specifies the name of IAM role for the node 355 group. If the role is pre-existing we will treat it as unmanaged 356 and not delete it on deletion. If the EKSEnableIAM feature flag 357 is true and no name is supplied then a role is created. 358 type: string 359 scaling: 360 description: Scaling specifies scaling for the ASG behind this pool 361 properties: 362 maxSize: 363 format: int32 364 type: integer 365 minSize: 366 format: int32 367 type: integer 368 type: object 369 subnetIDs: 370 description: SubnetIDs specifies which subnets are used for the auto 371 scaling group of this nodegroup 372 items: 373 type: string 374 type: array 375 taints: 376 description: Taints specifies the taints to apply to the nodes of 377 the machine pool 378 items: 379 description: Taint defines the specs for a Kubernetes taint. 380 properties: 381 effect: 382 description: Effect specifies the effect for the taint 383 enum: 384 - no-schedule 385 - no-execute 386 - prefer-no-schedule 387 type: string 388 key: 389 description: Key is the key of the taint 390 type: string 391 value: 392 description: Value is the value of the taint 393 type: string 394 required: 395 - effect 396 - key 397 - value 398 type: object 399 type: array 400 type: object 401 status: 402 description: AWSManagedMachinePoolStatus defines the observed state of 403 AWSManagedMachinePool 404 properties: 405 conditions: 406 description: Conditions defines current service state of the managed 407 machine pool 408 items: 409 description: Condition defines an observation of a Cluster API resource 410 operational state. 411 properties: 412 lastTransitionTime: 413 description: Last time the condition transitioned from one status 414 to another. This should be when the underlying condition changed. 415 If that is not known, then using the time when the API field 416 changed is acceptable. 417 format: date-time 418 type: string 419 message: 420 description: A human readable message indicating details about 421 the transition. This field may be empty. 422 type: string 423 reason: 424 description: The reason for the condition's last transition 425 in CamelCase. The specific API may choose whether or not this 426 field is considered a guaranteed API. This field may not be 427 empty. 428 type: string 429 severity: 430 description: Severity provides an explicit classification of 431 Reason code, so the users or machines can immediately understand 432 the current situation and act accordingly. The Severity field 433 MUST be set only when Status=False. 434 type: string 435 status: 436 description: Status of the condition, one of True, False, Unknown. 437 type: string 438 type: 439 description: Type of condition in CamelCase or in foo.example.com/CamelCase. 440 Many .condition.type values are consistent across resources 441 like Available, but because arbitrary conditions can be useful 442 (see .node.status.conditions), the ability to deconflict is 443 important. 444 type: string 445 required: 446 - status 447 - type 448 type: object 449 type: array 450 failureMessage: 451 description: "FailureMessage will be set in the event that there is 452 a terminal problem reconciling the MachinePool and will contain 453 a more verbose string suitable for logging and human consumption. 454 \n This field should not be set for transitive errors that a controller 455 faces that are expected to be fixed automatically over time (like 456 service outages), but instead indicate that something is fundamentally 457 wrong with the MachinePool's spec or the configuration of the controller, 458 and that manual intervention is required. Examples of terminal errors 459 would be invalid combinations of settings in the spec, values that 460 are unsupported by the controller, or the responsible controller 461 itself being critically misconfigured. \n Any transient errors that 462 occur during the reconciliation of MachinePools can be added as 463 events to the MachinePool object and/or logged in the controller's 464 output." 465 type: string 466 failureReason: 467 description: "FailureReason will be set in the event that there is 468 a terminal problem reconciling the MachinePool and will contain 469 a succinct value suitable for machine interpretation. \n This field 470 should not be set for transitive errors that a controller faces 471 that are expected to be fixed automatically over time (like service 472 outages), but instead indicate that something is fundamentally wrong 473 with the Machine's spec or the configuration of the controller, 474 and that manual intervention is required. Examples of terminal errors 475 would be invalid combinations of settings in the spec, values that 476 are unsupported by the controller, or the responsible controller 477 itself being critically misconfigured. \n Any transient errors that 478 occur during the reconciliation of MachinePools can be added as 479 events to the MachinePool object and/or logged in the controller's 480 output." 481 type: string 482 ready: 483 default: false 484 description: Ready denotes that the AWSManagedMachinePool nodegroup 485 has joined the cluster 486 type: boolean 487 replicas: 488 description: Replicas is the most recently observed number of replicas. 489 format: int32 490 type: integer 491 required: 492 - ready 493 type: object 494 type: object 495 served: true 496 storage: false 497 subresources: 498 status: {} 499 - additionalPrinterColumns: 500 - description: MachinePool ready status 501 jsonPath: .status.ready 502 name: Ready 503 type: string 504 - description: Number of replicas 505 jsonPath: .status.replicas 506 name: Replicas 507 type: integer 508 name: v1beta1 509 schema: 510 openAPIV3Schema: 511 description: AWSManagedMachinePool is the Schema for the awsmanagedmachinepools 512 API. 513 properties: 514 apiVersion: 515 description: 'APIVersion defines the versioned schema of this representation 516 of an object. Servers should convert recognized schemas to the latest 517 internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources' 518 type: string 519 kind: 520 description: 'Kind is a string value representing the REST resource this 521 object represents. Servers may infer this from the endpoint the client 522 submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds' 523 type: string 524 metadata: 525 type: object 526 spec: 527 description: AWSManagedMachinePoolSpec defines the desired state of AWSManagedMachinePool. 528 properties: 529 additionalTags: 530 additionalProperties: 531 type: string 532 description: AdditionalTags is an optional set of tags to add to AWS 533 resources managed by the AWS provider, in addition to the ones added 534 by default. 535 type: object 536 amiType: 537 default: AL2_x86_64 538 description: AMIType defines the AMI type 539 enum: 540 - AL2_x86_64 541 - AL2_x86_64_GPU 542 - AL2_ARM_64 543 type: string 544 amiVersion: 545 description: AMIVersion defines the desired AMI release version. If 546 no version number is supplied then the latest version for the Kubernetes 547 version will be used 548 minLength: 2 549 type: string 550 availabilityZones: 551 description: AvailabilityZones is an array of availability zones instances 552 can run in 553 items: 554 type: string 555 type: array 556 capacityType: 557 default: onDemand 558 description: CapacityType specifies the capacity type for the ASG 559 behind this pool 560 enum: 561 - onDemand 562 - spot 563 type: string 564 diskSize: 565 description: DiskSize specifies the root disk size 566 format: int32 567 type: integer 568 eksNodegroupName: 569 description: EKSNodegroupName specifies the name of the nodegroup 570 in AWS corresponding to this MachinePool. If you don't specify a 571 name then a default name will be created based on the namespace 572 and name of the managed machine pool. 573 type: string 574 instanceType: 575 description: InstanceType specifies the AWS instance type 576 type: string 577 labels: 578 additionalProperties: 579 type: string 580 description: Labels specifies labels for the Kubernetes node objects 581 type: object 582 providerIDList: 583 description: ProviderIDList are the provider IDs of instances in the 584 autoscaling group corresponding to the nodegroup represented by 585 this machine pool 586 items: 587 type: string 588 type: array 589 remoteAccess: 590 description: RemoteAccess specifies how machines can be accessed remotely 591 properties: 592 public: 593 description: Public specifies whether to open port 22 to the public 594 internet 595 type: boolean 596 sourceSecurityGroups: 597 description: SourceSecurityGroups specifies which security groups 598 are allowed access 599 items: 600 type: string 601 type: array 602 sshKeyName: 603 description: SSHKeyName specifies which EC2 SSH key can be used 604 to access machines. If left empty, the key from the control 605 plane is used. 606 type: string 607 type: object 608 roleAdditionalPolicies: 609 description: RoleAdditionalPolicies allows you to attach additional 610 polices to the node group role. You must enable the EKSAllowAddRoles 611 feature flag to incorporate these into the created role. 612 items: 613 type: string 614 type: array 615 roleName: 616 description: RoleName specifies the name of IAM role for the node 617 group. If the role is pre-existing we will treat it as unmanaged 618 and not delete it on deletion. If the EKSEnableIAM feature flag 619 is true and no name is supplied then a role is created. 620 type: string 621 scaling: 622 description: Scaling specifies scaling for the ASG behind this pool 623 properties: 624 maxSize: 625 format: int32 626 type: integer 627 minSize: 628 format: int32 629 type: integer 630 type: object 631 subnetIDs: 632 description: SubnetIDs specifies which subnets are used for the auto 633 scaling group of this nodegroup 634 items: 635 type: string 636 type: array 637 taints: 638 description: Taints specifies the taints to apply to the nodes of 639 the machine pool 640 items: 641 description: Taint defines the specs for a Kubernetes taint. 642 properties: 643 effect: 644 description: Effect specifies the effect for the taint 645 enum: 646 - no-schedule 647 - no-execute 648 - prefer-no-schedule 649 type: string 650 key: 651 description: Key is the key of the taint 652 type: string 653 value: 654 description: Value is the value of the taint 655 type: string 656 required: 657 - effect 658 - key 659 - value 660 type: object 661 type: array 662 updateConfig: 663 description: UpdateConfig holds the optional config to control the 664 behaviour of the update to the nodegroup. 665 properties: 666 maxUnavailable: 667 description: MaxUnavailable is the maximum number of nodes unavailable 668 at once during a version update. Nodes will be updated in parallel. 669 The maximum number is 100. 670 maximum: 100 671 minimum: 1 672 type: integer 673 maxUnavailablePrecentage: 674 description: MaxUnavailablePercentage is the maximum percentage 675 of nodes unavailable during a version update. This percentage 676 of nodes will be updated in parallel, up to 100 nodes at once. 677 maximum: 100 678 minimum: 1 679 type: integer 680 type: object 681 type: object 682 status: 683 description: AWSManagedMachinePoolStatus defines the observed state of 684 AWSManagedMachinePool. 685 properties: 686 conditions: 687 description: Conditions defines current service state of the managed 688 machine pool 689 items: 690 description: Condition defines an observation of a Cluster API resource 691 operational state. 692 properties: 693 lastTransitionTime: 694 description: Last time the condition transitioned from one status 695 to another. This should be when the underlying condition changed. 696 If that is not known, then using the time when the API field 697 changed is acceptable. 698 format: date-time 699 type: string 700 message: 701 description: A human readable message indicating details about 702 the transition. This field may be empty. 703 type: string 704 reason: 705 description: The reason for the condition's last transition 706 in CamelCase. The specific API may choose whether or not this 707 field is considered a guaranteed API. This field may not be 708 empty. 709 type: string 710 severity: 711 description: Severity provides an explicit classification of 712 Reason code, so the users or machines can immediately understand 713 the current situation and act accordingly. The Severity field 714 MUST be set only when Status=False. 715 type: string 716 status: 717 description: Status of the condition, one of True, False, Unknown. 718 type: string 719 type: 720 description: Type of condition in CamelCase or in foo.example.com/CamelCase. 721 Many .condition.type values are consistent across resources 722 like Available, but because arbitrary conditions can be useful 723 (see .node.status.conditions), the ability to deconflict is 724 important. 725 type: string 726 required: 727 - lastTransitionTime 728 - status 729 - type 730 type: object 731 type: array 732 failureMessage: 733 description: "FailureMessage will be set in the event that there is 734 a terminal problem reconciling the MachinePool and will contain 735 a more verbose string suitable for logging and human consumption. 736 \n This field should not be set for transitive errors that a controller 737 faces that are expected to be fixed automatically over time (like 738 service outages), but instead indicate that something is fundamentally 739 wrong with the MachinePool's spec or the configuration of the controller, 740 and that manual intervention is required. Examples of terminal errors 741 would be invalid combinations of settings in the spec, values that 742 are unsupported by the controller, or the responsible controller 743 itself being critically misconfigured. \n Any transient errors that 744 occur during the reconciliation of MachinePools can be added as 745 events to the MachinePool object and/or logged in the controller's 746 output." 747 type: string 748 failureReason: 749 description: "FailureReason will be set in the event that there is 750 a terminal problem reconciling the MachinePool and will contain 751 a succinct value suitable for machine interpretation. \n This field 752 should not be set for transitive errors that a controller faces 753 that are expected to be fixed automatically over time (like service 754 outages), but instead indicate that something is fundamentally wrong 755 with the Machine's spec or the configuration of the controller, 756 and that manual intervention is required. Examples of terminal errors 757 would be invalid combinations of settings in the spec, values that 758 are unsupported by the controller, or the responsible controller 759 itself being critically misconfigured. \n Any transient errors that 760 occur during the reconciliation of MachinePools can be added as 761 events to the MachinePool object and/or logged in the controller's 762 output." 763 type: string 764 ready: 765 default: false 766 description: Ready denotes that the AWSManagedMachinePool nodegroup 767 has joined the cluster 768 type: boolean 769 replicas: 770 description: Replicas is the most recently observed number of replicas. 771 format: int32 772 type: integer 773 required: 774 - ready 775 type: object 776 type: object 777 served: true 778 storage: true 779 subresources: 780 status: {} 781 status: 782 acceptedNames: 783 kind: "" 784 plural: "" 785 conditions: [] 786 storedVersions: []