Compartilhamento de tecnologia

Modo DR do lvs e cérebro dividido do keepalive

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Modo DR:

Três modos de tradução de endereço lvs nat

Modo de rota direta DR

modo túnel tun

O agendador é o mais importante em todo o cluster LVS. No modo NAT, é responsável por aceitar solicitações, encaminhar o tráfego de acordo com o algoritmo de balanceamento de carga e enviar respostas ao cliente.

Modo DR: O escalonador ainda é responsável por aceitar solicitações, e também encaminha o tráfego para o RS de acordo com o algoritmo de balanceamento de carga, e a resposta é respondida diretamente ao cliente pelo RS.

Roteamento Direto O Roteamento Direto é um modo de encaminhamento da Camada 2. A camada 2 encaminha frames de dados. Encaminhamento com base no endereço MAC de origem e no endereço MAC de destino.

O IP de origem e o IP de destino do pacote de dados não serão modificados e o pacote de dados será encaminhado com base no endereço MAC.

No modo DR, o LVS também mantém um endereço IP virtual, e todas as solicitações são enviadas para este VIP. Como é encaminhado pela segunda camada, quando a solicitação do cliente chega ao agendador, um RS é selecionado de acordo com o algoritmo de balanceamento de carga, e o VIP é modificado. O endereço MAC do servidor torna-se o endereço MAC do RS. Depois que o RS processa a solicitação, ele pode enviar a resposta diretamente ao cliente com base no endereço MAC de origem do cliente na mensagem, sem a necessidade de um agendador.

1. O agendador é configurado com VIP, e o endereço VIP também é configurado no RS.

Os conflitos de endereço VIP O agendador e o RS estão no mesmo segmento de rede A comunicação ARP é caótica porque é transmitida para toda a LAN e todos os dispositivos a receberam.

Como bloquear a resposta de loopback de lo para que apenas o endereço IP físico desta máquina responda.

Modifique os parâmetros do kernel:

arp_igrone=1

Somente o endereço IP físico do sistema responderá à solicitação. lo não responderá às solicitações ARP.

2. Quando a mensagem é retornada, o endereço VIP ainda está lá. Como o cliente pode receber a resposta?

arp_announce=2

O sistema não usa o endereço de origem do pacote IP para responder à solicitação ARP, mas envia diretamente o endereço IP da interface física.

Configuração do servidor de nó:

Implementação do modo DR:

nginx1 RS1 192.168.233.100

nginx2 RS2 192.168.233.110

vip 192.168.233.200

agendador test1 192.168.233.10

cliente teste2 192.168.233.20

rota adicionar -host 192.168.233.100 dev lo:0

Defina o endereço IP para 192.168.233.100

Desligue o firewall e o mecanismo de defesa do agendador (test1), cliente (test2), rs1 (nginx1), rs2 (nginx2)

  1. [root@test1 ~]# systemctl stop firewalld
  2. [root@test1 ~]# setenforce 0

O agendador carrega o kernel e instala a ferramenta ipvsadm.

  1. [root@test1 ~]# modprobe ip_vs
  2. [root@test1 ~]# yum -y install ipvsadm*

Criar endereço vip

  1. [root@test1 ~]# cd /etc/sysconfig/network-scripts/
  2. [root@test1 network-scripts]# vim ifcfg-ens33:0
  3. DEVICE=ens33:0
  4. ONBOOT=YES
  5. IPADDR=192.168.233.200
  6. NETMASK=255.255.255.255
  7. [root@test1 network-scripts]# ifup ens33:0

Modifique os parâmetros de resposta do agendador

  1. [root@test1 network-scripts]# vim /etc/sysctl.conf
  2. net.ipv4.ip_forward=0
  3. #关闭数据包转发功能
  4. net.ipv4.conf.all.send_redirects=0
  5. #禁止系统发送icmp重定向的消息
  6. net.ipv4.conf.default.send_redirects=0
  7. #禁止默认网络接口发送ICMP重定向的消息
  8. net.ipv4.conf.ens33.send_redirects=0
  9. #禁止ens33设备,禁止发送ICMP重定向消息

Especifique algoritmos VIP e de balanceamento de carga

  1. [root@test1 opt]# ipvsadm -C
  2. [root@test1 opt]# ipvsadm -A -t 192.168.233.200:80 -s rr
  3. #指定vip和负载均衡的算法

