class Azure::ContainerService::Mgmt::V2020_12_01::Models::AgentPool

Agent Pool.

Attributes

agent_pool_type[RW]

@return [AgentPoolType] AgentPoolType represents types of an agent pool. Possible values include: 'VirtualMachineScaleSets', 'AvailabilitySet'

availability_zones[RW]

@return [Array<String>] Availability zones for nodes. Must use VirtualMachineScaleSets AgentPoolType.

count[RW]

@return [Integer] Number of agents (VMs) to host docker containers. Allowed values must be in the range of 0 to 100 (inclusive) for user pools and in the range of 1 to 100 (inclusive) for system pools. The default value is 1.

enable_auto_scaling[RW]

@return [Boolean] Whether to enable auto-scaler

enable_encryption_at_host[RW]

@return [Boolean] Whether to enable EncryptionAtHost

enable_node_public_ip[RW]

@return [Boolean] Enable public IP for nodes

kubelet_config[RW]

@return [KubeletConfig] KubeletConfig specifies the configuration of kubelet on agent nodes.

kubelet_disk_type[RW]

@return [KubeletDiskType] KubeletDiskType determines the placement of emptyDir volumes, container runtime data root, and Kubelet ephemeral storage. Currently allows one value, OS, resulting in Kubelet using the OS disk for data. Possible values include: 'OS'

linux_osconfig[RW]

@return [LinuxOSConfig] LinuxOSConfig specifies the OS configuration of linux agent nodes.

max_count[RW]

@return [Integer] Maximum number of nodes for auto-scaling

max_pods[RW]

@return [Integer] Maximum number of pods that can run on a node.

min_count[RW]

@return [Integer] Minimum number of nodes for auto-scaling

mode[RW]

@return [AgentPoolMode] AgentPoolMode represents mode of an agent pool. Possible values include: 'System', 'User'

node_image_version[RW]

@return [String] Version of node image

node_labels[RW]

@return [Hash{String => String}] Agent pool node labels to be persisted across all nodes in agent pool.

node_taints[RW]

@return [Array<String>] Taints added to new nodes during node pool create and scale. For example, key=value:NoSchedule.

orchestrator_version[RW]

@return [String] Version of orchestrator specified when creating the managed cluster.

os_disk_size_gb[RW]

@return [Integer] OS Disk Size in GB to be used to specify the disk size for every machine in this master/agent pool. If you specify 0, it will apply the default osDisk size according to the vmSize specified.

os_disk_type[RW]

@return [OSDiskType] OS disk type to be used for machines in a given agent pool. Allowed values are 'Ephemeral' and 'Managed'. Defaults to 'Managed'. May not be changed after creation. Possible values include: 'Managed', 'Ephemeral'

os_type[RW]

@return [OSType] OsType to be used to specify os type. Choose from Linux and Windows. Default to Linux. Possible values include: 'Linux', 'Windows'. Default value: 'Linux' .

pod_subnet_id[RW]

@return [String] Pod SubnetID specifies the VNet's subnet identifier for pods.

power_state[RW]

@return [PowerState] Describes whether the Agent Pool is Running or Stopped

provisioning_state[RW]

@return [String] The current deployment or provisioning state, which only appears in the response.

proximity_placement_group_id[RW]

@return [String] The ID for Proximity Placement Group.

scale_set_eviction_policy[RW]

@return [ScaleSetEvictionPolicy] ScaleSetEvictionPolicy to be used to specify eviction policy for Spot virtual machine scale set. Default to Delete. Possible values include: 'Delete', 'Deallocate'. Default value: 'Delete' .

scale_set_priority[RW]

@return [ScaleSetPriority] ScaleSetPriority to be used to specify virtual machine scale set priority. Default to regular. Possible values include: 'Spot', 'Regular'. Default value: 'Regular' .

spot_max_price[RW]

@return [Float] SpotMaxPrice to be used to specify the maximum price you are willing to pay in US Dollars. Possible values are any decimal value greater than zero or -1 which indicates default price to be up-to on-demand.

tags[RW]

@return [Hash{String => String}] Agent pool tags to be persisted on the agent pool virtual machine scale set.

upgrade_settings[RW]

@return [AgentPoolUpgradeSettings] Settings for upgrading the agentpool

vm_size[RW]

