Alta disponibilidade para contêineres de SQL Server

Aplica-se a: SQL Server no Linux

Crie e gerencie suas instâncias de SQL Server nativamente no Kubernetes.

Implante SQL Server em contêineres Docker gerenciados pelo Kubernetes. No Kubernetes, um contêiner com uma instância do SQL Server pode se recuperar automaticamente caso um nó de cluster falhe.

O SQL Server 2017 introduziu uma imagem Docker que pode ser implantada no Kubernetes. Você pode configurar a imagem com uma reivindicação de volume persistente (PVC) do Kubernetes. O Kubernetes monitora o processo do SQL Server no contêiner. Se o processo, pod, contêiner ou nó tiver falha, o Kubernetes inicializará outra instância automaticamente e se reconectará ao armazenamento.

Contêiner com instância do SQL Server no Kubernetes

O Kubernetes 1.6 e versões posteriores oferece suporte para classes de armazenamento, reivindicações de volumes persistentes e o tipo de volume de disco do Azure.

Nessa configuração, o Kubernetes desempenha a função do orquestrador de contêineres.

Diagrama de uma arquitetura de cluster do Kubernetes mostrando um aplicativo se conectando por meio de um Serviço a um Pod executando o contêiner mssql-server em um conjunto de réplicas, apoiado por um volume persistente em vários nós.

No diagrama anterior, mssql-server é uma instância do SQL Server (contêiner) em um pod. Um conjunto de réplicas verifica se o pod está recuperado automaticamente após uma falha de nó. Os aplicativos conectam-se ao serviço. Nesse caso, o serviço representa um balanceador de carga que hospeda um endereço IP que permanece o mesmo após a falha do mssql-server.

O Kubernetes orquestra os recursos no cluster. Quando um nó que hospeda um contêiner de instância SQL Server falha, ele inicializa um novo contêiner com uma instância de SQL Server e o anexa ao mesmo armazenamento persistente.

SQL Server em Linux suporta containers em Kubernetes, OpenShift e DH2i DxEnterprise.