Implantar um cluster Pacemaker para SQL Server no Linux
Aplica-se a:SQL Server - Linux
Este tutorial documenta as tarefas necessárias para implantar um cluster Linux Pacemaker para um grupo de disponibilidade Always On (AG) do SQL Server ou uma instância de cluster de failover (FCI). Ao contrário da pilha fortemente acoplada do Windows Server / SQL Server, a criação do cluster Pacemaker e a configuração do grupo de disponibilidade (AG) podem ser feitas no Linux, antes ou depois da instalação do SQL Server. A integração e a configuração de recursos para a parte do Pacemaker de uma implantação AG ou FCI são feitas após a configuração do cluster.
Importante
Um AG com um tipo de cluster de Nenhum não requer um cluster de Pacemaker, nem pode ser gerenciado por Pacemaker.
- Instale o complemento de alta disponibilidade e instale o Pacemaker.
- Prepare os nós para o Pacemaker (somente RHEL e Ubuntu).
- Crie o cluster Pacemaker.
- Instale os pacotes do SQL Server HA e do SQL Server Agent.
Pré-requisitos
Instalar o SQL Server no Linux.
Instalar o complemento de alta disponibilidade
Use a sintaxe a seguir para instalar os pacotes que compõem o complemento de alta disponibilidade (HA) para cada distribuição do Linux.
Registre o servidor usando a sintaxe a seguir. É-lhe pedido um nome de utilizador e uma palavra-passe válidos.
sudo subscription-manager register
Liste os pools disponíveis para registro.
sudo subscription-manager list --available
Execute o seguinte comando para associar a alta disponibilidade do RHEL à assinatura
sudo subscription-manager attach --pool=<PoolID>
onde PoolId é o ID do pool para a assinatura de alta disponibilidade da etapa anterior.
Habilite o repositório para poder usar o complemento de alta disponibilidade.
sudo subscription-manager repos --enable=rhel-ha-for-rhel-7-server-rpms
Instale o Pacemaker.
sudo yum install pacemaker pcs fence-agents-all resource-agents
Prepare os nós para o Pacemaker (RHEL e Ubuntu somente)
O Pacemaker utiliza um utilizador criado na distribuição denominado hacluster. O usuário é criado quando o complemento HA é instalado no RHEL e no Ubuntu.
Em cada servidor que servirá como nó do cluster Pacemaker, crie a senha de um usuário que será utilizado pelo cluster. O nome usado nos exemplos é hacluster, mas qualquer nome pode ser usado. O nome e a senha devem ser os mesmos em todos os nós que participam do cluster Pacemaker.
sudo passwd hacluster
Em cada nó que fará parte do cluster Pacemaker, ative e inicie o serviço
pcsd
com os seguintes comandos (RHEL e Ubuntu):sudo systemctl enable pcsd sudo systemctl start pcsd
Em seguida, execute o seguinte comando para garantir que
pcsd
seja iniciado.sudo systemctl status pcsd
Ative o serviço Pacemaker em cada nó possível do cluster Pacemaker.
sudo systemctl start pacemaker
No Ubuntu, você vê um erro:
pacemaker Default-Start contains no runlevels, aborting.
Este erro é um problema conhecido. Apesar do erro, ativar o serviço Pacemaker é bem-sucedido, e esse bug será corrigido em algum momento no futuro.
Em seguida, crie e inicie o cluster Pacemaker. Há uma diferença entre RHEL e Ubuntu nesta etapa. Enquanto em ambas as distribuições, a instalação do
pcs
configura um arquivo de configuração padrão para o cluster do Pacemaker, no RHEL, a execução desse comando destrói qualquer configuração existente e cria um novo cluster.
Criar o cluster Pacemaker
Esta seção documenta como criar e configurar o cluster para cada distribuição do Linux.
- Red Hat Enterprise Linux (RHEL)
- do SUSE Linux Enterprise Server (SLES)
- Ubuntu
Autorizar os nós
sudo pcs cluster auth <Node1 Node2 ... NodeN> -u hacluster
onde NodeX é o nome do nó.
Criar o cluster
sudo pcs cluster setup --name <PMClusterName Nodelist> --start --all --enable
onde
PMClusterName
é o nome atribuído ao cluster Pacemaker eNodelist
é a lista de nomes dos nós separados por um espaço.
Instalar os pacotes do SQL Server HA e do SQL Server Agent
Use os comandos a seguir para instalar o pacote HA do SQL Server e o SQL Server Agent, se ainda não estiverem instalados. A instalação do pacote HA após a instalação do SQL Server requer uma reinicialização do SQL Server para que ele seja usado. Estas instruções pressupõem que os repositórios para os pacotes da Microsoft já estão configurados, uma vez que o SQL Server deve ser instalado neste momento.
Se você não usar o SQL Server Agent para envio de logs ou qualquer outro uso, ele não precisará ser instalado, portanto, o pacote mssql-server-agent pode ser ignorado.
Os outros pacotes opcionais para SQL Server no Linux, SQL Server Full-Text Search (mssql-server-fts) e SQL Server Integration Services (mssql-server-is), não são necessários para alta disponibilidade, seja para uma FCI ou uma AG.
sudo yum install mssql-server-ha mssql-server-agent
sudo systemctl restart mssql-server
Próximo passo
Neste tutorial, você aprendeu como implantar um cluster Pacemaker para SQL Server no Linux. Você aprendeu a:
- Instale o complemento de alta disponibilidade e instale o Pacemaker.
- Prepare os nós para o Pacemaker (apenas RHEL e Ubuntu).
- Crie o cluster Pacemaker.
- Instale os pacotes do SQL Server HA e do SQL Server Agent.
Para criar e configurar um grupo de disponibilidade para o SQL Server no Linux, consulte: