Share via


Gepland onderhoud gebruiken om upgrades voor uw Azure Kubernetes Service-cluster te plannen en te beheren

In dit artikel leest u hoe u gepland onderhoud kunt gebruiken om upgrades van cluster- en knooppuntinstallatiekopieën te plannen en beheren in Azure Kubernetes Service (AKS).

Regelmatig onderhoud wordt automatisch uitgevoerd op uw AKS-cluster. Er zijn twee soorten onderhoudsbewerkingen:

Wanneer u de functie van gepland onderhoud in AKS gebruikt, kunt u beide typen onderhoud uitvoeren in een frequentie van uw keuze om de impact van de werkbelasting te minimaliseren. U kunt gepland onderhoud gebruiken om de timing van automatische upgrades te plannen, maar gepland onderhoud wordt niet ingeschakeld of uitgeschakeld.

Voordat u begint

  • In dit artikel wordt ervan uitgegaan dat u een bestaand AKS-cluster hebt. Zie Een AKS-cluster maken als u geen AKS-cluster hebt.
  • Als u de Azure CLI gebruikt, voert u een upgrade uit naar de nieuwste versie met behulp van de az upgrade opdracht.

Overwegingen

Wanneer u gepland onderhoud gebruikt, zijn de volgende overwegingen van toepassing:

  • AKS behoudt zich het recht voor om geplande onderhoudsvensters te breken voor ongeplande, reactieve onderhoudsbewerkingen die dringend of kritiek zijn. Deze onderhoudsbewerkingen kunnen zelfs worden uitgevoerd tijdens de notAllowedTime of notAllowedDates perioden die zijn gedefinieerd in uw configuratie.
  • Onderhoudsbewerkingen worden alleen beschouwd als best effort en worden niet gegarandeerd binnen een opgegeven venster uitgevoerd.

Configuratietypen plannen voor gepland onderhoud

Er zijn drie planningsconfiguratietypen beschikbaar voor gepland onderhoud:

  • default is een basisconfiguratie voor het beheren van AKS-releases. Het kan tot twee weken duren voordat de releases vanaf de eerste verzending naar alle regio's worden geïmplementeerd, vanwege de veilige implementatieprocedures van Azure.

    Kies ervoor default om deze updates te plannen op een manier die het minst storend voor u is. U kunt de status van een doorlopende AKS-release per regio bewaken met de wekelijkse releasetracker.

  • aksManagedAutoUpgradeSchedule bepaalt wanneer u clusterupgrades wilt uitvoeren die zijn gepland door het aangewezen kanaal voor automatische upgrade. U kunt nauwkeuriger beheerde frequentie- en terugkeerinstellingen configureren met deze configuratie in vergelijking met de default configuratie. Zie Een Azure Kubernetes Service-cluster automatisch upgraden voor meer informatie over automatische upgrade van clusters.

  • aksManagedNodeOSUpgradeSchedule bepaalt wanneer u de beveiligingspatch voor het knooppuntbesturingssysteem moet uitvoeren die is gepland door het kanaal voor automatische upgrade van het knooppuntbesturingssysteem. U kunt nauwkeuriger beheerde frequentie- en terugkeerinstellingen configureren met deze configuratie in vergelijking met de default configuratie. Zie AKS-clusterknooppuntinstallatiekopieën automatisch patchen en bijwerken voor meer informatie over kanalen voor automatische upgrade van knooppunten van knooppunten van het besturingssysteem.

We raden u aan aksManagedAutoUpgradeSchedule voor alle scenario's voor clusterupgrades en aksManagedNodeOSUpgradeSchedule voor alle patchscenario's voor knooppuntbesturingssysteembeveiliging.

De default optie is uitsluitend bedoeld voor wekelijkse AKS-releases. U kunt de default configuratie overschakelen naar de aksManagedAutoUpgradeSchedule of aksManagedNodeOSUpgradeSchedule configuratie met behulp van de az aks maintenanceconfiguration update opdracht.