Adicionar modo e backup especificados pelo servidor real

  1. [root@test1 opt]# ipvsadm -a -t 192.168.233.200:80 -r 192.168.233.100:80 -g
  2. [root@test1 opt]# ipvsadm -a -t 192.168.233.200:80 -r 192.168.233.110:80 -g
  3. [root@test1 opt]# ipvsadm-save /etc/sysconfig/ipvsadm
  4. [root@test1 opt]# systemctl restart ipvsadm

Configure 2 servidores reais (nginx1 nginx2)   

Defina as páginas de acesso dos dois servidores como nginx1 e nginx2

  1. [root@nginx1 ~]# vim /usr/local/nginx/html/index.html
  2. nginx1
  3. [root@nginx1 ~]# systemctl restart nginx
  4. [root@nginx2 ~]# vim /usr/local/nginx/html/index.html
  5. nginx2
  6. [root@nginx2 ~]# systemctl restart nginx

Visite e teste você mesmoCrie uma interface de loopback para os endereços de loopback de 2 servidores

  1. [root@nginx1 ~]# cd /etc/sysconfig/network-scripts/
  2. [root@nginx1 network-scripts]# cp ifcfg-lo ifcfg-lo:0
  3. [root@nginx1 network-scripts]# vim ifcfg-lo:0
  4. DEVICE=lo:0
  5. IPADDR=192.168.233.200
  6. NETMASK=255.255.255.255
  7. ONBOOT=yes
  8. [root@nginx1 network-scripts]# ifup lo:0

Defina o endereço IP como 192.168.233.100 e adicione-o à interface de loopback como VIP de lvs. Ele é encaminhado para RS através do modo de roteamento, que permite ao VIP identificar o servidor real.

[root@nginx1 network-scripts]# route add -host 192.168.233.200 dev lo:0

Ajustando a resposta do kernel de servidores reais

  1. [root@nginx1 ~]# vim /etc/sysctl.conf
  2. net.ipv4.conf.lo.arp_ignore = 1
  3. #设置回环接口忽略来自任何接口的ARP请求
  4. net.ipv4.conf.lo.arp_announce = 2
  5. #设置回环地址仅仅公告本地的ip地址,但是不响应ARP请求
  6. net.ipv4.conf.all.arp_ignore = 1
  7. #设置所有接口忽略来自任何接口的ARP请求
  8. net.ipv4.conf.all.arp_announce = 2
  9. #设置所有接口仅仅公告本地的ip地址,但是不响应ARP请求

Resultado dos testes

Três modos de trabalho de lvs:

NAT DR TUN

Vantagens: O desempenho da tradução de endereços é o melhor em WAN e pode realizar a transmissão de pacotes de dados por longas distâncias.

Configurando um canal dedicado simples

Desvantagens: O gargalo de desempenho não suporta segmentos entre redes e requer a abertura de uma VPN (custa dinheiro)

Requisitos para RS: Unlimited deve proibir respostas ARP em interfaces não físicas e deve suportar o modo túnel

Quantidade de RS 10-20 unidades 100 unidades 100 unidades

Questões de entrevista:

Descreva resumidamente os três modos de lvs e suas diferenças

Questões de entrevista:

Como resolver o cérebro dividido do keepalive?

A arquitetura de alta disponibilidade no cluster lvs serve apenas para a alta disponibilidade do agendador.

Com base no vrrp, os agendadores principal e de backup são implementados.

Arquitetura HA altamente disponível

Agendador principal e agendador de backup (múltiplo)

Quando o agendador principal está funcionando normalmente, o standby fica completamente em estado redundante (a ser determinado). Ele não participa da operação do cluster. Somente quando o agendador principal falhar, o standby assumirá o trabalho do agendador principal. Depois que o agendador principal recuperar sua função, o primário continuará a ser a entrada do cluster. e o modo de espera continuará em estado redundante (dependendo da prioridade).

Keeplive implementa solução LVS de alta disponibilidade baseada no protocolo vrrp.

1. Endereço multicast:

224.0.0.18 comunica-se com base no endereço multicast. Os dispositivos primário e secundário enviam mensagens para determinar se a outra parte está ativa.

2. Determinar as posições primária e secundária com base na prioridade.

3. Failover, se a máquina primária desligar, a máquina de backup continuará funcionando. Quando a máquina mestre se recuperar, a máquina de backup continuará aguardando.

4. A alternância entre primário e secundário é a alternância do endereço VIP.

Keepalive aparece especificamente para LVS, mas não é exclusivo do LVS.