trocando endereços IP por outro servidor no Linux rapidamente

1

Eu tenho uma maneira de fazer isso, mas não tenho certeza se é o melhor.

Eu tenho dois servidores, nós chamaremos Server-old e Server-new. ambos estão executando versões diferentes do CentOS. (5.0, e 5.7) Ambos estão em IPs diferentes na mesma sub-rede, mas outros estão executando o mesmo software, regras de firewall e configs. Eu estou mudando de Xen para VMWare para este host, e é mais fácil apenas construir um novo servidor ..

O servidor antigo recebe muito e muito tráfego, tanto por meio de rotas NAT estáticas, como direto para o seu ip (através de outros servidores conectados ao vpn)

Para fazer com que as coisas se movam suavemente (já que nem todo mundo usa o nome DNS) eu preciso trocar os endereços IP o mais rápido possível, no meio da noite, quando o tráfego é mais lento.

Estou planejando editar os arquivos / etc / sysconfig / network-scripts / ifcfg-eth0 dos servidores e colocar seus 'novos' endereços, abrindo duas sessões ssh:

  • Tipo antigo do servidor em ifdown eth0; sleep 10; ifup eth0
  • Novo tipo de servidor em ifdown eth0;ifup eth0

e depois aperte enter no Server-old, então o mais rápido que puder, aperte enter no Server-new

Estou pensando que isso é o mais rápido possível, sem causar conflitos de endereço IP. Ou existe uma maneira melhor de trocá-los?

    
por Brian 20.09.2011 / 18:50

3 respostas

0

Este é o caminho mais rápido se nada estiver entre os dois. Então, meu favorito seria fazê-lo a partir de um console real. É ruim quando a rede está inoperante e você não consegue se conectar via ssh.

    
por 20.09.2011 / 18:58
2

Certifique-se de que a hora em ambos os servidores é a mesma, configure uma tarefa cron para disparar às 2:00 da manhã (ou qualquer hora que você escolher no meio da noite) e execute:

service network restart

exclua o cron job na manhã seguinte ou depois que ele for executado.

    
por 20.09.2011 / 19:08
1

... mais importante do que fazer o encanamento IP no nível do sistema operacional rapidamente, você também deve atualizar os caches do protocolo ARP em todos os dispositivos na LAN. Se esses dois servidores obtiverem a maior parte de seu tráfego de, digamos, um roteador de borda externa, você poderá simplesmente explodir o cache de arp imediatamente depois de reencaminhar os addrs de IPs. Pacotes (estou presumindo ethernet lan) fluem pela sua LAN via endereços ethernet (que têm como alvo as NICs físicas nos fios), se você apenas recarregar os IP addrs, seu roteador e outros dispositivos continuarão endereçando pacotes para as NICs erradas para algum período de tempo. (Quanto tempo depende de como o cache ARP funciona.)

Além disso, algumas pilhas IP não permitem que você localize um endereço IP que já tenha sucesso com o RARP (reverse ARP) na rede local. Portanto, a sugestão de "reinicialização de rede" do cron automagic provavelmente (na minha opinião) falhará. Quando uma caixa faz o 'add', pode ver a outra caixa responder ao RARP. Enquanto isso, o trabalho do cron da outra caixa está prestes a tirar o IP ... acidente de trem.

Faça tudo manualmente, a partir dos consoles (bônus se você tiver um servidor de console acessível remotamente), isso não levará apenas alguns minutos.

Se você estiver trocando as caixas totalmente, eu também tocaria o shuffle ethernet plug ... pré-configure o novo cabeado em um switch (assim o link está ligado) com nada mais naquela LAN minúscula. Em seguida, tire o plugue ethernet do servidor antigo, mova o novo servidor para a malha real da LAN e, em seguida, exploda os caches ARP.

    
por 20.09.2011 / 20:15

Tags