Pesquisar SafeKit

Kubernetes K3s Alta Disponibilidade: Replicação Síncrona e Failover em 2 Nós

Simplificando a Alta Disponibilidade (HA) do K3s: Porquê escolher SafeKit em vez do MetalLB e do Longhorn?

Embora a pilha padrão de código aberto (MetalLB + Longhorn) para K3s seja poderosa para grandes centros de dados, ela introduz uma complexidade excessiva para locais com 2 nós. SafeKit simplifica o ambiente K3s, substituindo ferramentas de rede e armazenamento autónomas por um único motor de alta disponibilidade consolidado.

Por que usar SafeKit para alta disponibilidade (HA) de K3s com 2 nós?

  • Verdadeira Alta Disponibilidade de 2 Nós: SafeKit oferece redundância total com apenas 2 nós, eliminando a necessidade de 3 nós para o quórum do etcd.
  • Perda de dados zero (RPO = 0): Substitui o armazenamento em bloco de alta sobrecarga por replicação síncrona ao nível de byte para desempenho de SSD local.
  • Proteção flexível ao nível de ficheiros: SafeKit executa a replicação baseada no anfitrião ao nível de ficheiros, o que é completamente transparente para a aplicação. Protege não só as bases de dados, mas também todas as pastas e dados associados. Pode replicar as pastas existentes exatamente onde estão instaladas, mesmo no disco do sistema.
  • IP Virtual Integrado (VIP): Gerencia nativamente o IP do cluster ao nível do kernel, eliminando a necessidade de configurações separadas do MetalLB.
  • Failover e Failback Automáticos: Acionam uma transição imediata para o nó secundário em caso de falha; assim que o nó primário estiver operacional, SafeKit executa a resincronização automática de dados sem intervenção manual.
  • Overhead ultrabaixo: SafeKit opera sem o pesado overhead de gestão de pods de armazenamento (CSI/Longhorn) e pods de rede (CNI/MetalLB) exigidos pelas pilhas padrão, libertando RAM e CPU críticas para as suas aplicações.
  • Amigável para o técnico de TI generalista: Substitui a complexa infraestrutura YAML para rede e armazenamento por uma interface gráfica web simples e scripts de implementação automatizados, permitindo que se concentre apenas nas suas aplicações.

Diagrama de arquitetura SafeKit para alta disponibilidade K3s de 2 nós, com IP virtual integrado, replicação em tempo real e failover automático.

Alta disponibilidade (HA) sem partilha de recursos para clusters K3s de 2 nós

⚡ Guia rápido de instalação de um cluster Kubernetes HA >

Índice

Como o software SafeKit implementa de forma simples um cluster de alta disponibilidade Kubernetes K3s?

Como implemento alta disponibilidade para um cluster Kubernetes K3s de 2 nós?

É possível implementar alta disponibilidade (HA) para um cluster Kubernetes K3s de 2 nós utilizando o módulo mirror k3s.safe SafeKit. Esta solução permite implementar um ambiente redundante sem a necessidade de armazenamento NFS externo, uma base de dados de configuração externa dedicada ou conhecimentos especializados Kubernetes.

Por que usar o K3s para computação de ponta e IoT?

O K3s é o motor Kubernetes preferido para IoT e computação de ponta (Edge computing) porque é uma distribuição leve e certificada, concebida para ambientes com recursos limitados. Simplifica a sobrecarga operacional do Kubernetes padrão, mantendo a compatibilidade total.

Quais são as principais características do módulo mirror k3s.safe?

O módulo k3s.safe fornece uma pilha de alta disponibilidade abrangente para o K3s, implementando:

  • Nós Ativos Duplos: Executa 2 mestres/agentes K3s ativos em simultâneo para alojar pods.
  • Replicação de Base de Dados: Replicação em tempo real da base de dados de configuração MariaDB entre nós.
  • Armazenamento Persistente: Replicação de volumes persistentes através de um provisionador dinâmico de cliente NFS integrado (nfs-client).
  • Continuidade da Rede: Inclui um endereço IP virtual para acesso contínuo do cliente.
  • Recuperação Automatizada: Suporte completo para comutação automática de contingência e retorno à condição normal.