Een onderhoudsvenster maken

Notitie

Wanneer u automatische upgrade gebruikt om de juiste functionaliteit te garanderen, gebruikt u een onderhoudsvenster met een duur van vier uur of meer.

Geplande onderhoudsvensters worden opgegeven in Coordinated Universal Time (UTC).

Een default onderhoudsvenster heeft de volgende eigenschappen:

Name Omschrijving Default value
timeInWeek In een default configuratie bevat deze eigenschap de day en hourSlots waarden die een onderhoudsvenster definiëren. Niet van toepassing
timeInWeek.day De dag van de week voor het uitvoeren van onderhoud in een default configuratie. Niet van toepassing
timeInWeek.hourSlots Een lijst met uren lange tijdsleuven voor het uitvoeren van onderhoud op een bepaalde dag in een default configuratie. Niet van toepassing
notAllowedTime Een bereik met datums dat onderhoud niet kan worden uitgevoerd, bepaald door start en end onderliggende eigenschappen. Deze eigenschap is alleen van toepassing wanneer u het onderhoudsvenster maakt met behulp van een configuratiebestand. Niet van toepassing

Een aksManagedAutoUpgradeSchedule of aksManagedNodeOSUpgradeSchedule onderhoudsvenster heeft de volgende eigenschappen:

Name Omschrijving Default value
utcOffset De tijdzone voor clusteronderhoud. +00:00
startDate De datum waarop het onderhoudsvenster van kracht wordt. De huidige datum bij het maken
startTime De tijd waarop onderhoud moet worden gestart, op basis van de tijdzone die is bepaald door utcOffset. Niet van toepassing
schedule De upgradefrequentie. Er zijn drie typen beschikbaar: Weekly, AbsoluteMonthlyen RelativeMonthly. Niet van toepassing
intervalDays Het interval in dagen voor onderhoudsuitvoeringen. Het is alleen van toepassing op aksManagedNodeOSUpgradeSchedule. Niet van toepassing
intervalWeeks Het interval in weken voor onderhoudsuitvoeringen. Niet van toepassing
intervalMonths Het interval in maanden voor onderhoudsuitvoeringen. Niet van toepassing
dayOfWeek De opgegeven dag van de week voor onderhoud om te beginnen. Niet van toepassing
durationHours De duur van het venster voor uitvoering van onderhoud. Niet van toepassing
notAllowedDates Een bereik met datums dat onderhoud niet kan worden uitgevoerd, bepaald door start en end onderliggende eigenschappen. Dit is alleen van toepassing wanneer u het onderhoudsvenster maakt met behulp van een configuratiebestand. Niet van toepassing

Planningstypen

Er zijn vier beschikbare schematypen beschikbaar: Daily, Weekly, AbsoluteMonthlyen RelativeMonthly.

Weekly, AbsoluteMonthlyen RelativeMonthly planningstypen zijn alleen aksManagedClusterAutoUpgradeSchedule van toepassing op en aksManagedNodeOSUpgradeSchedule configuraties. Daily schema's zijn alleen aksManagedNodeOSUpgradeSchedule van toepassing op configuraties.

Alle velden die voor elk schematype worden weergegeven, zijn vereist.

Een Daily planning kan er als volgt uitzien: 'elke drie dagen':

"schedule": {
    "daily": {
        "intervalDays": 3
    }
}

Een Weekly planning kan er als volgt uitzien: 'elke twee weken op vrijdag':

"schedule": {
    "weekly": {
        "intervalWeeks": 2,
        "dayOfWeek": "Friday"
    }
}

Een AbsoluteMonthly planning kan er als volgt uitzien: 'elke drie maanden op de eerste dag van de maand':

"schedule": {
    "absoluteMonthly": {
        "intervalMonths": 3,
        "dayOfMonth": 1
    }
}

