Freigeben über


Microsoft.ContainerService managedClusters/agentPools 2024-02-01

Bicep-Ressourcendefinition

Der ressourcentyp "managedClusters/agentPools" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Änderungsprotokoll.

Ressourcenformat

Um eine Microsoft.ContainerService/managedClusters/agentPools-Ressource zu erstellen, fügen Sie der Vorlage die folgende Bicep hinzu.

resource symbolicname 'Microsoft.ContainerService/managedClusters/agentPools@2024-02-01' = {
  parent: resourceSymbolicName
  name: 'string'
  properties: {
    availabilityZones: [
      'string'
    ]
    capacityReservationGroupID: 'string'
    count: int
    creationData: {
      sourceResourceId: 'string'
    }
    enableAutoScaling: bool
    enableEncryptionAtHost: bool
    enableFIPS: bool
    enableNodePublicIP: bool
    enableUltraSSD: bool
    gpuInstanceProfile: 'string'
    hostGroupID: 'string'
    kubeletConfig: {
      allowedUnsafeSysctls: [
        'string'
      ]
      containerLogMaxFiles: int
      containerLogMaxSizeMB: int
      cpuCfsQuota: bool
      cpuCfsQuotaPeriod: 'string'
      cpuManagerPolicy: 'string'
      failSwapOn: bool
      imageGcHighThreshold: int
      imageGcLowThreshold: int
      podMaxPids: int
      topologyManagerPolicy: 'string'
    }
    kubeletDiskType: 'string'
    linuxOSConfig: {
      swapFileSizeMB: int
      sysctls: {
        fsAioMaxNr: int
        fsFileMax: int
        fsInotifyMaxUserWatches: int
        fsNrOpen: int
        kernelThreadsMax: int
        netCoreNetdevMaxBacklog: int
        netCoreOptmemMax: int
        netCoreRmemDefault: int
        netCoreRmemMax: int
        netCoreSomaxconn: int
        netCoreWmemDefault: int
        netCoreWmemMax: int
        netIpv4IpLocalPortRange: 'string'
        netIpv4NeighDefaultGcThresh1: int
        netIpv4NeighDefaultGcThresh2: int
        netIpv4NeighDefaultGcThresh3: int
        netIpv4TcpFinTimeout: int
        netIpv4TcpkeepaliveIntvl: int
        netIpv4TcpKeepaliveProbes: int
        netIpv4TcpKeepaliveTime: int
        netIpv4TcpMaxSynBacklog: int
        netIpv4TcpMaxTwBuckets: int
        netIpv4TcpTwReuse: bool
        netNetfilterNfConntrackBuckets: int
        netNetfilterNfConntrackMax: int
        vmMaxMapCount: int
        vmSwappiness: int
        vmVfsCachePressure: int
      }
      transparentHugePageDefrag: 'string'
      transparentHugePageEnabled: 'string'
    }
    maxCount: int
    maxPods: int
    minCount: int
    mode: 'string'
    networkProfile: {
      allowedHostPorts: [
        {
          portEnd: int
          portStart: int
          protocol: 'string'
        }
      ]
      applicationSecurityGroups: [
        'string'
      ]
      nodePublicIPTags: [
        {
          ipTagType: 'string'
          tag: 'string'
        }
      ]
    }
    nodeLabels: {
      {customized property}: 'string'
    }
    nodePublicIPPrefixID: 'string'
    nodeTaints: [
      'string'
    ]
    orchestratorVersion: 'string'
    osDiskSizeGB: int
    osDiskType: 'string'
    osSKU: 'string'
    osType: 'string'
    podSubnetID: 'string'
    powerState: {
      code: 'string'
    }
    proximityPlacementGroupID: 'string'
    scaleDownMode: 'string'
    scaleSetEvictionPolicy: 'string'
    scaleSetPriority: 'string'
    spotMaxPrice: int
    tags: {
      {customized property}: 'string'
    }
    type: 'string'
    upgradeSettings: {
      drainTimeoutInMinutes: int
      maxSurge: 'string'
      nodeSoakDurationInMinutes: int
    }
    vmSize: 'string'
    vnetSubnetID: 'string'
    windowsProfile: {
      disableOutboundNat: bool
    }
    workloadRuntime: 'string'
  }
}

Eigenschaftswerte

Microsoft.ContainerService/managedClusters/agentPools

Name BESCHREIBUNG Wert
Name Der Ressourcenname Zeichenfolge

Zwänge:
Min. Länge = 1
Max. Länge = 12
Pattern = ^[a-z][a-z0-9]{0,11}$ (erforderlich)
Elternteil In Bicep können Sie die übergeordnete Ressource für eine untergeordnete Ressource angeben. Sie müssen diese Eigenschaft nur hinzufügen, wenn die untergeordnete Ressource außerhalb der übergeordneten Ressource deklariert wird.

Weitere Informationen finden Sie unter Untergeordnete Ressource außerhalb der übergeordneten Ressource.
Symbolischer Name für Ressource vom Typ: managedClusters
Eigenschaften Eigenschaften eines Agentpools. ManagedClusterAgentPoolProfileProperties

AgentPoolNetworkProfil

Name BESCHREIBUNG Wert
allowedHostPorts Die Portbereiche, auf die zugegriffen werden darf. Die angegebenen Bereiche dürfen sich überlappen. PortRange-[]
applicationSecurityGroups (englisch) Die IDs der Anwendungssicherheitsgruppen, denen der Agentpool bei der Erstellung zugeordnet wird. Zeichenfolge[]
nodePublicIPTags IPTags von öffentlichen IP-Adressen auf Instanzebene. IPTag[]

AgentPoolUpgradeEinstellungen

Name BESCHREIBUNG Wert
drainTimeoutInMinuten Die Zeitspanne (in Minuten), die auf die Entfernung von Pods und die ordnungsgemäße Beendigung pro Knoten wartet. Diese Vertreibungszeit berücksichtigt das Warten auf Pod-Unterbrechungsbudgets. Wenn diese Zeit überschritten wird, schlägt das Upgrade fehl. Sofern nicht angegeben, wird der Wert standardmäßig auf 30 Minuten festgelegt. Int

Zwänge:
Min.-Wert = 1
Max. Wert = 1440
maxSurge Dies kann entweder auf eine ganze Zahl (z. B. "5") oder einen Prozentsatz (z. B. "50%" festgelegt werden). Wenn ein Prozentsatz angegeben ist, ist er der Prozentsatz der Gesamtgröße des Agentpools zum Zeitpunkt des Upgrades. Bei Prozentsätzen werden Bruchknoten aufgerundet. Wenn nicht angegeben, ist der Standardwert 1. Weitere Informationen, einschließlich bewährter Methoden, finden Sie unter: /azure/aks/upgrade-cluster#customize-node-surge-upgrade Schnur
nodeSoakDurationInMinutes Die Zeit (in Minuten), die nach dem Entwässern eines Knotens und vor dem Neustellen des Knotens und dem Wechsel zum nächsten Knoten gewartet werden soll. Wenn nicht angegeben, beträgt die Standardeinstellung 0 Minuten. Int

Zwänge:
Min.-Wert = 0
Max. Wert = 30

AgentPoolWindowsProfil

Name BESCHREIBUNG Wert
disableOutboundNat Der Standardwert ist "false". Ausgehende NAT kann nur deaktiviert werden, wenn der cluster outboundType NAT-Gateway ist und der Windows-Agentpool keine öffentliche IP-Knoten aktiviert hat. Boolesch

Kreationsdaten

Name BESCHREIBUNG Wert
sourceResourceId Dies ist die ARM-ID des Quellobjekts, das zum Erstellen des Zielobjekts verwendet werden soll. Schnur

IPTag

Name BESCHREIBUNG Wert
ipTagTyp Der IP-Tagtyp. Beispiel: RoutingPreference. Schnur
Etikett Der Wert des IP-Tags, das der öffentlichen IP zugeordnet ist. Beispiel: Internet. Schnur

KubeletConfig

Name BESCHREIBUNG Wert
allowedUnsafeSysctls Liste zulässiger unsicherer Sysctls oder unsicherer Sysctl-Muster (endend in *). Zeichenfolge[]
containerLogMaxDateien Die maximale Anzahl von Containerprotokolldateien, die für einen Container vorhanden sein können. Die Zahl muss ≥ 2 sein. Int