Além do K3s, que aplicações e ambientes SafeKit pode proteger?

SafeKit é uma solução versátil de alta disponibilidade para Windows e Linux que vai muito além cluster mirror K3s. Permite replicação síncrona em tempo real e failover automático para uma vasta gama de cargas de trabalho críticas, incluindo:

  • Ambientes Virtuais e Físicos: Máquinas virtuais Hyper-V ou KVM completas.
  • Orquestração de contentores: ambientes Docker, Podman.
  • Dados e Serviços: Diretórios de ficheiros individuais, serviços e várias bases de dados.
  • Infraestrutura em Nuvem: Alta disponibilidade para aplicações em nuvem.

SafeKit também oferece aos clusters farm balanceamento de carga de rede nativo e failover para aplicações sem estado como servidores web.

💡 Explore a lista completa de soluções de alta disponibilidade suportadas aqui.

Como SafeKit consegue a alta disponibilidade do K3s?

Arquitetura e Lógica de Redundância para um Cluster K3s de 2 Nós usando SafeKit

Cluster K3s de 2 NósSafeKit PRIM (Nó Principal)SafeKit SECOND (Nó Secundário)
Execução da Carga de TrabalhoOs serviços do K3s (master e agent) estão ativos, a gerir a orquestração do cluster e a executar os pods.Os serviços de mestre e agente do K3s permanecem ativos, proporcionando processamento paralelo e alta disponibilidade.
Armazenamento NFS e Volumes Persistentes• Alojamento de IP virtual e porta NFS
• Gerencia as partilhas NFS exportadas ativas
• Armazena os Volumes Persistentes (PVs) do K3s
Replicação Síncrona: SafeKit replica todos os volumes persistentes em tempo real para garantir a perda zero de dados.
Base de Dados de Configuração• Alojamento de IP virtual e porta MariaDB
• Gerencia a base de dados de configuração ativa do K3s
Replicação da Base de Dados: A base de dados MariaDB é espelhada de forma síncrona, preservando o estado do cluster para o failover.

Mecanismo de Failover Automático: Em caso de falha do nó primário, SafeKit migra automaticamente os IPs virtuais e os serviços de armazenamento para o nó secundário, garantindo um serviço ininterrupto para o cluster K3s.

Como funciona o cluster mirror SafeKit com Kubernetes K3S?

Passo 1: Replicação de Ficheiros ao Nível de Byte num cluster mirror

Esta fase ilustra a arquitetura de alta disponibilidade entre o Servidor 1 (PRIM) e o Servidor 2 (SECOND). Ambos os servidores executam os componentes mestre e agente do K3s, conforme definido na tabela de arquitetura.

Replicação de ficheiros ao nível de byte num cluster mirror Kubernetes K3s

Atualmente, o IP Virtual (VIP), o armazenamento persistente NFS e MariaDB estão ativos apenas no Servidor 1 (PRIM). Os componentes principais do K3s em ambos os nós sincronizam-se entre si acedendo ao estado do cluster através do IP Virtual e da porta MariaDB. SafeKit implementa a replicação síncrona do MariaDB e dos ficheiros NFS persistentes, garantindo zero perda de dados (RPO = 0) em caso de falha.

Os mestres do K3s distribuem a carga de trabalho por ambos os nós (ou mais) comunicando diretamente com os agentes do K3s. Os clientes externos ligam-se ao
endereço IP virtual do cluster no nó PRIM. Utilizando mecanismos padrão Kubernetes, o mestre do K3s reencaminha o tráfego para pods distribuídos pelos nós. Da mesma forma, os pods acedem aos seus volumes persistentes (PVs) no servidor PRIM através do IP virtual e da porta NFS.

Passo 2: Reposição Automática em Caso de Falha e Continuidade do Serviço

