Alta Disponibilidade Firebird com SafeKit: Instale o Módulo firebird.safe para Failover
Guia de Instalação Rápida de Alta Disponibilidade para Firebird
Este guia explica como configurar um cluster mirror para Firebird usando SafeKit, garantindo a comutação automática de falhas e a replicação síncrona sem a necessidade de armazenamento partilhado.
Para obter ajuda, pode usar SafeKit AI 🤖.
1. Visão Geral
- Arquitetura: Utiliza um sistema de dois nós (Primário/Secundário).
- Proteção de Dados: Implementa replicação síncrona em tempo real para perda zero de dados (RPO = 0).
2. Instalação
- Software: Instale o motor SafeKit em ambos os servidores.
- Módulo: Descarregue o módulo de aplicação pré-configurado
firebird.safe.
3. Configuração
- Consola Web: Configure as pastas específicas que contêm os ficheiros Firebird.
- Monitorização: Inicie a monitorização e proteção da aplicação Firebird.
Limitações de Alta Disponibilidade SafeKit
| Limite / Requisito | Razão e Impacto | Alternativa Recomendada |
|---|---|---|
| Tamanho da replicação: alguns TBs | Tempo de resincronização após falha (passo 3): • Rede de 1 Gb/s ≈ 3 horas/TB • Rede de 10 Gb/s ≈ 1 hora/TB (dependendo do desempenho de escrita do disco) | • Utilizar armazenamento partilhado externo (mais caro, mais complexo). |
| Número de ficheiros: < 1.000.000 de ficheiros | • Desempenho do tempo de resincronização após uma falha (passo 3). • Tempo necessário para comparar cada ficheiro entre os dois nós. | • Coloque os vários ficheiros a replicar num disco rígido virtual/máquina virtual. • Apenas os ficheiros que representam o disco rígido virtual/máquina virtual serão replicados e resincronizados neste caso. |
| Capacidade de contingência: ≤ 32 máquinas virtuais | • Cada máquina virtual é executada num módulo mirror independente. • Máximo de 32 módulos mirror a funcionar no mesmo cluster. | • Utilizar um armazenamento externo partilhado e outra solução de agrupamento de máquinas virtuais (mais cara, mais complexa). |
| Arquitetura de rede: rede LAN/VLAN entre locais remotos | • Comutação automática de falha do endereço IP virtual com 2 nós na mesma sub-rede. • Boa largura de banda para resincronização (passo 3). • Baixa latência para replicação síncrona: normalmente < 5 ms RTT; valores mais elevados devem ser validados em relação à taxa de escrita da aplicação. | • Se os dois nós estiverem em subredes diferentes (comum na nuvem), utilize outras opções de reencaminhamento: um balanceador de carga, CLIs do fornecedor de nuvem, BGP ou redirecionamento de DNS. • Utilize soluções de cópia de segurança com replicação assíncrona para redes com alta latência. |
Visão geral da solução SafeKit/Firebird
A solução é descrita aqui: 💡 A mais simples alta disponibilidade Firebird: replicação síncrona e failover de 2 nós.
Instalação da solução SafeKit/Firebird no Windows e no Linux (firebird.safe)
Pré-requisitos
- É necessário ter Firebird instalado em 2 nós (máquinas virtuais ou servidores físicos).
Instalação de pacotes no Windows
- Descarregue e instale a versão gratuita do SafeKit em 2 nós Windows.
Nota: a versão gratuita inclui todas as funcionalidades SafeKit. No final do período de avaliação, pode ativar as chaves de licença permanentes sem desinstalar o pacote. - Após concluir a instalação do pacote, selecione “Definir credenciais da consola e regras de firewall agora” e configure uma palavra-passe para o utilizador admin da consola SafeKit.
Defina a mesma palavra-passe em todos os nós. - Exclua da verificação do antivírus C:/safekit/ (o diretório de instalação padrão) e todas as pastas replicadas que você irá definir.
Os antivírus podem enfrentar desafios de deteção com SafeKit devido à sua estreita integração com o sistema operativo, mecanismos de IP virtual, replicação em tempo real e reinício de serviços críticos.
Descarregue SafeKit (Windows) >
Instalação do módulo no Windows
- Descarregue o módulo firebird.safe. O módulo é gratuito. Contém os ficheiros userconfig.xml e os scripts de reinicialização.
- Coloque firebird.safe em C:/safekit/Application_Modules/generic.
Descarregar firebird.safe (Windows) >
Instalação de pacotes no Linux
- Instale a versão gratuita do SafeKit em 2 nós Linux. Nota: a versão de avaliação gratuita inclui todas as funcionalidades SafeKit. No final do período de avaliação, pode ativar as chaves de licença permanentes sem desinstalar o pacote.
- Após a transferência do pacote safekit_xx.bin, execute-o para extrair o rpm e o script safekitinstall e, em seguida, execute o script safekitinstall
- Responda sim à configuração automática da firewall
- Defina a palavra-passe para a consola web e para o utilizador admin predefinido. Defina a mesma palavra-passe em todos os nós.
Instalação do módulo no Linux
- Faça o download do módulo firebird.safe.
O módulo é gratuito. Contém os ficheiros userconfig.xml e os scripts de reinicialização. - Coloque firebird.safe em /opt/safekit/Application_Modules/generic/.
Descarregar firebird.safe (Linux) >
Configuração passo a passo da solução SafeKit/Firebird
Pré-requisitos
- Firebird aplicação foi instalada em 2 nós.
- O total de dados replicados é limitado a alguns terabytes — para além disso, o tempo de resincronização torna-se significativo.
- Interconexão mínima de 1 Gb/s entre nós (10 Gb/s recomendado para resincronização mais rápida).
- A redundância de IP requer que ambos os nós estejam na mesma LAN ou LAN estendida (L2) — redes L3 com encaminhamento não são suportadas (exceto com balanceadores de carga em nuvem 🛠️).
1. Inicie a consola SafeKit
- Inicie a consola web num navegador, num dos nós do cluster, ligando-se a
http://localhost:9010. - Introduza
admincomo nome de utilizador e a palavra-passe definida durante a instalação.
Também é possível executar a consola num navegador, numa estação de trabalho externa ao cluster.
⚠️ A configuração do SafeKit é feita em ambos os nós a partir de um único navegador.
ℹ️ Para proteger a consola web, consulte 🛠️ 11. Proteção do serviço web SafeKit no Guia do Utilizador.