Zwänge:
Min.-Wert = 2
containerLogMaxSizeMB Die maximale Größe (z. B. 10Mi) der Containerprotokolldatei, bevor sie gedreht wird. INT
cpuCfsQuota Der Standardwert ist "true". Boolesch
cpuCfsQuotaPeriod Der Standardwert ist "100 ms". Gültige Werte sind eine Sequenz von Dezimalzahlen mit einem optionalen Bruch und einem Einheitensuffix. Beispiel: '300 ms', '2h45m'. Unterstützte Einheiten sind 'ns', 'us', 'ms', 's', 'm' und 'h'. Schnur
cpuManagerRichtlinie Der Standardwert ist "none". Weitere Informationen finden Sie unter Kubernetes CPU-Verwaltungsrichtlinien . Zulässige Werte sind "none" und "static". Schnur
failSwapOn Wenn dieser Wert auf "true" festgelegt ist, schlägt das Kubelet fehl, wenn der Tausch auf dem Knoten aktiviert ist. Boolesch
imageGcHighThreshold Um die Garbage Collection von Bildern zu deaktivieren, legen Sie diesen auf 100 fest. Der Standardwert ist 85% INT
imageGcLowThreshold Dies kann nicht höher als imageGcHighThreshold festgelegt werden. Der Standardwert ist 80% INT
podMaxPids Die maximale Anzahl von Prozessen pro Pod. INT
topologieManagerRichtlinie Weitere Informationen finden Sie unter Kubernetes Topology Manager. Der Standardwert ist "none". Zulässige Werte sind "none", "best-effort", "restricted" und "single-numa-node". Schnur

LinuxOSConfig

Name BESCHREIBUNG Wert
swapDateiGrößeMB Die Größe in MB einer Swapdatei, die auf jedem Knoten erstellt wird. INT
sysctls Sysctl-Einstellungen für Linux-Agentknoten. Sysctl-Konfiguration
transparentHugePageDefrag Gültige Werte sind "always", "defer", "defer+madvise", "madvise" und "never". Der Standardwert ist "madvise". Weitere Informationen finden Sie unter Transparent Hugepages. Schnur
transparentHugePageEnabled Gültige Werte sind "always", "madvise" und "never". Der Standardwert ist "always". Weitere Informationen finden Sie unter Transparent Hugepages. Schnur

ManagedClusterAgentPoolProfileProperties

Name BESCHREIBUNG Wert
VerfügbarkeitZonen Die Liste der Verfügbarkeitszonen, die für Knoten verwendet werden sollen. Dies kann nur angegeben werden, wenn die AgentPoolType-Eigenschaft "VirtualMachineScaleSets" lautet. Zeichenfolge[]
capacityReservationGroupID AKS ordnet den angegebenen Agentpool der Kapazitätsreservierungsgruppe zu. Schnur
zählen Anzahl der Agents (VMs) zum Hosten von Docker-Containern. Zulässige Werte müssen sich im Bereich von 0 bis 1000 (einschließlich) für Benutzerpools und im Bereich von 1 bis 1000 (einschließlich) für Systempools befinden. Der Standardwert ist 1. INT
creation-Daten CreationData zur Angabe der Quellmomentaufnahme-ID, wenn der Knotenpool mithilfe einer Momentaufnahme erstellt/aktualisiert wird. Kreationsdaten
aktivierenAutomatische Skalierung Gibt an, ob automatisch skaliert werden soll Boolesch
enableEncryptionAtHost Dies wird nur für bestimmte VM-Größen und in bestimmten Azure-Regionen unterstützt. Weitere Informationen finden Sie unter :/azure/aks/enable-host-encryption Boolesch
enableFIPS Weitere Details finden Sie unter Hinzufügen eines FIPS-fähigen Knotenpools . Boolesch
enableNodePublicIP Einige Szenarien erfordern möglicherweise Knoten in einem Knotenpool, um ihre eigenen dedizierten öffentlichen IP-Adressen zu empfangen. Ein häufiges Szenario ist für Gaming-Workloads, bei denen eine Konsole eine direkte Verbindung mit einem virtuellen Cloudcomputer herstellen muss, um Hops zu minimieren. Weitere Informationen finden Sie unter Zuweisen einer öffentlichen IP pro Knoten. Der Standardwert ist "false". Boolesch
aktivierenUltraSSD aktivieren Gibt an, ob UltraSSD aktiviert werden soll Boolesch
gpuInstanceProfile GPUInstanceProfile, das zum Angeben des GPU-MIG-Instanzprofils für unterstützte GPU-VM-SKU verwendet werden soll. 'MIG1g'
'MIG2g'
'MIG3g'
'MIG4g'
'MIG7g'
hostGroupID Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. Weitere Informationen finden Sie unter dedizierten Azure-Hosts. Schnur
kubeletConfig Die Kubelet-Konfiguration auf den Agentpoolknoten. KubeletConfig
kubeletDiskType Bestimmt die Platzierung von emptyDir-Volumes, Containerlaufzeitdatenstamm und Kubelet-Kurzspeicher. "Betriebssystem"
"Temporär"
linuxOSConfig Die Betriebssystemkonfiguration von Linux-Agentknoten. LinuxOSConfig
maxAnzahl Die maximale Anzahl von Knoten für die automatische Skalierung INT
maxPods Die maximale Anzahl von Pods, die auf einem Knoten ausgeführt werden können. INT
minAnzahl Die Mindestanzahl von Knoten für die automatische Skalierung INT
Modus Ein Cluster muss immer über mindestens einen 'System'-Agentpool verfügen. Weitere Informationen zu Agentpooleinschränkungen und bewährten Methoden finden Sie unter: /azure/aks/use-system-pools 'System'
"Benutzer"
networkProfil Netzwerkbezogene Einstellungen eines Agentpools. AgentPoolNetworkProfil
nodeLabels Die Knotenbeschriftungen, die über alle Knoten im Agentpool hinweg beibehalten werden sollen. ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} Schnur
nodeTaints Die zu neuen Knoten hinzugefügtenTaints während der Erstellung und Skalierung des Knotenpools. Beispiel: key=value:NoSchedule. Zeichenfolge[]
orchestratorVersion Sowohl Patchversion <major.minor.patch> (z. B. 1.20.13) als <auch Major.Minor> (z. B. 1.20) werden unterstützt. Wenn <"major.minor"> angegeben wird, wird automatisch die neueste unterstützte GA-Patchversion ausgewählt. Das Aktualisieren des Clusters mit demselben <major.minor> , nachdem er erstellt wurde (z. B. 1.14.x -> 1.14) löst kein Upgrade aus, auch wenn eine neuere Patchversion verfügbar ist. Als bewährte Methode sollten Sie alle Knotenpools in einem AKS-Cluster auf dieselbe Kubernetes-Version aktualisieren. Die Knotenpoolversion muss dieselbe Hauptversion wie die Steuerebene aufweisen. Die Nebenversion des Knotenpools muss sich innerhalb von zwei Nebenversionen der Steuerebenenversion befinden. Die Knotenpoolversion darf nicht größer als die Steuerebenenversion sein. Weitere Informationen finden Sie unter Upgrade eines Knotenpools. Schnur
osDiskSizeGB Betriebssystemdatenträgergröße in GB, die verwendet werden soll, um die Datenträgergröße für jeden Computer im Master-/Agent-Pool anzugeben. Wenn Sie "0" angeben, wird die Standardmäßige osDisk-Größe entsprechend der angegebenen vmSize angewendet. Int

Zwänge:
Min.-Wert = 0
Maximalwert = 2048
osDiskType Der Standardwert ist "Ephemeral", wenn die VM sie unterstützt und über einen Cachedatenträger verfügt, der größer als die angeforderte OSDiskSizeGB ist. Andernfalls wird standardmäßig "Verwaltet" verwendet. Kann nach der Erstellung nicht mehr geändert werden. Weitere Informationen finden Sie unter Ephemeral OS. "Ephemeral"
"Verwaltet"
osSKU Gibt die vom Agentpool verwendete Betriebssystem-SKU an. Der Standardwert ist Ubuntu, wenn OSType Linux ist. Der Standardwert ist Windows2019, wenn Kubernetes <= 1.24 oder Windows2022, wenn Kubernetes >= 1.25 ist, wenn OSType Windows ist. 'AzureLinux'
"CBLMarin"
"Ubuntu"
"Windows2019"
"Windows2022"
osTyp Der Betriebssystemtyp. Der Standardwert ist Linux. "Linux"
"Windows"
podSubnetID Wenn diese Angabe weggelassen wird, werden Pod-IPs im Knotensubnetz statisch zugewiesen (weitere Details finden Sie unter vnetSubnetID). Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} Schnur
powerState Wenn ein Agentpool zum ersten Mal erstellt wird, wird er anfangs ausgeführt. Der Agentpool kann beendet werden, indem sie dieses Feld auf "Beendet" festlegen. Ein beendeter Agentpool stoppt alle VMs und fälligkeit keine Abrechnungsgebühren. Ein Agentpool kann nur beendet werden, wenn er ausgeführt wird und der Bereitstellungsstatus erfolgreich ist. PowerState (Leistungsstärke)
proximityPlacementGroupID Die ID für die Näherungsplatzierungsgruppe. Schnur
scaleDownMode Dies wirkt sich auch auf das Cluster-Autoskalerverhalten aus. Wenn nicht angegeben, wird standardmäßig "Löschen" verwendet. "Deallocate"
"Löschen"
scaleSetEvictionPolicy Dies kann nur angegeben werden, wenn "scaleSetPriority" den Wert "Spot" hat. Wenn nicht angegeben, lautet der Standardwert "Delete". "Deallocate"
"Löschen"
scaleSetPriority Priorität des Skalierungssatzes für virtuelle Computer. Wenn nicht angegeben, lautet der Standardwert "Normal". "Normal"
"Spot"
spotMaxPreis Mögliche Werte sind ein Dezimalwert größer als Null oder -1, der die Bereitschaft angibt, einen On-Demand-Preis zu zahlen. Weitere Informationen zu Spotpreisen finden Sie unter Spot-VMs-Preise INT
Schlagwörter Die Tags, die im Skalierungssatz des virtuellen Agentpools beibehalten werden sollen. ManagedClusterAgentPoolProfilePropertiesTags
Typ Der Typ des Agentpools. "AvailabilitySet"
"VirtualMachineScaleSets"
upgradeEinstellungen Einstellungen für das Upgrade des Agentpools AgentPoolUpgradeEinstellungen
vmGröße Die Verfügbarkeit der VM variiert je nach Region. Wenn ein Knoten unzureichende Computeressourcen (Arbeitsspeicher, CPU usw.) enthält, können Pods möglicherweise nicht ordnungsgemäß ausgeführt werden. Weitere Informationen zu eingeschränkten VM-Größen finden Sie unter: /azure/aks/quotas-skus-regions Schnur
vnetSubnetID Wenn dies nicht angegeben ist, wird ein VNET und ein Subnetz generiert und verwendet. Wenn keine podSubnetID angegeben ist, gilt dies für Knoten und Pods, andernfalls gilt sie nur für Knoten. Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} Schnur
windowsProfil Das spezifische Profil des Windows-Agentpools. AgentPoolWindowsProfil
workloadRuntime Bestimmt den Typ der Workload, die ein Knoten ausführen kann. 'OCIContainer'
"WasmWasi"

ManagedClusterAgentPoolProfilePropertiesNodeLabels

Name BESCHREIBUNG Wert

ManagedClusterAgentPoolProfilePropertiesTags

Name BESCHREIBUNG Wert

PortRange (Englisch)

Name BESCHREIBUNG Wert
deuten Der maximale Port, der im Bereich enthalten ist. Er sollte zwischen 1 und 65535 liegen und größer als oder gleich PortStart sein. Int

Zwänge:
Min.-Wert = 1
Maximalwert = 65535
portStarten Der minimale Port, der im Bereich enthalten ist. Es sollte zwischen 1 und 65535 liegen und kleiner als oder gleich portEnd sein. Int

Zwänge:
Min.-Wert = 1
Maximalwert = 65535
Protokoll Das Netzwerkprotokoll des Ports. "TCP"
"UDP"

PowerState (Leistungsstärke)

Name BESCHREIBUNG Wert
Code Gibt an, ob der Cluster ausgeführt oder beendet wird. "Wird ausgeführt"
"Beendet"

Sysctl-Konfiguration

Name BESCHREIBUNG Wert
fsAioMaxNr Die sysctl-Einstellung fs.aio-max-nr. INT
fsFileMax Sysctl-Einstellung fs.file-max. INT
fsInotifyMaxUserWatches Sysctl-Einstellung fs.inotify.max_user_watches. INT
fsNrOffen Sysctl-Einstellung fs.nr_open. INT
kernelThreadsMax Sysctl-Einstellung kernel.threads-max. INT
netCoreNetdevMaxBacklog Sysctl-Einstellung net.core.netdev_max_backlog. INT
netCoreOptmemMax Sysctl-Einstellung net.core.optmem_max. INT
netCoreRmemDefault Sysctl-Einstellung net.core.rmem_default. INT
netCoreRmemMax Sysctl-Einstellung net.core.rmem_max. INT
netCoreSomaxconn Sysctl-Einstellung net.core.somaxconn. INT
netCoreWmemDefault Sysctl-Einstellung net.core.wmem_default. INT
netCoreWmemMax Sysctl-Einstellung net.core.wmem_max. INT
netIpv4IpLocalPortRange Sysctl-Einstellung net.ipv4.ip_local_port_range. Schnur
netIpv4NeighDefaultGcThresh1 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh1. INT
netIpv4NeighDefaultGcThresh2 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh2. INT
netIpv4NeighDefaultGcThresh3 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh3. INT
netIpv4TcpFinTimeout Sysctl-Einstellung net.ipv4.tcp_fin_timeout. INT
netIpv4TcpkeepaliveIntvl Sysctl-Einstellung net.ipv4.tcp_keepalive_intvl. Int

Zwänge:
Min.-Wert = 10
Max. Wert = 90
netIpv4TcpKeepaliveProbes Sysctl-Einstellung net.ipv4.tcp_keepalive_probes. INT
netIpv4TcpKeepaliveTime Sysctl-Einstellung net.ipv4.tcp_keepalive_time. INT
netIpv4TcpMaxSynBacklog Sysctl-Einstellung net.ipv4.tcp_max_syn_backlog. INT
netIpv4TcpMaxTwBuckets Sysctl-Einstellung net.ipv4.tcp_max_tw_buckets. INT
netIpv4TcpTwWiederverwendung Sysctl-Einstellung net.ipv4.tcp_tw_reuse. Boolesch
netNetfilterNfConntrackBuckets Sysctl-Einstellung net.netfilter.nf_conntrack_buckets. Int

Zwänge:
Min.-Wert = 65536
Max. Wert = 524288
netNetfilterNfConntrackMax Sysctl-Einstellung net.netfilter.nf_conntrack_max. Int

Zwänge:
Min-Wert = 131072
Max. Wert = 2097152
vmMaxMapCount Sysctl-Einstellung vm.max_map_count. INT
vmSwappiness Sysctl-Einstellung vm.swappiness. INT
vmVfsCachePressure Sysctl-Einstellung vm.vfs_cache_pressure. INT

ARM-Vorlagenressourcendefinition

Der ressourcentyp "managedClusters/agentPools" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Änderungsprotokoll.

Ressourcenformat

Um eine Microsoft.ContainerService/managedClusters/agentPools-Ressource zu erstellen, fügen Sie der Vorlage den folgenden JSON-Code hinzu.

{
  "type": "Microsoft.ContainerService/managedClusters/agentPools",
  "apiVersion": "2024-02-01",
  "name": "string",
  "properties": {
    "availabilityZones": [ "string" ],
    "capacityReservationGroupID": "string",
    "count": "int",
    "creationData": {
      "sourceResourceId": "string"
    },
    "enableAutoScaling": "bool",
    "enableEncryptionAtHost": "bool",
    "enableFIPS": "bool",
    "enableNodePublicIP": "bool",
    "enableUltraSSD": "bool",
    "gpuInstanceProfile": "string",
    "hostGroupID": "string",
    "kubeletConfig": {
      "allowedUnsafeSysctls": [ "string" ],
      "containerLogMaxFiles": "int",
      "containerLogMaxSizeMB": "int",
      "cpuCfsQuota": "bool",
      "cpuCfsQuotaPeriod": "string",
      "cpuManagerPolicy": "string",
      "failSwapOn": "bool",
      "imageGcHighThreshold": "int",
      "imageGcLowThreshold": "int",
      "podMaxPids": "int",
      "topologyManagerPolicy": "string"
    },
    "kubeletDiskType": "string",
    "linuxOSConfig": {
      "swapFileSizeMB": "int",
      "sysctls": {
        "fsAioMaxNr": "int",
        "fsFileMax": "int",
        "fsInotifyMaxUserWatches": "int",
        "fsNrOpen": "int",
        "kernelThreadsMax": "int",
        "netCoreNetdevMaxBacklog": "int",
        "netCoreOptmemMax": "int",
        "netCoreRmemDefault": "int",
        "netCoreRmemMax": "int",
        "netCoreSomaxconn": "int",
        "netCoreWmemDefault": "int",
        "netCoreWmemMax": "int",
        "netIpv4IpLocalPortRange": "string",
        "netIpv4NeighDefaultGcThresh1": "int",
        "netIpv4NeighDefaultGcThresh2": "int",
        "netIpv4NeighDefaultGcThresh3": "int",
        "netIpv4TcpFinTimeout": "int",
        "netIpv4TcpkeepaliveIntvl": "int",
        "netIpv4TcpKeepaliveProbes": "int",
        "netIpv4TcpKeepaliveTime": "int",
        "netIpv4TcpMaxSynBacklog": "int",
        "netIpv4TcpMaxTwBuckets": "int",
        "netIpv4TcpTwReuse": "bool",
        "netNetfilterNfConntrackBuckets": "int",
        "netNetfilterNfConntrackMax": "int",
        "vmMaxMapCount": "int",
        "vmSwappiness": "int",
        "vmVfsCachePressure": "int"
      },
      "transparentHugePageDefrag": "string",
      "transparentHugePageEnabled": "string"
    },
    "maxCount": "int",
    "maxPods": "int",
    "minCount": "int",
    "mode": "string",
    "networkProfile": {
      "allowedHostPorts": [
        {
          "portEnd": "int",
          "portStart": "int",
          "protocol": "string"
        }
      ],
      "applicationSecurityGroups": [ "string" ],
      "nodePublicIPTags": [
        {
          "ipTagType": "string",
          "tag": "string"
        }
      ]
    },
    "nodeLabels": {
      "{customized property}": "string"
    },
    "nodePublicIPPrefixID": "string",
    "nodeTaints": [ "string" ],
    "orchestratorVersion": "string",
    "osDiskSizeGB": "int",
    "osDiskType": "string",
    "osSKU": "string",
    "osType": "string",
    "podSubnetID": "string",
    "powerState": {
      "code": "string"
    },
    "proximityPlacementGroupID": "string",
    "scaleDownMode": "string",
    "scaleSetEvictionPolicy": "string",
    "scaleSetPriority": "string",
    "spotMaxPrice": "int",
    "tags": {
      "{customized property}": "string"
    },
    "type": "string",
    "upgradeSettings": {
      "drainTimeoutInMinutes": "int",
      "maxSurge": "string",
      "nodeSoakDurationInMinutes": "int"
    },
    "vmSize": "string",
    "vnetSubnetID": "string",
    "windowsProfile": {
      "disableOutboundNat": "bool"
    },
    "workloadRuntime": "string"
  }
}