Quando o Servidor 1 (PRIM) falha, o Servidor 2 (SECOND) assume automaticamente as operações do cluster para garantir a continuidade.

Failover num cluster mirror Kubernetes K3S

SafeKit deteta a falha e migra imediatamente o endereço IP virtual do cluster para o Servidor 2. Em seguida, promove os serviços locais MariaDB e NFS para um estado ativo. Devido à replicação síncrona realizada no Passo 1, todas as bases de dados MariaDB e os ficheiros de Volume Persistente (PV) NFS já estão atualizados no Servidor 2, garantindo a perda zero de dados.

Com o estado do cluster preservado, o K3s Master no Servidor 2 continua a execução. Ele deteta a perda do agente do Servidor 1 e reagenda automaticamente os pods afetados para os agentes K3s ativos restantes. O tempo total de recuperação (RTO) é a soma do intervalo de deteção de falhas (padrão: 30 segundos) e o tempo necessário para que os componentes K3s inicializem no nó secundário.

Enquanto o Servidor 1 estiver offline, os serviços MariaDB e NFS continuam a ser executados no Servidor 2, registando as alterações apenas localmente.

Passo 3: Recuperação de Falhas e Reintegração Automática

A recuperação ocorre quando o Servidor 1 é reiniciado após a resolução do problema inicial. SafeKit resincroniza automaticamente os ficheiros MariaDB e NFS, atualizando apenas os dados modificados no Servidor 2 durante o tempo de inatividade. Este processo de reintegração não é disruptivo ; os componentes mestre e agente do K3s continuam a ser executados no Servidor 2 sem interrupção.

Ressincronização automática e recuperação de falhas num cluster mirror K3s

SafeKit otimiza o tempo de recuperação com base na forma como o servidor foi parado:

  • Desligamento Limpo: Se SafeKit foi parado intencionalmente no Servidor 1, apenas as zonas específicas modificadas dentro dos ficheiros são resincronizadas usando mapas de bits de rastreamento de modificações. Isto garante uma reintegração ultrarrápida.
  • Falha do Sistema (por exemplo, Falha de Energia): Se o Servidor 1 sofreu um encerramento forçado, os mapas de bits de modificação são ignorados por segurança. SafeKit em vez disso, resincroniza todos os ficheiros com um carimbo de data/hora de modificação mais recente do que o último ponto de sincronização estabelecido, garantindo a integridade total dos dados.

Passo 4: Restaurar a Alta Disponibilidade e a Distribuição de Carga

Após a reintegração, o cluster volta ao modo mirror completo, espelhando o estado descrito no Passo 1. O sistema está novamente num estado de alta disponibilidade: os serviços MariaDB e NFS permanecem ativos no Servidor 2, enquanto SafeKit executa a replicação em tempo real de todas as atualizações de ficheiros de volta para o Servidor 1.

Retorno à operação normal num cluster mirror Kubernetes K3s

O K3s Master e o K3s Agent são reiniciados automaticamente no Servidor 1. O agendador Kubernetes reconhece agora o Servidor 1 como um nó íntegro e pode começar a reagendar os pods para distribuir a carga de trabalho por ambos os servidores.

Se o administrador preferir que os serviços MariaDB e NFS sejam executados no Servidor 1 (restaurando a função PRIM original), uma mudança pode ser acionada manualmente através da consola web num momento conveniente ou automatizada através das definições de configuração.

Como configurar um cluster mirror SafeKit?

Consola Web SafeKit: Painel de configuração de alta disponibilidade que mostra redes de pulsações, configuração de IP virtual e replicação de diretórios em tempo real para um cluster mirror.

