Hochverfügbarkeit für SQL Server-Container

Gilt für:SQL Server unter Linux

Erstellen und verwalten Sie Ihre SQL Server-Instanzen nativ in Kubernetes.

Deploye SQL Server auf Docker-Container, die von Kubernetes verwaltet werden. In Kubernetes kann ein Container mit einer SQL Server-Instanz automatisch wiederhergestellt werden, wenn ein Clusterknoten ausfällt.

SQL Server 2017 führte ein Docker-Image ein, das auf Kubernetes bereitgestellt werden kann. Du kannst das Image mit einem Kubernetes Persistent Volume Claim (PVC) konfigurieren. Kubernetes überwacht den SQL Server-Prozess im Container. Wenn der Prozess, der Pod, der Container oder der Node fehlschlägt, bootet Kubernetes automatisch eine weitere Instanz und verbindet sich wieder mit dem Speicher.

Container mit SQL Server-Instanz auf Kubernetes

Kubernetes 1.6 und später unterstützen Speicherklassen, persistente Volume-Claims und den Azure-Festplatten-Volumetyp.

In dieser Konfiguration spielt Kubernetes die Rolle des Containerorchestrators.

Diagramm einer Kubernetes-Clusterarchitektur, das zeigt, wie eine Anwendung über einen Service eine Verbindung zu einem Pod herstellt, in dem der MSSQL-Server-Container in einem Replikatsatz ausgeführt wird, abgesichert durch ein persistentes Volume, das über mehrere Knoten verteilt ist.

Im vorherigen Diagramm ist mssql-server eine SQL Server Instanz (Container) in einem pod. Eine Replikatgruppe stellt sicher, dass der Pod nach dem Ausfall eines Knotens automatisch wiederhergestellt wird. Anwendungen stellen eine Verbindung zum Dienst her. In diesem Fall stellt der Dienst einen Lastenausgleich dar, der eine IP-Adresse hostet, die sich nach dem Ausfall von mssql-server nicht ändert.

Kubernetes orchestriert die Ressourcen im Cluster. Wenn ein Knoten, der einen SQL Server-Instanzcontainer hostet, fehlschlägt, startet er einen neuen Container mit einer SQL Server-Instanz und fügt sie an denselben beständigen Speicher an.

SQL Server für Linux unterstützt Container auf Kubernetes, OpenShift und DH2i DxEnterprise.