2. Configurar os endereços dos nós
- Introduza os endereços IP dos nós, prima a
Tab keypara verificar a conectividade e preencha os nomes dos nós. Se node1 ou node2 tiverem uma cor vermelha, verifique a conectividade do navegador a ambos os nós e verifique a firewall em ambos os nós para 🛠️ resolução de problemas. - Em seguida, clique em
Save and applypara guardar a configuração. - Verifique a mensagem
Success✅ em ambos os nós. - Se ocorrer uma
Failurede configuração ❌ num nó, abra o acordeão ▼ desse nó e reveja as mensagens. Tenha em atenção que pode utilizar a IA SafeKit 🤖 para obter assistência.
ℹ️ Se desejar, pode adicionar uma nova LAN and nodes (primeiro ➕) para criar um segundo heartbeat e uma rede de replicação dedicada.
ℹ️ Se clicar em Advanced configuration, o ficheiro cluster.xml é apresentado. Este ficheiro é preenchido automaticamente pela consola e implementado nos nós.

3. Selecione um módulo
- No
New module, clique no módulofirebird.safe.
ℹ️ No banner azul no topo, node1 🛜 representa o nó de ligação da consola. Este nó reencaminha os pedidos para node2 quando necessário.
ℹ️ A consola procura por xxx.safe no diretório Application_Modules/generic/ no nó de ligação (node1) se tiver colocado um módulo lá durante a instalação.

4. Configure o módulo
- No
Module startup at boot, escolha o arranque automático do módulo no arranque sem atraso. - Em
Macros/SERVICES, introduza os nomes dos serviços da sua aplicação, pela ordem de inicialização, separados por vírgulas. Consulte esta captura de ecrã para um exemplo visual dos serviços Milestone XProtect 🖼️. - Nas
Heartbeat networks, deve ter uma única rede de pulsações na qual a replicação é feita. Se adicionou uma LAN privada no passo 2, pode configurar duas pulsações com o fluxo de replicação na LAN privada. - Em
Virtual IP addresses, introduza um endereço IP virtual. Um endereço IP virtual é um endereço IP padrão na mesma rede IP (mesma sub-rede) que os endereços IP de ambos os nós.
Os clientes da aplicação devem ser configurados com o endereço IP virtual (ou o nome DNS associado ao endereço IP virtual).
O endereço IP virtual é automaticamente alterado em caso de falha. - Em
Replicated directories, defina os caminhos dos diretórios a replicar. Verifique se eles existem em ambos os nós e contêm os dados da aplicação.
A replicação de dados e de registos é essencial para uma base de dados.
Pode criar diretórios replicados adicionais conforme necessário.
Veja esta captura de ecrã para um exemplo visual da replicação SQL Milestone XProtect 🖼️. - No
Checkers, poderá configurar os verificadores, se necessário, como monitorização de processos, verificadores personalizados, TCP, ping ou verificadores de divisão de rede.
Por exemplo, se um nome de processo for exibido emMonitored processes/services, ele será monitorizado com uma ação de reinicialização em caso de falha. A configuração de um nome de processo incorreto fará com que o módulo pare logo após o seu início.
ℹ️ Se clicar em Advanced configuration, o ficheiro userconfig.xml é apresentado. Este ficheiro é preenchido automaticamente pela consola e implementado nos nós com os scripts de reinicialização.
ℹ️ Numa implementação em nuvem, não é necessário configurar um endereço IP virtual no SafeKit. O IP virtual é gerido ao nível do balanceador de carga da nuvem 🛠️
ℹ️ Ao aplicar a configuração SafeKit, o startup type dos serviços é automaticamente definido como Manual nos serviços Windows. Isto garante que os serviços não arrancam automaticamente quando o sistema é iniciado, mas são iniciados apenas quando o próprio módulo é iniciado (o mesmo se aplica no Linux).

5. Editar os scripts (opcional)
- Este passo é opcional e pode ser ignorado na maioria dos casos, uma vez que os scripts de reinicialização já estão pré-configurados para reiniciar os serviços definidos no passo anterior.
- Então, clique diretamente em
Next step. start_prim.ps1inicia todos os serviços na ordem especificada na listaSERVICES, enquantostop_prim.ps1para todos os serviços na ordem inversa.- Adicionalmente,
start_prim.ps1verifica o arranque de cada serviço e para o módulo se algum serviço não arrancar corretamente.

6. Criptografia da comunicação (opcional)
- Mantenha a encriptação da comunicação entre os nós.

7. Guardar e aplicar
Save and applya configuração e os scripts em ambos os nós.

8. Verifique se a configuração foi bem-sucedida
- Verifique a mensagem
Success✅ em ambos os nós e clique emMonitor modules. - Se ocorrer uma
Failurede configuração ❌ num nó, abra o acordeão ▼ desse nó e reveja as mensagens. Tenha em atenção que pode utilizar a IA SafeKit 🤖 para obter assistência.
⚠️ No Linux, poderá obter um erro nesta etapa se os diretórios replicados forem pontos de montagem. 🛠️ Consulte o SK-0030 para resolver o problema.

9. Inicie o nó com dados atualizados
- Se o nó 1 tiver os diretórios replicados atualizados, selecione-o e ⋯
Force start▶As primary.
Quando o nó 2 for iniciado, todos os dados serão copiados do nó 1 para o nó 2.
⚠️ Se fizer a escolha errada, corre o risco de sincronizar dados desatualizados em ambos os nós.
⚠️ Também se assume que a aplicação Firebird está parada no nó 1 para que SafeKit instale os mecanismos de replicação e, em seguida, inicie a aplicação no script start_prim.
⚠️ Utilize Start para arranques subsequentes: SafeKit mantém o servidor mais atualizado. Iniciar As primary é um arranque especial na primeira vez ou durante operações excecionais.

10. Aguarde a transição para ALONE (verde)
- O nó 1 deve atingir o estado ALONE (verde), o que significa que o IP virtual está definido e que o script
start_primfoi executado no nó 1.
⚠️ Se ALONE (verde) não for atingido ou se a aplicação não for iniciada, analise o motivo com o registo do módulo 🖼️ do nó 1.
- Clique no ícone de registo 🔍 do
node1para abrir o registo do módulo e procure mensagens de erro, como um verificador que deteta um erro e para o módulo. - Clique em
start_primno registo: as mensagens de saída do script são exibidas à direita e os erros podem ser detetados, como um serviço iniciado incorretamente. - Utilize o SafeKit AI 🤖 para obter assistência com as mensagens de registo.
⚠️ Se o cluster estiver no estado WAIT (red) not uptodate, STOP (red) not uptodate, pare o nó WAIT e force o seu arranque como primário 🖼️.

11. Iniciar o nó 2
- ⋯
Starto nó 2 com o seu menu contextual. - Aguarde o SECOND estado (verde).
ℹ️ O nó 2 permanece no SECOND estado (laranja) enquanto resincroniza os diretórios replicados (cópia do nó 1 para o nó 2).
- Isto pode demorar algum tempo, dependendo do tamanho dos ficheiros a resincronizar nos diretórios replicados e da largura de banda da rede.
- Para ver o progresso da cópia, consulte o registo do módulo 🖼️ e os recursos de replicação 🖼️ do nó 2. Utilize a IA SafeKit 🤖 para obter assistência com as mensagens de registo.