A consola web SafeKit oferece uma interface intuitiva para orquestrar a alta disponibilidade das suas aplicações críticas. Em apenas alguns passos, pode configurar um cluster mirror SafeKit para garantir a continuidade do negócio:

  • Failover da Aplicação (Separador Macros): Defina os serviços específicos da aplicação a serem reiniciados automaticamente em caso de falha.
  • Rede(s) de pulsações: Caminho(s) de comunicação dedicado(s) utilizado(s) pelos nós do cluster para monitorizar continuamente a integridade e a disponibilidade uns dos outros e para sincronizar as decisões de failover.
  • Gestão de IP Virtual: Configure o IP Virtual (VIP) para uma reconexão transparente do cliente após uma falha.
  • Replicação em Tempo Real: Selecione os diretórios críticos para replicação síncrona ao nível de byte, baseada no anfitrião.
  • Verificadores: Monitorize o estado da aplicação e acione a recuperação automática se for detetada uma falha no processo.

O cluster SafeKit inclui um verificador dedicado de “split-brain” para resolver problemas de isolamento de rede sem a necessidade de uma terceira máquina testemunha ou de uma rede adicional de “heartbeat”. Saiba mais sobre “heartbeat”, “failover” e “quorum” num cluster.

Como monitorizar um cluster mirror SafeKit?

Consola Web SafeKit: Monitorização em tempo real de um cluster mirror 2 nós, mostrando os estados PRIM e SECOND com replicação de dados ativa.

A consola de gestão SafeKit oferece uma visão unificada da sua infraestrutura de alta disponibilidade. Permite aos administradores monitorizar o estado operacional do cluster e acompanhar a sincronização de dados em tempo real.

Para um cluster mirror de 2 nós, a consola exibe claramente as funções de cada servidor:

  • PRIM (Primário): O nó ativo que executa atualmente a aplicação e gere o IP Virtual. Executa escritas no armazenamento local e replicação em tempo real para o nó secundário.
  • SECOND: O nó de reserva recebe atualizações síncronas ao nível de byte. Está pronto para assumir o controlo instantaneamente se o Primário falhar.
  • ALONE Estado: Alerta visualmente quando o cluster está a ser executado num único nó (por exemplo, durante a manutenção ou após uma falha), indicando que a redundância foi temporariamente perdida.
  • Progresso da Ressincronização: Quando um nó que falhou recupera, o seu estado fica laranja durante a reintegração de dados em segundo plano, garantindo que não haja tempo de inatividade durante a fase de “regresso ao normal”.

Além de simples ícones de estado, a interface oferece orquestração de failover com um clique, permitindo reatribuir manualmente a função primária para manutenção planeada, garantindo simultaneamente a disponibilidade contínua para a atividade do utilizador.

Limitações de Alta Disponibilidade SafeKit

Limite / RequisitoRazão e ImpactoAlternativa Recomendada
Tamanho da replicação: alguns TBsTempo 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.

Comparação: SafeKit vs. Stack K3s Padrão (MetalLB & Longhorn)

Comparação: SafeKit vs. Solução Padrão de Código Aberto (MetalLB + Longhorn)

CapacidadeSafeKit (K3s.safe)MetalLB + Longhorn (K8s Padrão)
ArquiteturaTudo-em-Um: Rede integrada, replicação e redundância num único pacote.Pilha DIY (Faça Você Mesmo): Requer vários pacotes independentes (CNI, CSI, LoadBalancer).
Eficiência do HardwareHA puro de 2 nós: Redundância total sem um 3º nó “testemunha” ou árbitro.Mínimo de 3 nós: Normalmente, são necessários números ímpares para o quórum do Etcd e para a segurança do armazenamento.
Networking (VIP)Nativo: IP virtual gerido ao nível do sistema operativo; transparente para o K3s.Complexo: Requer a instalação do MetalLB com configuração L2 ou BGP, utilizando pods de orador dedicados que consomem CPU/RAM em cada nó.
Requisitos de ArmazenamentoSincronização ao nível de byte: Replicação de ficheiros em tempo real de diretórios existentes; funciona em discos de sistema padrão; replicação de ficheiros ao nível de byte com sobrecarga mínima de CPU/rede.Nível de Bloco: Armazenamento de blocos distribuído (Longhorn) utilizando pods de armazenamento dedicados; maior consumo de recursos.
Inteligência de FailoverEstabilidade Independente: SafeKit opera fora do ambiente de execução de contentores. Monitoriza diretamente o sistema operativo e o hardware, garantindo a redundância mesmo que o plano de controlo Kubernetes ou o motor de contentores bloqueie.Dependência Circular: A lógica de failover está alojada dentro dos pods que se destina a proteger. Se o sistema operativo anfitrião ou o motor K3s ficarem bloqueados, os pods de gestão (MetalLB/Longhorn) também congelam, exigindo frequentemente uma intervenção manual para quebrar o “bloqueio”
AdministraçãoSimplificado: Gerível através de uma única consola web; não é necessário um especialista Kubernetes.Especializado: Requer conhecimento aprofundado de YAML, Helm e controladores internos do K8s.