@return [ContainerServiceVMSizeTypes] Size of agent VMs. Possible values include: 'Standard_A1', 'Standard_A10', 'Standard_A11', 'Standard_A1_v2', 'Standard_A2', 'Standard_A2_v2', 'Standard_A2m_v2', 'Standard_A3', 'Standard_A4', 'Standard_A4_v2', 'Standard_A4m_v2', 'Standard_A5', 'Standard_A6', 'Standard_A7', 'Standard_A8', 'Standard_A8_v2', 'Standard_A8m_v2', 'Standard_A9', 'Standard_B2ms', 'Standard_B2s', 'Standard_B4ms', 'Standard_B8ms', 'Standard_D1', 'Standard_D11', 'Standard_D11_v2', 'Standard_D11_v2_Promo', 'Standard_D12', 'Standard_D12_v2', 'Standard_D12_v2_Promo', 'Standard_D13', 'Standard_D13_v2', 'Standard_D13_v2_Promo', 'Standard_D14', 'Standard_D14_v2', 'Standard_D14_v2_Promo', 'Standard_D15_v2', 'Standard_D16_v3', 'Standard_D16s_v3', 'Standard_D1_v2', 'Standard_D2', 'Standard_D2_v2', 'Standard_D2_v2_Promo', 'Standard_D2_v3', 'Standard_D2s_v3', 'Standard_D3', 'Standard_D32_v3', 'Standard_D32s_v3', 'Standard_D3_v2', 'Standard_D3_v2_Promo', 'Standard_D4', 'Standard_D4_v2', 'Standard_D4_v2_Promo', 'Standard_D4_v3', 'Standard_D4s_v3', 'Standard_D5_v2', 'Standard_D5_v2_Promo', 'Standard_D64_v3', 'Standard_D64s_v3', 'Standard_D8_v3', 'Standard_D8s_v3', 'Standard_DS1', 'Standard_DS11', 'Standard_DS11_v2', 'Standard_DS11_v2_Promo', 'Standard_DS12', 'Standard_DS12_v2', 'Standard_DS12_v2_Promo', 'Standard_DS13', 'Standard_DS13-2_v2', 'Standard_DS13-4_v2', 'Standard_DS13_v2', 'Standard_DS13_v2_Promo', 'Standard_DS14', 'Standard_DS14-4_v2', 'Standard_DS14-8_v2', 'Standard_DS14_v2', 'Standard_DS14_v2_Promo', 'Standard_DS15_v2', 'Standard_DS1_v2', 'Standard_DS2', 'Standard_DS2_v2', 'Standard_DS2_v2_Promo', 'Standard_DS3', 'Standard_DS3_v2', 'Standard_DS3_v2_Promo', 'Standard_DS4', 'Standard_DS4_v2', 'Standard_DS4_v2_Promo', 'Standard_DS5_v2', 'Standard_DS5_v2_Promo', 'Standard_E16_v3', 'Standard_E16s_v3', 'Standard_E2_v3', 'Standard_E2s_v3', 'Standard_E32-16s_v3', 'Standard_E32-8s_v3', 'Standard_E32_v3', 'Standard_E32s_v3', 'Standard_E4_v3', 'Standard_E4s_v3', 'Standard_E64-16s_v3', 'Standard_E64-32s_v3', 'Standard_E64_v3', 'Standard_E64s_v3', 'Standard_E8_v3', 'Standard_E8s_v3', 'Standard_F1', 'Standard_F16', 'Standard_F16s', 'Standard_F16s_v2', 'Standard_F1s', 'Standard_F2', 'Standard_F2s', 'Standard_F2s_v2', 'Standard_F32s_v2', 'Standard_F4', 'Standard_F4s', 'Standard_F4s_v2', 'Standard_F64s_v2', 'Standard_F72s_v2', 'Standard_F8', 'Standard_F8s', 'Standard_F8s_v2', 'Standard_G1', 'Standard_G2', 'Standard_G3', 'Standard_G4', 'Standard_G5', 'Standard_GS1', 'Standard_GS2', 'Standard_GS3', 'Standard_GS4', 'Standard_GS4-4', 'Standard_GS4-8', 'Standard_GS5', 'Standard_GS5-16', 'Standard_GS5-8', 'Standard_H16', 'Standard_H16m', 'Standard_H16mr', 'Standard_H16r', 'Standard_H8', 'Standard_H8m', 'Standard_L16s', 'Standard_L32s', 'Standard_L4s', 'Standard_L8s', 'Standard_M128-32ms', 'Standard_M128-64ms', 'Standard_M128ms', 'Standard_M128s', 'Standard_M64-16ms', 'Standard_M64-32ms', 'Standard_M64ms', 'Standard_M64s', 'Standard_NC12', 'Standard_NC12s_v2', 'Standard_NC12s_v3', 'Standard_NC24', 'Standard_NC24r', 'Standard_NC24rs_v2', 'Standard_NC24rs_v3', 'Standard_NC24s_v2', 'Standard_NC24s_v3', 'Standard_NC6', 'Standard_NC6s_v2', 'Standard_NC6s_v3', 'Standard_ND12s', 'Standard_ND24rs', 'Standard_ND24s', 'Standard_ND6s', 'Standard_NV12', 'Standard_NV24', 'Standard_NV6'

vnet_subnet_id[RW]

@return [String] VNet SubnetID specifies the VNet's subnet identifier for nodes and maybe pods

Private Class Methods

mapper() click to toggle source

Mapper for AgentPool class as Ruby Hash. This will be used for serialization/deserialization.

# File lib/2020-12-01/generated/azure_mgmt_container_service/models/agent_pool.rb, line 201
def self.mapper()
  {
    client_side_validation: true,
    required: false,
    serialized_name: 'AgentPool',
    type: {
      name: 'Composite',
      class_name: 'AgentPool',
      model_properties: {
        id: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'id',
          type: {
            name: 'String'
          }
        },
        name: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'name',
          type: {
            name: 'String'
          }
        },
        type: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'type',
          type: {
            name: 'String'
          }
        },
        count: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.count',
          type: {
            name: 'Number'
          }
        },
        vm_size: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.vmSize',
          type: {
            name: 'String'
          }
        },
        os_disk_size_gb: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.osDiskSizeGB',
          type: {
            name: 'Number'
          }
        },
        os_disk_type: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.osDiskType',
          type: {
            name: 'String'
          }
        },
        kubelet_disk_type: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.kubeletDiskType',
          type: {
            name: 'String'
          }
        },
        vnet_subnet_id: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.vnetSubnetID',
          type: {
            name: 'String'
          }
        },
        pod_subnet_id: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.podSubnetID',
          type: {
            name: 'String'
          }
        },
        max_pods: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.maxPods',
          type: {
            name: 'Number'
          }
        },
        os_type: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.osType',
          default_value: 'Linux',
          type: {
            name: 'String'
          }
        },
        max_count: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.maxCount',
          type: {
            name: 'Number'
          }
        },
        min_count: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.minCount',
          type: {
            name: 'Number'
          }
        },
        enable_auto_scaling: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.enableAutoScaling',
          type: {
            name: 'Boolean'
          }
        },
        agent_pool_type: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.type',
          type: {
            name: 'String'
          }
        },
        mode: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.mode',
          type: {
            name: 'String'
          }
        },
        orchestrator_version: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.orchestratorVersion',
          type: {
            name: 'String'
          }
        },
        node_image_version: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.nodeImageVersion',
          type: {
            name: 'String'
          }
        },
        upgrade_settings: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.upgradeSettings',
          type: {
            name: 'Composite',
            class_name: 'AgentPoolUpgradeSettings'
          }
        },
        provisioning_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.provisioningState',
          type: {
            name: 'String'
          }
        },
        power_state: {
          client_side_validation: true,
          required: false,
          read_only: true,
          serialized_name: 'properties.powerState',
          type: {
            name: 'Composite',
            class_name: 'PowerState'
          }
        },
        availability_zones: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.availabilityZones',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        enable_node_public_ip: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.enableNodePublicIP',
          type: {
            name: 'Boolean'
          }
        },
        scale_set_priority: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.scaleSetPriority',
          default_value: 'Regular',
          type: {
            name: 'String'
          }
        },
        scale_set_eviction_policy: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.scaleSetEvictionPolicy',
          default_value: 'Delete',
          type: {
            name: 'String'
          }
        },
        spot_max_price: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.spotMaxPrice',
          type: {
            name: 'Double'
          }
        },
        tags: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.tags',
          type: {
            name: 'Dictionary',
            value: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        node_labels: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.nodeLabels',
          type: {
            name: 'Dictionary',
            value: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        node_taints: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.nodeTaints',
          type: {
            name: 'Sequence',
            element: {
                client_side_validation: true,
                required: false,
                serialized_name: 'StringElementType',
                type: {
                  name: 'String'
                }
            }
          }
        },
        proximity_placement_group_id: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.proximityPlacementGroupID',
          type: {
            name: 'String'
          }
        },
        kubelet_config: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.kubeletConfig',
          type: {
            name: 'Composite',
            class_name: 'KubeletConfig'
          }
        },
        linux_osconfig: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.linuxOSConfig',
          type: {
            name: 'Composite',
            class_name: 'LinuxOSConfig'
          }
        },
        enable_encryption_at_host: {
          client_side_validation: true,
          required: false,
          serialized_name: 'properties.enableEncryptionAtHost',
          type: {
            name: 'Boolean'
          }
        }
      }
    }
  }
end