12. Verifique se o cluster está operacional
- Verifique se o cluster está verde/verde com os serviços Firebird a serem executados no nó PRIM e não no nó SECOND.
Apenas as alterações dentro dos ficheiros são replicadas em tempo real neste estado.
⚠️ Os componentes que são clientes dos serviços Firebird devem ser configurados com o endereço IP virtual. A configuração pode ser feita com um nome DNS (se um nome DNS tiver sido criado e associado ao endereço IP virtual).

13. Testes
- Pare o nó PRIM, percorrendo o menu contextual e clicando em
Stop. - Verifique se existe um failover no SECOND nó, que deverá ficar ALONE (verde).
- E com Microsoft Management Console (MMC) no Windows ou com linhas de comando no Linux, verifique a comutação por falha dos serviços Firebird (parados no nó 1 no script
stop_prime iniciados no nó 2 no scriptstart_prim).
⚠️ Se ALONE (verde) não for atingido no node2 ou se a aplicação não for iniciada, analise o motivo com o registo do módulo 🖼️ do nó 2.
- Clique no ícone de registo 🔍 do
node2para abrir o registo do módulo e procure mensagens de erro, como um verificador que deteta um erro e para o módulo. - Clique em
start_primno registo: as mensagens de saída do script são exibidas à direita e os erros podem ser detetados, como um serviço iniciado incorretamente. - Utilize o SafeKit AI 🤖 para obter assistência com as mensagens de registo.
⚠️
- Se tudo estiver bem, inicie o node1, que irá ressincronizar os diretórios replicados do node2.
- Se as coisas correrem mal, pare node2 e force o nó 1 a iniciar como primário 🖼️, que será reiniciado com os seus dados localmente íntegros no momento da paragem.
ℹ️ Encontre mais detalhes, juntamente com vídeos, no Treinamento Online SafeKit.

14. Apoio
- Para obter suporte, faça 2
SnapshotsSafeKit (2 ficheiros .zip), uma para cada nó.
ℹ️ Mais informações sobre o apoio aqui.

Demonstração da solução mirror SafeKit
Vídeo SafeKit: Agrupamento a nível de aplicação (8:47)
Neste vídeo, descubra como SafeKit implementa um cluster de alta disponibilidade mirror sem a complexidade de uma SAN. Embora esta demonstração utilize Microsoft SQL Server, a solução funciona de forma idêntica para outras bases de dados e aplicações.
Capítulos
- 🎬 2 nós com SQL Server (0:32)
- 🎬 Configure o cluster e o módulo mirror.safe (3:58)
- 🎬 Iniciar e testar a replicação, migração e failover do SQL em caso de falha (4:17)
Implementação Passo a Passo
- 🛠️ Leia o guia sobre como configurar um cluster mirror no Windows
- 🛠️ Leia o guia sobre como configurar um cluster mirror no Linux
🔍 Explore o SafeKit
Encontre informações sobre as funcionalidades, arquiteturas, vídeos, documentação e a versão de teste gratuita do SafeKit.
| Recurso | Descrição | Ligação |
|---|---|---|
| Principais características | Saiba por que o SafeKit é uma solução de alta disponibilidade simples e económica. | Descubra as principais funcionalidades |
| Casos de uso | Saiba como o SafeKit mantém as aplicações e infraestruturas críticas disponíveis. | Explore os casos de uso |
| Modelo de implementação | O SafeKit oferece alta disponibilidade sem a necessidade de uma SAN ou de armazenamento partilhado. | Explore o modelo de implementação |
| Estratégias de alta disponibilidade | Compare a alta disponibilidade para máquinas virtuais com a alta disponibilidade para aplicações. | Compare as duas estratégias |
| Especificações técnicas | Verifique os requisitos técnicos e as limitações dos clusters SafeKit. | Leia as especificações técnicas |
| Vídeos | Assista a demonstrações da configuração do SafeKit e da comutação automática de falha. | Assista aos vídeos técnicos |
| Arquitetura | Saiba como o cluster mirror replica ficheiros em tempo real e lida com a comutação de falhas. | Explore a arquitetura Mirror |
| Arquitetura | Saiba como o cluster farm equilibra o tráfego de rede e lida com a contingência. | Explore a arquitetura Farm |
| Comparação de produtos | Compare o SafeKit com os clusters de alta disponibilidade tradicionais. | Compare as soluções |
| Recursos técnicos | Encontre a documentação técnica, descarregue o SafeKit e aceda à versão de avaliação gratuita. | Aceda à documentação e à versão de teste gratuita |
| Módulos da aplicação | Utilize os módulos SafeKit pré-configurados para configurar alta disponibilidade para as suas aplicações. | Explore os módulos da aplicação |