Partager via


Haute disponibilité pour les conteneurs SQL Server

Applies to :SQL Server sur Linux

Créez et gérez vos instances SQL Server en mode natif dans Kubernetes.

Déployez SQL Server sur des conteneurs Docker gérés par Kubernetes. Dans Kubernetes, un conteneur avec une instance de SQL Server peut récupérer automatiquement en cas d’échec d’un nœud de cluster.

SQL Server 2017 introduit une image Docker qui peut être déployée sur Kubernetes. Vous pouvez configurer l’image avec une réclamation de volume persistant Kubernetes (PVC). Kubernetes surveille le processus de SQL Server dans le conteneur. En cas d’échec du processus, du pod, du conteneur ou du nœud, Kubernetes démarre automatiquement une autre instance et se reconnecte au stockage.

Conteneur avec SQL Server instance sur Kubernetes

Kubernetes 1.6 et versions ultérieures prennent en charge les classes storage, persistent volume claims et Azure type de volume disque.

Dans cette configuration, Kubernetes joue le rôle de l’orchestrateur de conteneur.

Diagramme d’une architecture de cluster Kubernetes montrant une application se connectant via un service à un pod exécutant le conteneur mssql-server dans un jeu de réplicas, soutenu par un volume persistant sur plusieurs nœuds.

Dans le diagramme précédent, mssql-server est une instance SQL Server (conteneur) dans un pod. Un jeu de réplicas garantit que le pod est automatiquement récupéré après la défaillance d'un nœud. Les applications se connectent au service. Dans ce cas, le service représente un équilibreur de charge qui héberge une adresse IP restant la même après la défaillance de mssql-server.

Kubernetes orchestre les ressources dans le cluster. Lorsqu’un nœud hébergeant un conteneur d’instance SQL Server échoue, il démarre un nouveau conteneur avec une instance SQL Server et l’attache au même stockage persistant.

SQL Server sur Linux prend en charge les conteneurs sur Kubernetes, OpenShift et DH2i.