Eigenschaftswerte

Microsoft.ContainerService/managedClusters/agentPools

Name BESCHREIBUNG Wert
apiVersion (Englisch) Die API-Version '2024-02-01'
Name Der Ressourcenname Zeichenfolge

Zwänge:
Min. Länge = 1
Max. Länge = 12
Pattern = ^[a-z][a-z0-9]{0,11}$ (erforderlich)
Eigenschaften Eigenschaften eines Agentpools. ManagedClusterAgentPoolProfileProperties
Typ Der Ressourcentyp 'Microsoft.ContainerService/managedClusters/agentPools'

AgentPoolNetworkProfil

Name BESCHREIBUNG Wert
allowedHostPorts Die Portbereiche, auf die zugegriffen werden darf. Die angegebenen Bereiche dürfen sich überlappen. PortRange-[]
applicationSecurityGroups (englisch) Die IDs der Anwendungssicherheitsgruppen, denen der Agentpool bei der Erstellung zugeordnet wird. Zeichenfolge[]
nodePublicIPTags IPTags von öffentlichen IP-Adressen auf Instanzebene. IPTag[]

AgentPoolUpgradeEinstellungen

Name BESCHREIBUNG Wert
drainTimeoutInMinuten Die Zeitspanne (in Minuten), die auf die Entfernung von Pods und die ordnungsgemäße Beendigung pro Knoten wartet. Diese Vertreibungszeit berücksichtigt das Warten auf Pod-Unterbrechungsbudgets. Wenn diese Zeit überschritten wird, schlägt das Upgrade fehl. Sofern nicht angegeben, wird der Wert standardmäßig auf 30 Minuten festgelegt. Int

Zwänge:
Min.-Wert = 1
Max. Wert = 1440
maxSurge Dies kann entweder auf eine ganze Zahl (z. B. "5") oder einen Prozentsatz (z. B. "50%" festgelegt werden). Wenn ein Prozentsatz angegeben ist, ist er der Prozentsatz der Gesamtgröße des Agentpools zum Zeitpunkt des Upgrades. Bei Prozentsätzen werden Bruchknoten aufgerundet. Wenn nicht angegeben, ist der Standardwert 1. Weitere Informationen, einschließlich bewährter Methoden, finden Sie unter: /azure/aks/upgrade-cluster#customize-node-surge-upgrade Schnur
nodeSoakDurationInMinutes Die Zeit (in Minuten), die nach dem Entwässern eines Knotens und vor dem Neustellen des Knotens und dem Wechsel zum nächsten Knoten gewartet werden soll. Wenn nicht angegeben, beträgt die Standardeinstellung 0 Minuten. Int

Zwänge:
Min.-Wert = 0
Max. Wert = 30

AgentPoolWindowsProfil

Name BESCHREIBUNG Wert
disableOutboundNat Der Standardwert ist "false". Ausgehende NAT kann nur deaktiviert werden, wenn der cluster outboundType NAT-Gateway ist und der Windows-Agentpool keine öffentliche IP-Knoten aktiviert hat. Boolesch

Kreationsdaten

Name BESCHREIBUNG Wert
sourceResourceId Dies ist die ARM-ID des Quellobjekts, das zum Erstellen des Zielobjekts verwendet werden soll. Schnur

IPTag

Name BESCHREIBUNG Wert
ipTagTyp Der IP-Tagtyp. Beispiel: RoutingPreference. Schnur
Etikett Der Wert des IP-Tags, das der öffentlichen IP zugeordnet ist. Beispiel: Internet. Schnur

KubeletConfig

Name BESCHREIBUNG Wert
allowedUnsafeSysctls Liste zulässiger unsicherer Sysctls oder unsicherer Sysctl-Muster (endend in *). Zeichenfolge[]
containerLogMaxDateien Die maximale Anzahl von Containerprotokolldateien, die für einen Container vorhanden sein können. Die Zahl muss ≥ 2 sein. Int

Zwänge:
Min.-Wert = 2
containerLogMaxSizeMB Die maximale Größe (z. B. 10Mi) der Containerprotokolldatei, bevor sie gedreht wird. INT
cpuCfsQuota Der Standardwert ist "true". Boolesch
cpuCfsQuotaPeriod Der Standardwert ist "100 ms". Gültige Werte sind eine Sequenz von Dezimalzahlen mit einem optionalen Bruch und einem Einheitensuffix. Beispiel: '300 ms', '2h45m'. Unterstützte Einheiten sind 'ns', 'us', 'ms', 's', 'm' und 'h'. Schnur
cpuManagerRichtlinie Der Standardwert ist "none". Weitere Informationen finden Sie unter Kubernetes CPU-Verwaltungsrichtlinien . Zulässige Werte sind "none" und "static". Schnur
failSwapOn Wenn dieser Wert auf "true" festgelegt ist, schlägt das Kubelet fehl, wenn der Tausch auf dem Knoten aktiviert ist. Boolesch
imageGcHighThreshold Um die Garbage Collection von Bildern zu deaktivieren, legen Sie diesen auf 100 fest. Der Standardwert ist 85% INT
imageGcLowThreshold Dies kann nicht höher als imageGcHighThreshold festgelegt werden. Der Standardwert ist 80% INT
podMaxPids Die maximale Anzahl von Prozessen pro Pod. INT
topologieManagerRichtlinie Weitere Informationen finden Sie unter Kubernetes Topology Manager. Der Standardwert ist "none". Zulässige Werte sind "none", "best-effort", "restricted" und "single-numa-node". Schnur

LinuxOSConfig

Name BESCHREIBUNG Wert
swapDateiGrößeMB Die Größe in MB einer Swapdatei, die auf jedem Knoten erstellt wird. INT
sysctls Sysctl-Einstellungen für Linux-Agentknoten. Sysctl-Konfiguration
transparentHugePageDefrag Gültige Werte sind "always", "defer", "defer+madvise", "madvise" und "never". Der Standardwert ist "madvise". Weitere Informationen finden Sie unter Transparent Hugepages. Schnur
transparentHugePageEnabled Gültige Werte sind "always", "madvise" und "never". Der Standardwert ist "always". Weitere Informationen finden Sie unter Transparent Hugepages. Schnur

ManagedClusterAgentPoolProfileProperties

