Alta disponibilidad para contenedores de SQL Server

Se aplica a:SQL Server: Linux

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

Implemente SQL Server en contenedores de Docker administrados por Kubernetes. En Kubernetes, un contenedor con una instancia de SQL Server se puede recuperar automáticamente en caso de error en un nodo de clúster.

SQL Server 2017 introduce una imagen de Docker que se puede implementar en Kubernetes. Puede configurar la imagen con una notificación de volumen persistente (PVC) de Kubernetes. Kubernetes supervisa el proceso de SQL Server en el contenedor. Si se produce un error en el proceso, el pod, el contenedor o el nodo, Kubernetes arranca automáticamente otra instancia y vuelve a conectar al almacenamiento.

Contenedor con instancia de SQL Server en Kubernetes

Kubernetes 1.6 y posterior admite clases de almacenamiento, notificaciones de volumen persistente y el tipo de volumen de disco de Azure.

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

Diagram showing a Kubernetes SQL Server cluster.

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 admite contenedores en Kubernetes, OpenShift y D2Hi.