Freigeben über


Aktualisierbarkeitsdisziplinen für SQL Managed Instance mit Azure Arc-Unterstützung

Mit Azure Arc-fähigen Datendiensten erhalten Sie eine Version von SQL, die ständig aktualisiert wird und nur in SQL Managed Instance mit Arc-Unterstützung verfügbar ist. SQL Managed Instance mit Arc-Unterstützung wird ständig aktualisiert und bietet daher eine auf dem verwalteten Dienst basierende Aktualisierbarkeit, sodass Sie von Innovationen in Ihrer Azure-Infrastruktur profitieren können, sobald diese verfügbar sind. Dies ist bei lokalen Installationen oder Multicloudumgebungen nicht der Fall.

Dieser Artikel enthält wichtige Entwurfsüberlegungen und Empfehlungen für das Konfigurieren und Verwalten des Upgradeprozesses für Ihre Azure Arc-fähigen Datendienste.

Aufbau

Direkter Verbindungsmodus

Das folgende Diagramm zeigt den Datendienst-Upgradeflow im Modus Direkt verbunden:

Screenshot: Datendienst-Upgradeflow im Modus „Direkt verbunden“

Indirekter Verbindungsmodus

Das folgende Diagramm zeigt den Datendienst-Upgradeflow im Modus Indirekt verbunden:

Screenshot: Datendienst-Upgradeflow im Modus „Indirekt verbunden“

Universelle Dienstebene

Die folgenden Diagramme zeigen den Upgradeprozess für SQL Managed Instance mit Arc-Unterstützung in der Dienstebene Universell:

Screenshot: Prozess vor dem Upgrade von SQL Managed Instance mit Arc-Unterstützung in der Dienstebene „Universell“

Screenshot: Upgradeprozess für SQL Managed Instance mit Arc-Unterstützung in der Dienstebene „Universell“

Dienstebene „Unternehmenskritisch“

Die folgenden Diagramme zeigen den Upgradeprozess für SQL Managed Instance mit Arc-Unterstützung in der Dienstebene Unternehmenskritisch:

Screenshot: Prozess vor dem Upgrade von SQL Managed Instance mit Arc-Unterstützung in der Dienstebene „Unternehmenskritisch“

Screenshot: Upgradeprozess für SQL Managed Instance mit Arc-Unterstützung in der Dienstebene „Unternehmenskritisch“

Screenshot: Rollout für das Upgrade der verbleibenden sekundären Replikate bei einem Upgrade in der Dienstebene „Unternehmenskritisch“

Screenshot: Failover auf SQL-Ebene und letzte Podinstanziierung bei einem Upgrade in der Dienstebene „Unternehmenskritisch“

Überlegungen zum Entwurf

Upgrades für Azure Arc-Datencontroller

  • Upgrades können mithilfe verschiedener Tools wie Azure CLI, Azure-Portal oder Kubernetes ausgeführt werden. Überlegen Sie, welches Tool je nach verwendetem Verbindungsmodus (direkt oder indirekt verbunden) verwendet werden soll und mit welchem Tool Sie am besten vertraut sind.
  • Sehen Sie sich Ihren Azure Arc-Datencontroller an, um zu überprüfen, ob Sie über Vorschaudatendienste verfügen (z. B. PostgreSQL mit Azure Arc-Unterstützung), die zusammen mit SQL Managed Instance mit Arc-Unterstützung bereitgestellt werden. Sie können keine direkten Upgrades ausführen, wenn Sie über eine Mischung aus Vorschaudiensten und allgemein verfügbaren Diensten verfügen, die auf demselben Datencontroller bereitgestellt werden.
  • Überprüfen Sie vor dem Upgrade die Versionen aller Instanzen von SQL Managed Instance mit Arc-Unterstützung, die vom Datencontroller verwendet werden, um zu bestätigen, dass es sich um dieselbe Version wie beim Datencontroller handelt.
  • Berücksichtigen Sie den unterstützten Upgradepfad, um vor dem Upgrade die nächste richtige Version für Ihren Datencontroller zu ermitteln.

Hinweis

Ein Upgrade des Azure Arc-Datencontrollers verursacht keine Downtime für SQL Managed Instance mit Arc-Unterstützung.

Direkter Verbindungsmodus