Name BESCHREIBUNG Wert
VerfügbarkeitZonen Die Liste der Verfügbarkeitszonen, die für Knoten verwendet werden sollen. Dies kann nur angegeben werden, wenn die AgentPoolType-Eigenschaft "VirtualMachineScaleSets" lautet. Zeichenfolge[]
capacityReservationGroupID AKS ordnet den angegebenen Agentpool der Kapazitätsreservierungsgruppe zu. Schnur
zählen Anzahl der Agents (VMs) zum Hosten von Docker-Containern. Zulässige Werte müssen sich im Bereich von 0 bis 1000 (einschließlich) für Benutzerpools und im Bereich von 1 bis 1000 (einschließlich) für Systempools befinden. Der Standardwert ist 1. INT
creation-Daten CreationData zur Angabe der Quellmomentaufnahme-ID, wenn der Knotenpool mithilfe einer Momentaufnahme erstellt/aktualisiert wird. Kreationsdaten
aktivierenAutomatische Skalierung Gibt an, ob automatisch skaliert werden soll Boolesch
enableEncryptionAtHost Dies wird nur für bestimmte VM-Größen und in bestimmten Azure-Regionen unterstützt. Weitere Informationen finden Sie unter :/azure/aks/enable-host-encryption Boolesch
enableFIPS Weitere Details finden Sie unter Hinzufügen eines FIPS-fähigen Knotenpools . Boolesch
enableNodePublicIP Einige Szenarien erfordern möglicherweise Knoten in einem Knotenpool, um ihre eigenen dedizierten öffentlichen IP-Adressen zu empfangen. Ein häufiges Szenario ist für Gaming-Workloads, bei denen eine Konsole eine direkte Verbindung mit einem virtuellen Cloudcomputer herstellen muss, um Hops zu minimieren. Weitere Informationen finden Sie unter Zuweisen einer öffentlichen IP pro Knoten. Der Standardwert ist "false". Boolesch
aktivierenUltraSSD aktivieren Gibt an, ob UltraSSD aktiviert werden soll Boolesch
gpuInstanceProfile GPUInstanceProfile, das zum Angeben des GPU-MIG-Instanzprofils für unterstützte GPU-VM-SKU verwendet werden soll. 'MIG1g'
'MIG2g'
'MIG3g'
'MIG4g'
'MIG7g'
hostGroupID Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. Weitere Informationen finden Sie unter dedizierten Azure-Hosts. Schnur
kubeletConfig Die Kubelet-Konfiguration auf den Agentpoolknoten. KubeletConfig
kubeletDiskType Bestimmt die Platzierung von emptyDir-Volumes, Containerlaufzeitdatenstamm und Kubelet-Kurzspeicher. "Betriebssystem"
"Temporär"
linuxOSConfig Die Betriebssystemkonfiguration von Linux-Agentknoten. LinuxOSConfig
maxAnzahl Die maximale Anzahl von Knoten für die automatische Skalierung INT
maxPods Die maximale Anzahl von Pods, die auf einem Knoten ausgeführt werden können. INT
minAnzahl Die Mindestanzahl von Knoten für die automatische Skalierung INT
Modus Ein Cluster muss immer über mindestens einen 'System'-Agentpool verfügen. Weitere Informationen zu Agentpooleinschränkungen und bewährten Methoden finden Sie unter: /azure/aks/use-system-pools 'System'
"Benutzer"
networkProfil Netzwerkbezogene Einstellungen eines Agentpools. AgentPoolNetworkProfil
nodeLabels Die Knotenbeschriftungen, die über alle Knoten im Agentpool hinweg beibehalten werden sollen. ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} Schnur
nodeTaints Die zu neuen Knoten hinzugefügtenTaints während der Erstellung und Skalierung des Knotenpools. Beispiel: key=value:NoSchedule. Zeichenfolge[]
orchestratorVersion Sowohl Patchversion <major.minor.patch> (z. B. 1.20.13) als <auch Major.Minor> (z. B. 1.20) werden unterstützt. Wenn <"major.minor"> angegeben wird, wird automatisch die neueste unterstützte GA-Patchversion ausgewählt. Das Aktualisieren des Clusters mit demselben <major.minor> , nachdem er erstellt wurde (z. B. 1.14.x -> 1.14) löst kein Upgrade aus, auch wenn eine neuere Patchversion verfügbar ist. Als bewährte Methode sollten Sie alle Knotenpools in einem AKS-Cluster auf dieselbe Kubernetes-Version aktualisieren. Die Knotenpoolversion muss dieselbe Hauptversion wie die Steuerebene aufweisen. Die Nebenversion des Knotenpools muss sich innerhalb von zwei Nebenversionen der Steuerebenenversion befinden. Die Knotenpoolversion darf nicht größer als die Steuerebenenversion sein. Weitere Informationen finden Sie unter Upgrade eines Knotenpools. Schnur
osDiskSizeGB Betriebssystemdatenträgergröße in GB, die verwendet werden soll, um die Datenträgergröße für jeden Computer im Master-/Agent-Pool anzugeben. Wenn Sie "0" angeben, wird die Standardmäßige osDisk-Größe entsprechend der angegebenen vmSize angewendet. Int

Zwänge:
Min.-Wert = 0
Maximalwert = 2048
osDiskType Der Standardwert ist "Ephemeral", wenn die VM sie unterstützt und über einen Cachedatenträger verfügt, der größer als die angeforderte OSDiskSizeGB ist. Andernfalls wird standardmäßig "Verwaltet" verwendet. Kann nach der Erstellung nicht mehr geändert werden. Weitere Informationen finden Sie unter Ephemeral OS. "Ephemeral"
"Verwaltet"
osSKU Gibt die vom Agentpool verwendete Betriebssystem-SKU an. Der Standardwert ist Ubuntu, wenn OSType Linux ist. Der Standardwert ist Windows2019, wenn Kubernetes <= 1.24 oder Windows2022, wenn Kubernetes >= 1.25 ist, wenn OSType Windows ist. 'AzureLinux'
"CBLMarin"
"Ubuntu"
"Windows2019"
"Windows2022"
osTyp Der Betriebssystemtyp. Der Standardwert ist Linux. "Linux"
"Windows"
podSubnetID Wenn diese Angabe weggelassen wird, werden Pod-IPs im Knotensubnetz statisch zugewiesen (weitere Details finden Sie unter vnetSubnetID). Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} Schnur
powerState Wenn ein Agentpool zum ersten Mal erstellt wird, wird er anfangs ausgeführt. Der Agentpool kann beendet werden, indem sie dieses Feld auf "Beendet" festlegen. Ein beendeter Agentpool stoppt alle VMs und fälligkeit keine Abrechnungsgebühren. Ein Agentpool kann nur beendet werden, wenn er ausgeführt wird und der Bereitstellungsstatus erfolgreich ist. PowerState (Leistungsstärke)
proximityPlacementGroupID Die ID für die Näherungsplatzierungsgruppe. Schnur
scaleDownMode Dies wirkt sich auch auf das Cluster-Autoskalerverhalten aus. Wenn nicht angegeben, wird standardmäßig "Löschen" verwendet. "Deallocate"
"Löschen"
scaleSetEvictionPolicy Dies kann nur angegeben werden, wenn "scaleSetPriority" den Wert "Spot" hat. Wenn nicht angegeben, lautet der Standardwert "Delete". "Deallocate"
"Löschen"
scaleSetPriority Priorität des Skalierungssatzes für virtuelle Computer. Wenn nicht angegeben, lautet der Standardwert "Normal". "Normal"
"Spot"
spotMaxPreis Mögliche Werte sind ein Dezimalwert größer als Null oder -1, der die Bereitschaft angibt, einen On-Demand-Preis zu zahlen. Weitere Informationen zu Spotpreisen finden Sie unter Spot-VMs-Preise INT
Schlagwörter Die Tags, die im Skalierungssatz des virtuellen Agentpools beibehalten werden sollen. ManagedClusterAgentPoolProfilePropertiesTags
Typ Der Typ des Agentpools. "AvailabilitySet"
"VirtualMachineScaleSets"
upgradeEinstellungen Einstellungen für das Upgrade des Agentpools AgentPoolUpgradeEinstellungen
vmGröße Die Verfügbarkeit der VM variiert je nach Region. Wenn ein Knoten unzureichende Computeressourcen (Arbeitsspeicher, CPU usw.) enthält, können Pods möglicherweise nicht ordnungsgemäß ausgeführt werden. Weitere Informationen zu eingeschränkten VM-Größen finden Sie unter: /azure/aks/quotas-skus-regions Schnur
vnetSubnetID Wenn dies nicht angegeben ist, wird ein VNET und ein Subnetz generiert und verwendet. Wenn keine podSubnetID angegeben ist, gilt dies für Knoten und Pods, andernfalls gilt sie nur für Knoten. Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} Schnur
windowsProfil Das spezifische Profil des Windows-Agentpools. AgentPoolWindowsProfil
workloadRuntime Bestimmt den Typ der Workload, die ein Knoten ausführen kann. 'OCIContainer'
"WasmWasi"

ManagedClusterAgentPoolProfilePropertiesNodeLabels

Name BESCHREIBUNG Wert

ManagedClusterAgentPoolProfilePropertiesTags

Name BESCHREIBUNG Wert

PortRange (Englisch)

Name BESCHREIBUNG Wert
deuten Der maximale Port, der im Bereich enthalten ist. Er sollte zwischen 1 und 65535 liegen und größer als oder gleich PortStart sein. Int

Zwänge:
Min.-Wert = 1
Maximalwert = 65535
portStarten Der minimale Port, der im Bereich enthalten ist. Es sollte zwischen 1 und 65535 liegen und kleiner als oder gleich portEnd sein. Int

Zwänge:
Min.-Wert = 1
Maximalwert = 65535
Protokoll Das Netzwerkprotokoll des Ports. "TCP"
"UDP"

PowerState (Leistungsstärke)

Name BESCHREIBUNG Wert
Code Gibt an, ob der Cluster ausgeführt oder beendet wird. "Wird ausgeführt"
"Beendet"

Sysctl-Konfiguration

Name BESCHREIBUNG Wert
fsAioMaxNr Die sysctl-Einstellung fs.aio-max-nr. INT
fsFileMax Sysctl-Einstellung fs.file-max. INT
fsInotifyMaxUserWatches Sysctl-Einstellung fs.inotify.max_user_watches. INT
fsNrOffen Sysctl-Einstellung fs.nr_open. INT
kernelThreadsMax Sysctl-Einstellung kernel.threads-max. INT
netCoreNetdevMaxBacklog Sysctl-Einstellung net.core.netdev_max_backlog. INT
netCoreOptmemMax Sysctl-Einstellung net.core.optmem_max. INT
netCoreRmemDefault Sysctl-Einstellung net.core.rmem_default. INT
netCoreRmemMax Sysctl-Einstellung net.core.rmem_max. INT
netCoreSomaxconn Sysctl-Einstellung net.core.somaxconn. INT
netCoreWmemDefault Sysctl-Einstellung net.core.wmem_default. INT
netCoreWmemMax Sysctl-Einstellung net.core.wmem_max. INT
netIpv4IpLocalPortRange Sysctl-Einstellung net.ipv4.ip_local_port_range. Schnur
netIpv4NeighDefaultGcThresh1 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh1. INT
netIpv4NeighDefaultGcThresh2 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh2. INT
netIpv4NeighDefaultGcThresh3 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh3. INT
netIpv4TcpFinTimeout Sysctl-Einstellung net.ipv4.tcp_fin_timeout. INT
netIpv4TcpkeepaliveIntvl Sysctl-Einstellung net.ipv4.tcp_keepalive_intvl. Int

Zwänge:
Min.-Wert = 10
Max. Wert = 90
netIpv4TcpKeepaliveProbes Sysctl-Einstellung net.ipv4.tcp_keepalive_probes. INT
netIpv4TcpKeepaliveTime Sysctl-Einstellung net.ipv4.tcp_keepalive_time. INT
netIpv4TcpMaxSynBacklog Sysctl-Einstellung net.ipv4.tcp_max_syn_backlog. INT
netIpv4TcpMaxTwBuckets Sysctl-Einstellung net.ipv4.tcp_max_tw_buckets. INT
netIpv4TcpTwWiederverwendung Sysctl-Einstellung net.ipv4.tcp_tw_reuse. Boolesch
netNetfilterNfConntrackBuckets Sysctl-Einstellung net.netfilter.nf_conntrack_buckets. Int

Zwänge:
Min.-Wert = 65536
Max. Wert = 524288
netNetfilterNfConntrackMax Sysctl-Einstellung net.netfilter.nf_conntrack_max. Int

Zwänge:
Min-Wert = 131072
Max. Wert = 2097152
vmMaxMapCount Sysctl-Einstellung vm.max_map_count. INT
vmSwappiness Sysctl-Einstellung vm.swappiness. INT
vmVfsCachePressure Sysctl-Einstellung vm.vfs_cache_pressure. INT

Verwendungsbeispiele

Azure-Schnellstartvorlagen

Die folgenden Azure-Schnellstartvorlagen diesen Ressourcentyp bereitstellen.

Schablone BESCHREIBUNG
Bereitstellen eines AKS-Clusters für Azure ML

Bereitstellung in Azure
Mit dieser Vorlage können Sie einen kompatiblen AKS-Cluster bereitstellen, der an Azure ML angefügt werden kann.

Terraform -Ressourcendefinition (AzAPI-Anbieter)

Der ressourcentyp "managedClusters/agentPools" kann mit Vorgängen bereitgestellt werden, die auf Folgendes abzielen:

  • Ressourcengruppen

Eine Liste der geänderten Eigenschaften in jeder API-Version finden Sie unter Änderungsprotokoll.

Ressourcenformat

Um eine Microsoft.ContainerService/managedClusters/agentPools-Ressource zu erstellen, fügen Sie Ihrer Vorlage die folgende Terraform hinzu.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.ContainerService/managedClusters/agentPools@2024-02-01"
  name = "string"
  parent_id = "string"
  body = {
    properties = {
      availabilityZones = [
        "string"
      ]
      capacityReservationGroupID = "string"
      count = int
      creationData = {
        sourceResourceId = "string"
      }
      enableAutoScaling = bool
      enableEncryptionAtHost = bool
      enableFIPS = bool
      enableNodePublicIP = bool
      enableUltraSSD = bool
      gpuInstanceProfile = "string"
      hostGroupID = "string"
      kubeletConfig = {
        allowedUnsafeSysctls = [
          "string"
        ]
        containerLogMaxFiles = int
        containerLogMaxSizeMB = int
        cpuCfsQuota = bool
        cpuCfsQuotaPeriod = "string"
        cpuManagerPolicy = "string"
        failSwapOn = bool
        imageGcHighThreshold = int
        imageGcLowThreshold = int
        podMaxPids = int
        topologyManagerPolicy = "string"
      }
      kubeletDiskType = "string"
      linuxOSConfig = {
        swapFileSizeMB = int
        sysctls = {
          fsAioMaxNr = int
          fsFileMax = int
          fsInotifyMaxUserWatches = int
          fsNrOpen = int
          kernelThreadsMax = int
          netCoreNetdevMaxBacklog = int
          netCoreOptmemMax = int
          netCoreRmemDefault = int
          netCoreRmemMax = int
          netCoreSomaxconn = int
          netCoreWmemDefault = int
          netCoreWmemMax = int
          netIpv4IpLocalPortRange = "string"
          netIpv4NeighDefaultGcThresh1 = int
          netIpv4NeighDefaultGcThresh2 = int
          netIpv4NeighDefaultGcThresh3 = int
          netIpv4TcpFinTimeout = int
          netIpv4TcpkeepaliveIntvl = int
          netIpv4TcpKeepaliveProbes = int
          netIpv4TcpKeepaliveTime = int
          netIpv4TcpMaxSynBacklog = int
          netIpv4TcpMaxTwBuckets = int
          netIpv4TcpTwReuse = bool
          netNetfilterNfConntrackBuckets = int
          netNetfilterNfConntrackMax = int
          vmMaxMapCount = int
          vmSwappiness = int
          vmVfsCachePressure = int
        }
        transparentHugePageDefrag = "string"
        transparentHugePageEnabled = "string"
      }
      maxCount = int
      maxPods = int
      minCount = int
      mode = "string"
      networkProfile = {
        allowedHostPorts = [
          {
            portEnd = int
            portStart = int
            protocol = "string"
          }
        ]
        applicationSecurityGroups = [
          "string"
        ]
        nodePublicIPTags = [
          {
            ipTagType = "string"
            tag = "string"
          }
        ]
      }
      nodeLabels = {
        {customized property} = "string"
      }
      nodePublicIPPrefixID = "string"
      nodeTaints = [
        "string"
      ]
      orchestratorVersion = "string"
      osDiskSizeGB = int
      osDiskType = "string"
      osSKU = "string"
      osType = "string"
      podSubnetID = "string"
      powerState = {
        code = "string"
      }
      proximityPlacementGroupID = "string"
      scaleDownMode = "string"
      scaleSetEvictionPolicy = "string"
      scaleSetPriority = "string"
      spotMaxPrice = int
      tags = {
        {customized property} = "string"
      }
      type = "string"
      upgradeSettings = {
        drainTimeoutInMinutes = int
        maxSurge = "string"
        nodeSoakDurationInMinutes = int
      }
      vmSize = "string"
      vnetSubnetID = "string"
      windowsProfile = {
        disableOutboundNat = bool
      }
      workloadRuntime = "string"
    }
  }
}

Eigenschaftswerte

Microsoft.ContainerService/managedClusters/agentPools

Name BESCHREIBUNG Wert
Name Der Ressourcenname Zeichenfolge

Zwänge:
Min. Länge = 1
Max. Länge = 12
Pattern = ^[a-z][a-z0-9]{0,11}$ (erforderlich)
Eltern-ID Die ID der Ressource, die das übergeordnete Element für diese Ressource ist. ID für Ressource vom Typ: managedClusters
Eigenschaften Eigenschaften eines Agentpools. ManagedClusterAgentPoolProfileProperties
Typ Der Ressourcentyp "Microsoft.ContainerService/managedClusters/agentPools@2024-02-01"

AgentPoolNetworkProfil

Name BESCHREIBUNG Wert
allowedHostPorts Die Portbereiche, auf die zugegriffen werden darf. Die angegebenen Bereiche dürfen sich überlappen. PortRange-[]
applicationSecurityGroups (englisch) Die IDs der Anwendungssicherheitsgruppen, denen der Agentpool bei der Erstellung zugeordnet wird. Zeichenfolge[]
nodePublicIPTags IPTags von öffentlichen IP-Adressen auf Instanzebene. IPTag[]

AgentPoolUpgradeEinstellungen

Name BESCHREIBUNG Wert
drainTimeoutInMinuten Die Zeitspanne (in Minuten), die auf die Entfernung von Pods und die ordnungsgemäße Beendigung pro Knoten wartet. Diese Vertreibungszeit berücksichtigt das Warten auf Pod-Unterbrechungsbudgets. Wenn diese Zeit überschritten wird, schlägt das Upgrade fehl. Sofern nicht angegeben, wird der Wert standardmäßig auf 30 Minuten festgelegt. Int

Zwänge:
Min.-Wert = 1
Max. Wert = 1440
maxSurge Dies kann entweder auf eine ganze Zahl (z. B. "5") oder einen Prozentsatz (z. B. "50%" festgelegt werden). Wenn ein Prozentsatz angegeben ist, ist er der Prozentsatz der Gesamtgröße des Agentpools zum Zeitpunkt des Upgrades. Bei Prozentsätzen werden Bruchknoten aufgerundet. Wenn nicht angegeben, ist der Standardwert 1. Weitere Informationen, einschließlich bewährter Methoden, finden Sie unter: /azure/aks/upgrade-cluster#customize-node-surge-upgrade Schnur
nodeSoakDurationInMinutes Die Zeit (in Minuten), die nach dem Entwässern eines Knotens und vor dem Neustellen des Knotens und dem Wechsel zum nächsten Knoten gewartet werden soll. Wenn nicht angegeben, beträgt die Standardeinstellung 0 Minuten. Int

Zwänge:
Min.-Wert = 0
Max. Wert = 30

AgentPoolWindowsProfil

Name BESCHREIBUNG Wert
disableOutboundNat Der Standardwert ist "false". Ausgehende NAT kann nur deaktiviert werden, wenn der cluster outboundType NAT-Gateway ist und der Windows-Agentpool keine öffentliche IP-Knoten aktiviert hat. Boolesch

Kreationsdaten

Name BESCHREIBUNG Wert
sourceResourceId Dies ist die ARM-ID des Quellobjekts, das zum Erstellen des Zielobjekts verwendet werden soll. Schnur

IPTag

Name BESCHREIBUNG Wert
ipTagTyp Der IP-Tagtyp. Beispiel: RoutingPreference. Schnur
Etikett Der Wert des IP-Tags, das der öffentlichen IP zugeordnet ist. Beispiel: Internet. Schnur

KubeletConfig

Name BESCHREIBUNG Wert
allowedUnsafeSysctls Liste zulässiger unsicherer Sysctls oder unsicherer Sysctl-Muster (endend in *). Zeichenfolge[]
containerLogMaxDateien Die maximale Anzahl von Containerprotokolldateien, die für einen Container vorhanden sein können. Die Zahl muss ≥ 2 sein. Int

Zwänge:
Min.-Wert = 2
containerLogMaxSizeMB Die maximale Größe (z. B. 10Mi) der Containerprotokolldatei, bevor sie gedreht wird. INT
cpuCfsQuota Der Standardwert ist "true". Boolesch
cpuCfsQuotaPeriod Der Standardwert ist "100 ms". Gültige Werte sind eine Sequenz von Dezimalzahlen mit einem optionalen Bruch und einem Einheitensuffix. Beispiel: '300 ms', '2h45m'. Unterstützte Einheiten sind 'ns', 'us', 'ms', 's', 'm' und 'h'. Schnur
cpuManagerRichtlinie Der Standardwert ist "none". Weitere Informationen finden Sie unter Kubernetes CPU-Verwaltungsrichtlinien . Zulässige Werte sind "none" und "static". Schnur
failSwapOn Wenn dieser Wert auf "true" festgelegt ist, schlägt das Kubelet fehl, wenn der Tausch auf dem Knoten aktiviert ist. Boolesch
imageGcHighThreshold Um die Garbage Collection von Bildern zu deaktivieren, legen Sie diesen auf 100 fest. Der Standardwert ist 85% INT
imageGcLowThreshold Dies kann nicht höher als imageGcHighThreshold festgelegt werden. Der Standardwert ist 80% INT
podMaxPids Die maximale Anzahl von Prozessen pro Pod. INT
topologieManagerRichtlinie Weitere Informationen finden Sie unter Kubernetes Topology Manager. Der Standardwert ist "none". Zulässige Werte sind "none", "best-effort", "restricted" und "single-numa-node". Schnur

LinuxOSConfig

Name BESCHREIBUNG Wert
swapDateiGrößeMB Die Größe in MB einer Swapdatei, die auf jedem Knoten erstellt wird. INT
sysctls Sysctl-Einstellungen für Linux-Agentknoten. Sysctl-Konfiguration
transparentHugePageDefrag Gültige Werte sind "always", "defer", "defer+madvise", "madvise" und "never". Der Standardwert ist "madvise". Weitere Informationen finden Sie unter Transparent Hugepages. Schnur
transparentHugePageEnabled Gültige Werte sind "always", "madvise" und "never". Der Standardwert ist "always". Weitere Informationen finden Sie unter Transparent Hugepages. Schnur

ManagedClusterAgentPoolProfileProperties

Name BESCHREIBUNG Wert
VerfügbarkeitZonen Die Liste der Verfügbarkeitszonen, die für Knoten verwendet werden sollen. Dies kann nur angegeben werden, wenn die AgentPoolType-Eigenschaft "VirtualMachineScaleSets" lautet. Zeichenfolge[]
capacityReservationGroupID AKS ordnet den angegebenen Agentpool der Kapazitätsreservierungsgruppe zu. Schnur
zählen Anzahl der Agents (VMs) zum Hosten von Docker-Containern. Zulässige Werte müssen sich im Bereich von 0 bis 1000 (einschließlich) für Benutzerpools und im Bereich von 1 bis 1000 (einschließlich) für Systempools befinden. Der Standardwert ist 1. INT
creation-Daten CreationData zur Angabe der Quellmomentaufnahme-ID, wenn der Knotenpool mithilfe einer Momentaufnahme erstellt/aktualisiert wird. Kreationsdaten
aktivierenAutomatische Skalierung Gibt an, ob automatisch skaliert werden soll Boolesch
enableEncryptionAtHost Dies wird nur für bestimmte VM-Größen und in bestimmten Azure-Regionen unterstützt. Weitere Informationen finden Sie unter :/azure/aks/enable-host-encryption Boolesch
enableFIPS Weitere Details finden Sie unter Hinzufügen eines FIPS-fähigen Knotenpools . Boolesch
enableNodePublicIP Einige Szenarien erfordern möglicherweise Knoten in einem Knotenpool, um ihre eigenen dedizierten öffentlichen IP-Adressen zu empfangen. Ein häufiges Szenario ist für Gaming-Workloads, bei denen eine Konsole eine direkte Verbindung mit einem virtuellen Cloudcomputer herstellen muss, um Hops zu minimieren. Weitere Informationen finden Sie unter Zuweisen einer öffentlichen IP pro Knoten. Der Standardwert ist "false". Boolesch
aktivierenUltraSSD aktivieren Gibt an, ob UltraSSD aktiviert werden soll Boolesch
gpuInstanceProfile GPUInstanceProfile, das zum Angeben des GPU-MIG-Instanzprofils für unterstützte GPU-VM-SKU verwendet werden soll. 'MIG1g'
'MIG2g'
'MIG3g'
'MIG4g'
'MIG7g'
hostGroupID Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/hostGroups/{hostGroupName}. Weitere Informationen finden Sie unter dedizierten Azure-Hosts. Schnur
kubeletConfig Die Kubelet-Konfiguration auf den Agentpoolknoten. KubeletConfig
kubeletDiskType Bestimmt die Platzierung von emptyDir-Volumes, Containerlaufzeitdatenstamm und Kubelet-Kurzspeicher. "Betriebssystem"
"Temporär"
linuxOSConfig Die Betriebssystemkonfiguration von Linux-Agentknoten. LinuxOSConfig
maxAnzahl Die maximale Anzahl von Knoten für die automatische Skalierung INT
maxPods Die maximale Anzahl von Pods, die auf einem Knoten ausgeführt werden können. INT
minAnzahl Die Mindestanzahl von Knoten für die automatische Skalierung INT
Modus Ein Cluster muss immer über mindestens einen 'System'-Agentpool verfügen. Weitere Informationen zu Agentpooleinschränkungen und bewährten Methoden finden Sie unter: /azure/aks/use-system-pools 'System'
"Benutzer"
networkProfil Netzwerkbezogene Einstellungen eines Agentpools. AgentPoolNetworkProfil
nodeLabels Die Knotenbeschriftungen, die über alle Knoten im Agentpool hinweg beibehalten werden sollen. ManagedClusterAgentPoolProfilePropertiesNodeLabels
nodePublicIPPrefixID Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/publicIPPrefixes/{publicIPPrefixName} Schnur
nodeTaints Die zu neuen Knoten hinzugefügtenTaints während der Erstellung und Skalierung des Knotenpools. Beispiel: key=value:NoSchedule. Zeichenfolge[]
orchestratorVersion Sowohl Patchversion <major.minor.patch> (z. B. 1.20.13) als <auch Major.Minor> (z. B. 1.20) werden unterstützt. Wenn <"major.minor"> angegeben wird, wird automatisch die neueste unterstützte GA-Patchversion ausgewählt. Das Aktualisieren des Clusters mit demselben <major.minor> , nachdem er erstellt wurde (z. B. 1.14.x -> 1.14) löst kein Upgrade aus, auch wenn eine neuere Patchversion verfügbar ist. Als bewährte Methode sollten Sie alle Knotenpools in einem AKS-Cluster auf dieselbe Kubernetes-Version aktualisieren. Die Knotenpoolversion muss dieselbe Hauptversion wie die Steuerebene aufweisen. Die Nebenversion des Knotenpools muss sich innerhalb von zwei Nebenversionen der Steuerebenenversion befinden. Die Knotenpoolversion darf nicht größer als die Steuerebenenversion sein. Weitere Informationen finden Sie unter Upgrade eines Knotenpools. Schnur
osDiskSizeGB Betriebssystemdatenträgergröße in GB, die verwendet werden soll, um die Datenträgergröße für jeden Computer im Master-/Agent-Pool anzugeben. Wenn Sie "0" angeben, wird die Standardmäßige osDisk-Größe entsprechend der angegebenen vmSize angewendet. Int