Een RelativeMonthly planning kan er als volgt uitzien: 'elke twee maanden op de afgelopen maandag':

"schedule": {
    "relativeMonthly": {
        "intervalMonths": 2,
        "dayOfWeek": "Monday",
        "weekIndex": "Last"
    }
}

Geldige waarden voor weekIndex include First, Second, Third, , Fourthen Last.

Een configuratie van een onderhoudsvenster toevoegen

Voeg een onderhoudsvensterconfiguratie toe aan een AKS-cluster met behulp van de az aks maintenanceconfiguration add opdracht.

In het eerste voorbeeld wordt een nieuwe default configuratie toegevoegd waarmee het onderhoud elke maandag van 1:00 tot 2:00 uur wordt gepland. In het tweede voorbeeld wordt een nieuwe aksManagedAutoUpgradeSchedule configuratie toegevoegd die onderhoud plant om elke derde vrijdag tussen 12:00 en 8:00 uur in de UTC+5:30 tijdzone uit te voeren.

# Add a new default configuration
az aks maintenanceconfiguration add --resource-group myResourceGroup --cluster-name myAKSCluster --name default --weekday Monday --start-hour 1

# Add a new aksManagedAutoUpgradeSchedule configuration
az aks maintenanceconfiguration add --resource-group myResourceGroup --cluster-name myAKSCluster --name aksManagedAutoUpgradeSchedule --schedule-type Weekly --day-of-week Friday --interval-weeks 3 --duration 8 --utc-offset +05:30 --start-time 00:00

Notitie

Wanneer u een default configuratietype gebruikt, kunt u de --start-time parameter weglaten om het onderhoud op elk moment van een dag toe te staan.

Een bestaand onderhoudsvenster bijwerken

Werk een bestaande onderhoudsconfiguratie bij met behulp van de az aks maintenanceconfiguration update opdracht.

In het volgende voorbeeld wordt de configuratie bijgewerkt voor het default plannen van onderhoud dat elke maandag van 2:00 tot 3:00 uur moet worden uitgevoerd:

az aks maintenanceconfiguration update --resource-group myResourceGroup --cluster-name myAKSCluster --name default --weekday Monday --start-hour 2

Alle onderhoudsvensters in een bestaand cluster weergeven

Geef de huidige onderhoudsconfiguratievensters in uw AKS-cluster weer met behulp van de az aks maintenanceconfiguration list opdracht:

az aks maintenanceconfiguration list --resource-group myResourceGroup --cluster-name myAKSCluster

Een specifiek onderhoudsconfiguratievenster in een bestaand cluster weergeven

Bekijk een specifiek onderhoudsconfiguratievenster in uw AKS-cluster met behulp van de az aks maintenanceconfiguration show opdracht met de --name parameter:

az aks maintenanceconfiguration show --resource-group myResourceGroup --cluster-name myAKSCluster --name aksManagedAutoUpgradeSchedule

In de volgende voorbeelduitvoer ziet u het onderhoudsvenster voor aksManagedAutoUpgradeSchedule:

{
  "id": "/subscriptions/<subscription>/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/managedClusters/myAKSCluster/maintenanceConfigurations/aksManagedAutoUpgradeSchedule",
  "maintenanceWindow": {
    "durationHours": 4,
    "notAllowedDates": [
      {
        "end": "2024-01-05",
        "start": "2023-12-23"
      }
    ],
    "schedule": {
      "absoluteMonthly": {
        "dayOfMonth": 1,
        "intervalMonths": 3
      },
      "daily": null,
      "relativeMonthly": null,
      "weekly": null
    },
    "startDate": "2023-01-20",
    "startTime": "09:00",
    "utcOffset": "-08:00"
  },
  "name": "aksManagedAutoUpgradeSchedule",
  "notAllowedTime": null,
  "resourceGroup": "myResourceGroup",
  "systemData": null,
  "timeInWeek": null,
  "type": null
}

Een onderhoudsconfiguratievenster in een bestaand cluster verwijderen

Verwijder een onderhoudsconfiguratievenster in uw AKS-cluster met behulp van de az aks maintenanceconfiguration delete opdracht.

In het volgende voorbeeld wordt de autoUpgradeSchedule onderhoudsconfiguratie verwijderd:

az aks maintenanceconfiguration delete --resource-group myResourceGroup --cluster-name myAKSCluster --name autoUpgradeSchedule

Veelgestelde vragen

  • Hoe kan ik de bestaande onderhoudsconfiguraties in mijn cluster controleren?

    Gebruik de opdracht az aks maintenanceconfiguration show.

  • Kan reactief, ongepland onderhoud ook plaatsvinden tijdens de notAllowedTime of notAllowedDates perioden?

    Ja. AKS behoudt zich het recht voor om deze vensters te breken voor ongeplande, reactieve onderhoudsbewerkingen die dringend of kritiek zijn.

  • Hoe kan ik zien of er een onderhoudsgebeurtenis is opgetreden?

    Voor releases controleert u de regio van uw cluster en zoekt u informatie op in wekelijkse releases om te zien of deze overeenkomt met uw onderhoudsschema. Als u de status van uw automatische upgrades wilt bekijken, zoekt u activiteitenlogboeken op in uw cluster. U kunt ook specifieke upgradegebeurtenissen opzoeken, zoals vermeld in Een AKS-cluster upgraden.

    AKS verzendt ook upgradegerelateerde Azure Event Grid-gebeurtenissen. Zie AKS als een Event Grid-bron voor meer informatie.

  • Kan ik meer dan één onderhoudsconfiguratie tegelijk gebruiken?

    Ja, u kunt alle drie de configuraties tegelijk uitvoeren: default, aksManagedAutoUpgradeSchedule, en aksManagedNodeOSUpgradeSchedule. Als de vensters elkaar overlappen, bepaalt AKS de uitvoeringsvolgorde.

  • Ik heb een onderhoudsvenster geconfigureerd, maar de upgrade is niet uitgevoerd. Waarom?

    Automatische upgrade van AKS heeft een bepaalde tijd nodig om rekening te houden met het onderhoudsvenster. We raden ten minste 24 uur aan tussen het maken of bijwerken van een onderhoudsconfiguratie en de geplande begintijd.

    Zorg er ook voor dat uw cluster wordt gestart wanneer het geplande onderhoudsvenster wordt gestart. Als het cluster is gestopt, wordt de toewijzing van het besturingsvlak ongedaan gemaakt en kunnen er geen bewerkingen worden uitgevoerd.

  • Waarom is een van mijn agentpools bijgewerkt buiten het onderhoudsvenster?

    Als een agentgroep niet wordt bijgewerkt (bijvoorbeeld omdat budgetten voor podonderbreking dit verhinderden), kan deze later, buiten het onderhoudsvenster, worden bijgewerkt. Dit scenario wordt een 'inhaalupgrade' genoemd. Het voorkomt dat agentpools worden bijgewerkt met een andere versie dan het AKS-besturingsvlak.

  • Zijn er best practices voor de onderhoudsconfiguraties?

    Het is raadzaam om het beveiligingsupdatesschema voor het knooppuntbesturingssysteem in te stellen op een wekelijkse frequentie als u het NodeImage kanaal gebruikt, omdat er elke week een nieuwe knooppuntinstallatiekopie wordt verzonden. U kunt ook kiezen voor het SecurityPatch kanaal om dagelijkse beveiligingsupdates te ontvangen.

    Stel het schema voor automatische upgrade in op een maandelijkse frequentie om op de hoogte te blijven van het Kubernetes N-2-ondersteuningsbeleid.

    Zie AKS-patch- en upgraderichtlijnen voor een gedetailleerde bespreking van best practices en andere overwegingen voor upgrades.

Volgende stappen