Em resumo, enquanto uma configuração DIY padrão (MetalLB + Longhorn) oferece modularidade para especialistas Kubernetes, ela cria uma dependência circular onde as ferramentas de armazenamento e rede são vulneráveis às mesmas falhas de nó que foram projetadas para gerir. SafeKit quebra este ciclo ao operar como uma camada de infraestrutura independente; ele fornece uma solução de alta disponibilidade (HA) de 2 nós mais robusta e agnóstica ao hardware, que permanece operacional mesmo que o motor Kubernetes ou o sistema operativo anfitrião congelem. Isto garante recuperação automatizada e integridade dos dados sem a pesada sobrecarga de recursos, o quórum obrigatório de três nós ou a complexidade de configuração exigida pelo armazenamento de blocos distribuído tradicional e pelas sobreposições de rede.

Guia em Vídeo: Configuração de um cluster mirror HA SafeKit

Vídeo SafeKit: Agrupamento a nível de aplicação (8:47)

Embora este vídeo demonstre a alta disponibilidade do SafeKit para Microsoft SQL Server, ele fornece uma excelente visão geral de como a solução protege os ambientes K3s. SafeKit funciona de forma idêntica para qualquer outro banco de dados ou aplicação de missão crítica.

Destaques do Vídeo

  1. 🎬 2 nós com SQL Server (0:32)
  2. 🎬 Configure o cluster e o módulo mirror.safe (3:58)
  3. 🎬 Iniciar e testar a replicação, migração e failover do SQL em caso de falha (4:17)

&amp;amp;amp;amp;amp;lt;br /&amp;amp;amp;amp;amp;gt;

🔍 Explore o SafeKit

Encontre informações sobre as funcionalidades, arquiteturas, vídeos, documentação e a versão de teste gratuita do SafeKit.

RecursoDescriçãoLigação
Principais característicasSaiba por que o SafeKit é uma solução de alta disponibilidade simples e económica.Descubra as principais funcionalidades
Casos de usoSaiba como o SafeKit mantém as aplicações e infraestruturas críticas disponíveis.Explore os casos de uso
Modelo de implementaçãoO SafeKit oferece alta disponibilidade sem a necessidade de uma SAN ou de armazenamento partilhado.Explore o modelo de implementação
Estratégias de alta disponibilidadeCompare a alta disponibilidade para máquinas virtuais com a alta disponibilidade para aplicações.Compare as duas estratégias
Especificações técnicasVerifique os requisitos técnicos e as limitações dos clusters SafeKit.Leia as especificações técnicas
VídeosAssista a demonstrações da configuração do SafeKit e da comutação automática de falha.Assista aos vídeos técnicos
ArquiteturaSaiba como o cluster mirror replica ficheiros em tempo real e lida com a comutação de falhas.Explore a arquitetura Mirror
ArquiteturaSaiba como o cluster farm equilibra o tráfego de rede e lida com a contingência.Explore a arquitetura Farm
Comparação de produtosCompare o SafeKit com os clusters de alta disponibilidade tradicionais.Compare as soluções
Recursos técnicosEncontre 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çãoUtilize os módulos SafeKit pré-configurados para configurar alta disponibilidade para as suas aplicações.Explore os módulos da aplicação
SafeKit AI Chat SafeKit AI