Zwänge:
Min.-Wert = 0
Maximalwert = 2048
osDiskType Der Standardwert ist "Ephemeral", wenn die VM sie unterstützt und über einen Cachedatenträger verfügt, der größer als die angeforderte OSDiskSizeGB ist. Andernfalls wird standardmäßig "Verwaltet" verwendet. Kann nach der Erstellung nicht mehr geändert werden. Weitere Informationen finden Sie unter Ephemeral OS. "Ephemeral"
"Verwaltet"
osSKU Gibt die vom Agentpool verwendete Betriebssystem-SKU an. Der Standardwert ist Ubuntu, wenn OSType Linux ist. Der Standardwert ist Windows2019, wenn Kubernetes <= 1.24 oder Windows2022, wenn Kubernetes >= 1.25 ist, wenn OSType Windows ist. 'AzureLinux'
"CBLMarin"
"Ubuntu"
"Windows2019"
"Windows2022"
osTyp Der Betriebssystemtyp. Der Standardwert ist Linux. "Linux"
"Windows"
podSubnetID Wenn diese Angabe weggelassen wird, werden Pod-IPs im Knotensubnetz statisch zugewiesen (weitere Details finden Sie unter vnetSubnetID). Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} Schnur
powerState Wenn ein Agentpool zum ersten Mal erstellt wird, wird er anfangs ausgeführt. Der Agentpool kann beendet werden, indem sie dieses Feld auf "Beendet" festlegen. Ein beendeter Agentpool stoppt alle VMs und fälligkeit keine Abrechnungsgebühren. Ein Agentpool kann nur beendet werden, wenn er ausgeführt wird und der Bereitstellungsstatus erfolgreich ist. PowerState (Leistungsstärke)
proximityPlacementGroupID Die ID für die Näherungsplatzierungsgruppe. Schnur
scaleDownMode Dies wirkt sich auch auf das Cluster-Autoskalerverhalten aus. Wenn nicht angegeben, wird standardmäßig "Löschen" verwendet. "Deallocate"
"Löschen"
scaleSetEvictionPolicy Dies kann nur angegeben werden, wenn "scaleSetPriority" den Wert "Spot" hat. Wenn nicht angegeben, lautet der Standardwert "Delete". "Deallocate"
"Löschen"
scaleSetPriority Priorität des Skalierungssatzes für virtuelle Computer. Wenn nicht angegeben, lautet der Standardwert "Normal". "Normal"
"Spot"
spotMaxPreis Mögliche Werte sind ein Dezimalwert größer als Null oder -1, der die Bereitschaft angibt, einen On-Demand-Preis zu zahlen. Weitere Informationen zu Spotpreisen finden Sie unter Spot-VMs-Preise INT
Schlagwörter Die Tags, die im Skalierungssatz des virtuellen Agentpools beibehalten werden sollen. ManagedClusterAgentPoolProfilePropertiesTags
Typ Der Typ des Agentpools. "AvailabilitySet"
"VirtualMachineScaleSets"
upgradeEinstellungen Einstellungen für das Upgrade des Agentpools AgentPoolUpgradeEinstellungen
vmGröße Die Verfügbarkeit der VM variiert je nach Region. Wenn ein Knoten unzureichende Computeressourcen (Arbeitsspeicher, CPU usw.) enthält, können Pods möglicherweise nicht ordnungsgemäß ausgeführt werden. Weitere Informationen zu eingeschränkten VM-Größen finden Sie unter: /azure/aks/quotas-skus-regions Schnur
vnetSubnetID Wenn dies nicht angegeben ist, wird ein VNET und ein Subnetz generiert und verwendet. Wenn keine podSubnetID angegeben ist, gilt dies für Knoten und Pods, andernfalls gilt sie nur für Knoten. Dies ist das Formular: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/virtualNetworks/{virtualNetworkName}/subnets/{subnetName} Schnur
windowsProfil Das spezifische Profil des Windows-Agentpools. AgentPoolWindowsProfil
workloadRuntime Bestimmt den Typ der Workload, die ein Knoten ausführen kann. 'OCIContainer'
"WasmWasi"

ManagedClusterAgentPoolProfilePropertiesNodeLabels

Name BESCHREIBUNG Wert

ManagedClusterAgentPoolProfilePropertiesTags

Name BESCHREIBUNG Wert

PortRange (Englisch)

Name BESCHREIBUNG Wert
deuten Der maximale Port, der im Bereich enthalten ist. Er sollte zwischen 1 und 65535 liegen und größer als oder gleich PortStart sein. Int

Zwänge:
Min.-Wert = 1
Maximalwert = 65535
portStarten Der minimale Port, der im Bereich enthalten ist. Es sollte zwischen 1 und 65535 liegen und kleiner als oder gleich portEnd sein. Int

Zwänge:
Min.-Wert = 1
Maximalwert = 65535
Protokoll Das Netzwerkprotokoll des Ports. "TCP"
"UDP"

PowerState (Leistungsstärke)

Name BESCHREIBUNG Wert
Code Gibt an, ob der Cluster ausgeführt oder beendet wird. "Wird ausgeführt"
"Beendet"

Sysctl-Konfiguration

Name BESCHREIBUNG Wert
fsAioMaxNr Die sysctl-Einstellung fs.aio-max-nr. INT
fsFileMax Sysctl-Einstellung fs.file-max. INT
fsInotifyMaxUserWatches Sysctl-Einstellung fs.inotify.max_user_watches. INT
fsNrOffen Sysctl-Einstellung fs.nr_open. INT
kernelThreadsMax Sysctl-Einstellung kernel.threads-max. INT
netCoreNetdevMaxBacklog Sysctl-Einstellung net.core.netdev_max_backlog. INT
netCoreOptmemMax Sysctl-Einstellung net.core.optmem_max. INT
netCoreRmemDefault Sysctl-Einstellung net.core.rmem_default. INT
netCoreRmemMax Sysctl-Einstellung net.core.rmem_max. INT
netCoreSomaxconn Sysctl-Einstellung net.core.somaxconn. INT
netCoreWmemDefault Sysctl-Einstellung net.core.wmem_default. INT
netCoreWmemMax Sysctl-Einstellung net.core.wmem_max. INT
netIpv4IpLocalPortRange Sysctl-Einstellung net.ipv4.ip_local_port_range. Schnur
netIpv4NeighDefaultGcThresh1 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh1. INT
netIpv4NeighDefaultGcThresh2 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh2. INT
netIpv4NeighDefaultGcThresh3 Sysctl-Einstellung net.ipv4.neigh.default.gc_thresh3. INT
netIpv4TcpFinTimeout Sysctl-Einstellung net.ipv4.tcp_fin_timeout. INT
netIpv4TcpkeepaliveIntvl Sysctl-Einstellung net.ipv4.tcp_keepalive_intvl. Int

Zwänge:
Min.-Wert = 10
Max. Wert = 90
netIpv4TcpKeepaliveProbes Sysctl-Einstellung net.ipv4.tcp_keepalive_probes. INT
netIpv4TcpKeepaliveTime Sysctl-Einstellung net.ipv4.tcp_keepalive_time. INT
netIpv4TcpMaxSynBacklog Sysctl-Einstellung net.ipv4.tcp_max_syn_backlog. INT
netIpv4TcpMaxTwBuckets Sysctl-Einstellung net.ipv4.tcp_max_tw_buckets. INT
netIpv4TcpTwWiederverwendung Sysctl-Einstellung net.ipv4.tcp_tw_reuse. Boolesch
netNetfilterNfConntrackBuckets Sysctl-Einstellung net.netfilter.nf_conntrack_buckets. Int

Zwänge:
Min.-Wert = 65536
Max. Wert = 524288
netNetfilterNfConntrackMax Sysctl-Einstellung net.netfilter.nf_conntrack_max. Int

Zwänge:
Min-Wert = 131072
Max. Wert = 2097152
vmMaxMapCount Sysctl-Einstellung vm.max_map_count. INT
vmSwappiness Sysctl-Einstellung vm.swappiness. INT
vmVfsCachePressure Sysctl-Einstellung vm.vfs_cache_pressure. INT