Hochverfügbarkeit für SQL Server-Container
Gilt für: SQL Server – Linux
Erstellen und verwalten Sie Ihre SQL Server-Instanzen nativ in Kubernetes.
Stellen Sie SQL Server an Docker-Container bereit, 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ührt ein Docker-Image für die Bereitstellung in Kubernetes ein. Sie können das Image mit einem PersistentVolumeClaim (PVC) von Kubernetes konfigurieren. Kubernetes überwacht den SQL Server-Prozess im Container. Wenn Prozess, Pod, Container oder Knoten ausfallen, startet Kubernetes automatisch eine andere Instanz und stellt die Verbindung zum Speicher wieder her.
Container mit SQL Server-Instanz auf Kubernetes
Kubernetes 1.6 und höher unterstützt Speicherklassen, PersistentVolumeClaims und den Volumetyp Azure-Datenträger.
In dieser Konfiguration spielt Kubernetes die Rolle des Containerorchestrators.
Im obigen 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 in Kubernetes, OpenShift und D2Hi.