===== Nível Básico ===== === 1. Configuração de Balanceamento de Carga Simples com `nginx` === * **nginx** - Configura um balanceador de carga básico. - Exemplo de uso: upstream meuservidores { server servidor1.example.com; server servidor2.example.com; } server { listen 80; location / { proxy_pass http://meuservidores; } } - Descrição: Configura o ''nginx'' para balancear a carga entre os servidores ''servidor1.example.com'' e ''servidor2.example.com'' para requisições HTTP na porta 80. === 2. Verificação do Status de Servidores com `curl` === * **curl** - Testa o acesso aos servidores backend. - Exemplo de uso: curl http://servidor1.example.com - Descrição: Verifica se o servidor de backend ''servidor1.example.com'' está acessível e respondendo corretamente às requisições HTTP. ===== Nível Intermediário ===== === 1. Verificação de Clusters com `pcs` (Pacemaker e Corosync) === * **pcs status** - Exibe o status do cluster e seus recursos. - Exemplo de uso: sudo pcs status - Descrição: Mostra o estado atual do cluster gerenciado pelo Pacemaker, incluindo o status dos nós, os recursos ativos e quaisquer falhas. === 2. Configuração de Recurso Cluster com `pcs` === * **pcs resource create** - Cria um recurso no cluster. - Exemplo de uso: sudo pcs resource create meu_recurso ocf:heartbeat:nginx - Descrição: Cria um recurso de serviço de balanceamento de carga ''nginx'' no cluster Pacemaker, garantindo alta disponibilidade do serviço. === 3. Configuração de IP Virtual com `pcs` === * **pcs resource create IPaddr2** - Adiciona um IP virtual para o cluster. - Exemplo de uso: sudo pcs resource create meu_ip ocf:heartbeat:IPaddr2 ip=192.168.1.100 cidr_netmask=24 - Descrição: Configura um endereço IP virtual que será movido entre os nós do cluster para manter a alta disponibilidade. ===== Nível Avançado ===== === 1. Configuração de Balanceamento de Carga com `haproxy` === * **haproxy** - Configura o balanceador de carga ''HAProxy''. - Exemplo de uso: frontend http-in bind *:80 default_backend servidores_web backend servidores_web balance roundrobin server web1 servidor1.example.com:80 check server web2 servidor2.example.com:80 check - Descrição: Configura o ''HAProxy'' para balancear as requisições HTTP entre dois servidores web, ''servidor1.example.com'' e ''servidor2.example.com'', com checagem de saúde. === 2. Configuração de Alta Disponibilidade com `keepalived` === * **keepalived** - Configura failover de balanceadores de carga. - Exemplo de uso: vrrp_instance VI_1 { state MASTER interface eth0 virtual_router_id 51 priority 100 virtual_ipaddress { 192.168.1.100 } } - Descrição: Configura o ''keepalived'' para fornecer alta disponibilidade de um endereço IP virtual (192.168.1.100) entre balanceadores de carga em modo VRRP. ===== Nível Especializado ===== === 1. Gerenciamento de Cluster Kubernetes com `kubectl` === * **kubectl get nodes** - Exibe os nós do cluster Kubernetes. - Exemplo de uso: kubectl get nodes - Descrição: Lista todos os nós em um cluster Kubernetes, exibindo seu status, papéis e detalhes sobre a capacidade de cada nó. * **kubectl get services** - Exibe os serviços de balanceamento de carga. - Exemplo de uso: kubectl get services - Descrição: Lista todos os serviços configurados no cluster Kubernetes, incluindo balanceadores de carga para expor os pods a clientes externos. === 2. Configuração de Balanceador de Carga com MetalLB para Kubernetes === * **MetalLB** - Adiciona suporte a balanceamento de carga L2 no Kubernetes. - Exemplo de uso: apiVersion: v1 kind: ConfigMap metadata: namespace: metallb-system name: config data: config: | address-pools: - name: default protocol: layer2 addresses: - 192.168.1.240-192.168.1.250 - Descrição: Configura o ''MetalLB'' para fornecer suporte a balanceamento de carga no nível 2 (L2) para um cluster Kubernetes, com um pool de endereços IPs atribuídos a balanceadores. === 3. Configuração de Balanceamento de Carga Global com `dnsmasq` === * **dnsmasq** - Configura um balanceamento de carga baseado em DNS. - Exemplo de uso: server=/exemplo.com/192.168.1.101 server=/exemplo.com/192.168.1.102 - Descrição: Configura o ''dnsmasq'' para atuar como um balanceador de carga simples baseado em DNS, alternando entre os IPs 192.168.1.101 e 192.168.1.102 para as requisições ao domínio ''exemplo.com''.