Alta disponibilidad para contenedores de SQL Server

Se aplica a:SQL Server en Linux

Cree y administre las instancias de SQL Server de forma nativa en Kubernetes.

Despliega SQL Server en contenedores Docker gestionados por Kubernetes. En Kubernetes, un contenedor con una instancia de SQL Server puede recuperarse automáticamente en caso de que se produzca un error en un nodo de clúster.

SQL Server 2017 introdujo una imagen Docker que puede desplegarse en Kubernetes. Puede configurar la imagen con una reclamación de volumen persistente (PVC) de Kubernetes. Kubernetes supervisa el proceso de SQL Server en el contenedor. Si falla el proceso, pod, contenedor o nodo, Kubernetes arranca automáticamente otra instancia y se reconecta al almacenamiento.

Contenedor con instancia de SQL Server en Kubernetes

Kubernetes 1.6 y posteriores tienen soporte para clases de almacenamiento, reclamaciones de volúmenes persistentes y el tipo de volumen de disco de Azure.

En esta configuración, Kubernetes desempeña el rol de orquestador de contenedores.

Diagrama de una arquitectura de clúster de Kubernetes que muestra una aplicación que se conecta a través de un servicio a un pod que ejecuta el contenedor mssql-server en un conjunto de réplicas, respaldado por un volumen persistente en varios nodos.

En el diagrama anterior, mssql-server es una instancia de SQL Server (contenedor) en un pod. Un conjunto de réplicas garantiza que el pod se recupere automáticamente tras un error de nodo. Las aplicaciones se conectan al servicio. En este caso, el servicio representa un equilibrador de carga que hospeda una dirección IP que permanece igual tras un error de mssql-server.

Kubernetes orquesta los recursos del clúster. Cuando se produce un error en un nodo que hospeda un contenedor de instancia de SQL Server, arranca un nuevo contenedor con una instancia de SQL Server y lo asocia al mismo almacenamiento persistente.

SQL Server en Linux soporta contenedores en Kubernetes, OpenShift y DH2i DxEnterprise.