Partilhar via


Implantar um cluster Pacemaker para SQL Server no Linux

Aplica-se a:SQL Server em Linux

Este tutorial descreve as tarefas necessárias para implementar um cluster de Linux Pacemaker para um grupo de disponibilidade Always On do SQL Server (AG) ou uma instância de cluster de failover (FCI). Ao contrário da stack Windows Server / SQL Server fortemente integrada, pode criar um cluster Pacemaker e configurar um grupo de disponibilidade (AG) no Linux, tanto antes como depois de instalar o SQL Server. Configuras a integração e os recursos para a parte do Pacemaker de uma implementação AG ou FCI depois de o cluster estar configurado.

Importante

Um AG com um tipo de cluster Nenhum não necessita de um cluster Pacemaker e não pode ser gerido pelo 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.

Observação

A partir do SQL Server 2025 (17.x), o SUSE Linux Enterprise Server (SLES) não é suportado.

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.

  1. Registre o servidor usando a sintaxe a seguir. É-lhe pedido um nome de utilizador e uma palavra-passe válidos.

    sudo subscription-manager register
    
  2. Liste os pools disponíveis para registro.

    sudo subscription-manager list --available
    

    Para RHEL 10, use o seguinte comando:

    sudo subscription-manager repos --list
    

    Na lista de pools disponíveis, anote o ID do pool para a assinatura de alta disponibilidade.

  3. Execute o comando seguinte para associar a alta disponibilidade RHEL à subscrição. Neste exemplo, <PoolId> é o ID do pool para a subscrição de alta disponibilidade do passo anterior.

    sudo subscription-manager attach --pool=<PoolID>
    
  4. Ative o repositório para usar o add-on de alta disponibilidade.

    RHEL 7

    sudo subscription-manager repos --enable=rhel-ha-for-rhel-7-server-rpms
    

    RHEL 8

    sudo subscription-manager repos --enable=rhel-8-for-x86_64-highavailability-rpms
    

    RHEL 9

    sudo subscription-manager repos --enable=rhel-9-for-x86_64-highavailability-rpms
    

    RHEL 10

    sudo subscription-manager repos --enable=rhel-10-for-x86_64-highavailability-rpms
    
  5. 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 usa um utilizador nomeado hacluster que crias na distribuição. No RHEL e Ubuntu, a instalação do add-on do HA cria este utilizador.

  1. Em cada servidor que atuará como nó no cluster Pacemaker, crie a palavra-passe para um utilizador que será utilizado pelo cluster. Os exemplos usam o nome hacluster, mas podes usar qualquer nome. Todos os nós do cluster Pacemaker devem usar o mesmo nome e palavra-passe.

    sudo passwd hacluster
    
  2. 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
    

    Depois, execute o seguinte comando para garantir que o pcsd comece.

    sudo systemctl status pcsd
    
  3. Ative o serviço Pacemaker em todos os nós possíveis do cluster Pacemaker.

    sudo systemctl start pacemaker
    

    No Ubuntu, vês o seguinte erro.

    pacemaker Default-Start contains no runlevels, aborting.
    

    Este erro é um problema conhecido. Apesar do erro, a ativação do serviço Pacemaker é bem-sucedida. Este bug será corrigido numa atualização futura.

  4. Em seguida, crie e inicie o cluster Pacemaker. Há uma diferença entre RHEL e Ubuntu nesta etapa. Enquanto em ambas as distribuições instalar pcs configura um ficheiro de configuração por defeito para o cluster Pacemaker, no RHEL, a execução deste comando remove qualquer configuração existente e cria um novo cluster.

Criar o cluster Pacemaker

Esta secção descreve como criar e configurar o cluster para cada distribuição Linux.

  1. Autorize os nós. Nestes exemplos, <NodeX> é o nome de cada nó.

    RHEL 7

    Substitua <password> pela palavra-passe de hacluster.

    sudo pcs cluster auth <Node1 Node2 ... NodeN> -u hacluster -p <password>
    

    RHEL 8 e versões posteriores

    Introduza manualmente o nome de utilizador e a palavra-passe para hacluster quando solicitado.

    sudo pcs host auth <Node1> <Node2> <Node3>
    
  2. Criar o cluster. Neste exemplo, PMClusterName é o nome que atribui ao grupo Pacemaker.

    RHEL 7

    sudo pcs cluster setup --name <PMClusterName> <Node1> <Node2> <Node3>
    

    RHEL 8 e versões posteriores

    sudo pcs cluster setup <PMClusterName> <Node1> <Node2> <Node3>
    
  3. Inicia o cluster em todos os nós.

    sudo pcs cluster start --all
    
  4. Ative o cluster para arrancar quando o computador arrancar.

    sudo pcs cluster enable --all
    
  5. Verifica o estado do cluster.

    sudo pcs status
    

Instalar o SQL Server HA

Use os comandos a seguir para instalar o pacote HA do SQL Server e o SQL Server Agent, se ainda não estiverem instalados. Se instalar o pacote HA após instalar o SQL Server, tem de reiniciar o SQL Server para que a alteração tenha efeito. 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 não usares o SQL Server Agent para envio de registos ou qualquer outro uso, não precisas de iniciar ou configurar.

  • 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
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 (somente 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: