===== 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''.