Benutzerdefinierte Standorte in Kubernetes-Clustern mit Azure Arc-Unterstützung

Als Erweiterung des Azure-Speicherortkonstrukts bietet die Funktion Benutzerdefinierte Speicherorte Mandantenadministratoren eine Möglichkeit, ihre Kubernetes-Cluster mit Azure Arc-Unterstützung als Zielspeicherorte für die Bereitstellung von Instanzen von Azure-Diensten zu verwenden. Beispiele für Azure-Angebote, die auf benutzerdefinierten Standorten bereitgestellt werden können, sind Datenbanken wie die von Azure Arc aktivierte SQL Managed Instance und der von Azure Arc aktivierte PostgreSQL-Server.

Ähnlich wie bei Azure-Speicherorten können Endbenutzer im Mandanten mit Zugriff auf „Benutzerdefinierte Speicherorte“ dort Ressourcen bereitstellen, indem sie das private Compute Ihres Unternehmens verwenden.

Diagramm mit den Arc-Plattformebenen.

Sie können „Benutzerdefinierte Speicherorte“ als Abstraktionsschicht auf der Grundlage von Kubernetes-Clustern mit Azure Arc-Unterstützung, Cluster Connect und Clustererweiterungen visualisieren. „Benutzerdefinierte Standorte“ erstellen die präzisen RoleBindings und ClusterRoleBindings, die erforderlich sind, damit andere Azure-Dienste auf den Cluster zugreifen können. Für diese anderen Azure-Dienste ist clusterzugriff erforderlich, um bereitgestellte Ressourcen zu verwalten.

Aufbau

Wenn der Administrator die Funktion für benutzerdefinierte Standorte auf dem Cluster aktiviert, wird eine ClusterRoleBinding auf dem Cluster erstellt, welche die vom Ressourcenanbieter für benutzerdefinierte Standorte verwendete Microsoft Entra-Anwendung autorisiert. Nach der Autorisierung kann der Ressourcenanbieter für benutzerdefinierte Speicherorte ClusterRoleBinding- oder RoleBinding-Objekte erstellen, die von anderen Azure-Ressourcenanbietern benötigt werden, um benutzerdefinierte Ressourcen in diesem Cluster zu erstellen. Die Liste der zu autorisierenden Ressourcenanbieter wird von den Clustererweiterungen bestimmt, die auf dem Cluster installiert sind.

Diagramm der Architektur von benutzerdefinierten Speicherorten mithilfe von Arc-fähigen Datendiensten als Beispiel.

Wenn der Benutzer eine Datendienstinstanz im Cluster erstellt:

  1. Die PUT-Anforderung wird an Azure Resource Manager gesendet.
  2. Die PUT-Anforderung wird an den Data Services-Ressourcenanbieter mit Azure Arc-Unterstützung weitergeleitet.
  3. Der RP ruft die kubeconfig-Datei ab, die dem Kubernetes-Cluster mit Azure Arc-Unterstützung zugeordnet ist, auf dem der benutzerdefinierte Standort vorhanden ist.
    • Auf den benutzerdefinierten Speicherort wird in der ursprünglichen PUT-Anforderung als extendedLocation verwiesen.
  4. Der Data Services-Ressourcenanbieter mit Azure Arc-Unterstützung verwendet die kubeconfig-Datei für die Kommunikation mit dem Cluster, um eine benutzerdefinierte Ressource des Data Services-Typs mit Azure Arc-Unterstützung für den Namespace zu erstellen, der dem benutzerdefinierten Standort zugeordnet ist.
    • Der Data Services-Operator mit Azure Arc-Unterstützung wurde über die Erstellung der Clustererweiterung bereitgestellt, bevor der benutzerdefinierte Speicherort existierte.
  5. Der Data Services-Operator mit Azure Arc-Unterstützung liest die auf dem Cluster erstellte neue benutzerdefinierte Ressource, erstellt den Datencontroller und realisiert dabei den gewünschten Zustand im Cluster.

Die Abfolge der Schritte zum Erstellen der verwalteten SQL-Instanz und der PostgreSQL-Instanz ist identisch mit der oben beschriebenen Abfolge von Schritten.

Nächste Schritte