Indirekter Verbindungsmodus

  • Ermitteln Sie, ob das Upgrade des Azure Arc-Datencontrollers im Modus „Indirekt verbunden“ über die Azure CLI oder über Kubernetes-Tools implementiert werden sollte.
  • Sehen Sie sich die Voraussetzungen für Upgrades über Kubernetes-Tools und die Azure CLI an.
  • Entscheiden Sie, ob Sie Microsoft-Artefaktregistrierung verwenden, falls Ihre Cluster über Internetkonnektivität verfügt, oder eine private Registrierung, falls Sie Cluster mit Air Gap besitzen, um die Images für Azure Arc-fähige Datendienste abzurufen.
  • Planen Sie die erforderlichen Kubernetes-Berechtigungen für das Dienstkonto, das zum Aktualisieren des Azure Arc-Datencontrollers mithilfe von Kubernetes-Tools verwendet wird.
  • Überprüfen Sie die Repositoryinformationen, um sicherzustellen, dass sie gültig sind und bereits neue Images in sie gepullt wurden.

Upgrades für SQL Managed Instance mit Azure Arc-Unterstützung

Allgemeine Hinweise

  • Upgrades für den Azure Arc-Datencontroller müssen vor dem Upgrade von SQL Managed Instance mit Arc-Unterstützung ausgeführt werden. Die Versionen für die Clustererweiterung arcdata und die SQL Managed Instance-Erweiterungen hängen zusammen und müssen identisch sein.
  • Entscheiden Sie abhängig von Ihren Anforderungen, ob Sie automatische oder manuelle Upgrades für SQL Managed Instance mit Arc-Unterstützung verwenden.
  • Bei automatischen Upgrades kann nur ein einzelnes Wartungsfenster für einen Datencontroller definiert werden. Berücksichtigen Sie die Anzahl unterschiedlicher Wartungsfenster, die für verschiedene Workloads erforderlich sind, um die Anzahl der erforderlichen Datencontroller zu ermitteln.

Universelle Dienstebene

  • Während eines Upgrades der Dienstebene „Universell“ wird der Kubernetes-Pod beendet und mit der neuen Version erneut bereitgestellt. Es ist wichtig, die anwendungs- und clientseitigen Auswirkung eines Upgrades zu verstehen, bei dem es während der Erstellung des neuen Pods zu einer kurzen Downtime kommt.
  • Sehen Sie sich die Architektur Ihrer Anwendungen an, um festzustellen, ob sie über die erforderliche Resilienz und Wiederholungslogik verfügen, um kurze Auswirkungen während eines Upgrades zu unterstützen.

Dienstebene „Unternehmenskritisch“

  • Während eines Upgrades der Dienstebene „Unternehmenskritisch“ mit mehreren Replikaten werden die sekundären Replikate zuerst aktualisiert. Eins der aktualisierten sekundären Replikate wird höhergestuft und wird zum neuen primären Replikat, das alte primäre Replikat hingegen wird zu einem sekundären Replikat und wird aktualisiert. Während des Übergangs vom alten primären zum neuen primären Replikat gibt es eine kurze Downtime, wenn das Failover erfolgt. Es ist wichtig, die anwendungs- und clientseitigen Auswirkungen eines Upgrades zu verstehen, wenn das Failover erfolgt.
  • Sehen Sie sich die Architektur Ihrer Anwendungen an, um festzustellen, ob sie über die erforderliche Resilienz und Wiederholungslogik verfügen, um kurze Beeinträchtigungen während eines Upgrades zu unterstützen.

Entwurfsempfehlungen

Upgrades für Azure Arc-Datencontroller

  • Wenn Sie ein Upgrade mit der Azure CLI durchführen, überprüfen Sie im Versionsprotokoll, ob die Version der Azure CLI-Erweiterung arcdata der Imageversion entspricht, auf die Sie aktualisieren möchten.

  • Führen Sie in Umgebungen mit mehreren Clustern Upgrades zuerst in einer Test/Dev-Umgebung aus, um potenzielle Probleme oder Breaking Changes zu ermitteln.

  • Führen Sie vor dem Upgrade einen Probelauf aus, um das Versionsschema und das Autorisierungstoken des privaten Repositorys (sofern verwendet) zu überprüfen und um sicherzustellen, dass die Registrierung vorhanden ist, bevor Sie ein tatsächliches Upgrade ausführen.

  • Erstellen Sie einen Prozess zum Überwachen neuer Upgrades für Azure Arc-Datencontroller.

  • Verwenden Sie PostgreSQL und SQL Managed Instance mit Arc-Unterstützung nicht gleichzeitig auf demselben Datencontroller, da sich PostgreSQL noch in der Vorschauphase befindet, SQL Managed Instance mit Arc-Unterstützung jedoch bereits allgemein verfügbar ist. Verwenden Sie ggf. einen separaten Cluster mit einem eigenen Datencontroller, um PostgreSQL zu testen.

  • Vermeiden Sie die Verwendung von Previewfunktionen in Ihrer Produktionsumgebung, und verwenden Sie Previewfunktionen nur zu Evaluierungszwecken in Dev/Test-Instanzen.

  • Erfassen Sie den Bestand der aktuellen Versionen von bereitgestellten Datencontrollern. Mithilfe von Azure Resource Graph können Sie Ihre derzeit bereitgestellten Datencontroller abfragen.

      resources
      | where type == 'microsoft.azurearcdata/datacontrollers'
      | extend version = tostring(properties.k8sRaw.status.runningVersion)
      | project name,location,resourceGroup,version
    
  • Im Leitfaden zur Problembehandlung erfahren Sie, wie Sie die erforderlichen Protokolle erhalten, um Upgradeprobleme zu beheben.

Direkter Verbindungsmodus

Indirekter Verbindungsmodus

Upgrades für SQL Managed Instance mit Azure Arc-Unterstützung

Allgemeine Empfehlungen

  • Halten Sie Ihre Instanz von SQL Managed Instance mit Arc-Unterstützung mit der neuesten verfügbaren Version auf dem neuesten Stand, um aktuelle Patches, Fehlerkorrekturen und Features zu erhalten. Derzeit wird das Überspringen von Versionen während Upgrades von Arc-Datendiensten nicht unterstützt. Wenn also mehrere Releases für das Upgrade vorhanden sind, müssen Sie nacheinander auf aufeinanderfolgende Releases aktualisieren, um die neueste Version zu erhalten. Es empfiehlt sich, keine allzu große Lücke zu den neuesten Releases entstehen zu lassen.

  • Stellen Sie sicher, dass Ihre Sicherungsrichtlinie für die Zeitpunktwiederherstellung konfiguriert ist, damit Sie eine Wiederherstellung ausführen können, wenn während eines Upgrades Probleme auftreten. Überprüfen Sie den wichtigen Entwurfsbereich für Business Continuity & Disaster Recovery, und verwenden Sie den Befehl kubectl describe sqlmi für Ihre Instanzen, um die aktuellen Aufbewahrungseinstellungen zu überprüfen.

  • Führen Sie in Umgebungen mit mehreren Clustern oder in Szenarien mit mehreren Bereitstellungen von SQL Managed Instance mit Arc-Unterstützung, die verschiedene Umgebungen darstellen, Upgrades zuerst in Dev/Test-Umgebungen (etwa in der Entwicklungsumgebung) aus, um potenzielle Probleme oder Breaking Changes zu ermitteln.

  • Führen Sie vor dem Upgrade einen Probelauf aus, um das Versionsschema und das Autorisierungstoken des privaten Repositorys (sofern verwendet) zu überprüfen und um sicherzustellen, dass die Registrierung vorhanden ist, bevor Sie ein tatsächliches Upgrade ausführen.

  • Verwenden Sie die Azure CLI, um skalierbare Upgrades von SQL Managed Instance mit Arc-Unterstützung auszuführen.

  • Verwenden Sie automatische Upgrades für Workloads, die sofortige Upgrades tolerieren können, und deaktivieren Sie automatische Upgrades für Workloads, für die das Upgrade außerhalb der Spitzenzeiten geplant werden muss.

  • Wenn automatische Upgrades verwendet werden, müssen Sie ein geeignetes Wartungsfenster definieren, um Upgrades außerhalb der Spitzenzeiten zu ermöglichen.

  • Bei manuellen Upgrades sollten Sie darauf achten, dass Sie Upgrades in regelmäßigen Abständen durchführen, damit Sie stets unterstützte Versionen nutzen.

    Hinweis

    Sie können auch die Microsoft-Artefaktregistrierung auf neue Containerimageversionen abfragen.

  • Erstellen Sie einen Prozess, um den Upgradestatus mithilfe der Azure CLI oder von Kubernetes-Tools zu überwachen.

  • Überprüfen Sie vor dem Durchführen eines Upgrades die entsprechenden Versionen der verschiedenen Komponenten, um zu überprüfen, ob die richtigen Versionen der Komponenten vorhanden sind.

Universelle Dienstebene

Dienstebene „Unternehmenskritisch“

  • Stellen Sie die Instanz „Unternehmenskritisch“ mit drei Replikaten anstelle von zwei bereit, um eine höhere Verfügbarkeit und kürzere Downtime während der Upgrade- und Failoveraktivitäten zu erzielen.
  • Führen Sie Upgrades während nicht kritischer Zeiten aus, um die Auswirkungen auf Benutzer und Organisationsdaten zu minimieren.

Nächste Schritte

Weitere Informationen zur Hybrid Cloud- und Multicloud-Journey finden Sie in den folgenden Artikeln: