A história de um switch


Em nossa agregação de LAN, havia seis pares de switches Arista DCS-7050CX3-32S e um par de switches Brocade VDX 6940-36Q. Não é que os switches Brocade nesta rede sejam muito irritantes, eles trabalham e executam suas funções, mas estávamos preparando a automação completa de algumas ações e não tínhamos esses recursos nesses switches. Eu também queria mudar das interfaces 40GE para a possibilidade de usar 100GE para fazer uma reserva pelos próximos 2-3 anos. Então decidimos trocar Brocade por Arista.

Esses switches são switches de agregação de LAN para cada data center. Os switches de distribuição (o segundo nível de agregação) são conectados diretamente a eles, que já estão montados em si, os switches LAN Top-of-Rack nos racks de servidor.


Cada servidor está incluído em um ou dois comutadores de acesso. Os comutadores de acesso são conectados a um par de comutadores de distribuição (dois comutadores de distribuição e dois links físicos do comutador de acesso a diferentes comutadores de distribuição são usados ​​para redundância).

Cada servidor pode ser usado por seu cliente, portanto, uma VLAN separada é alocada ao cliente. A mesma VLAN é então atribuída a outro servidor deste cliente em qualquer rack. O data center consiste em várias dessas linhas (PODs), cada linha de racks possui seus próprios comutadores de distribuição. Em seguida, esses comutadores de distribuição são conectados aos comutadores de agregação.


Os clientes podem solicitar um servidor em qualquer linha; é impossível prever com antecedência que o servidor será alocado ou instalado em qualquer linha em particular em um rack específico; portanto, existem cerca de 2500 VLANs em cada data center em switches de agregação.

O equipamento para DCI (Data-Center Interconnect) se conecta aos comutadores de agregação. Ele pode ser usado para conectividade L2 (um par de switches que formam um túnel VXLAN para outro data center) e para conectividade L3 (dois roteadores MPLS).


Como já escrevi, para unificar os processos de automatização da configuração de serviços em equipamentos em um data center, foi necessário substituir os switches de agregação central. Instalamos novos switches ao lado dos existentes, combinamos em um par MLAG e começamos a nos preparar para o trabalho. Eles foram imediatamente conectados aos switches de agregação existentes, para que tivessem um domínio L2 comum em todas as VLANs do cliente.

Detalhes do circuito


Por especificidade, chamaremos os antigos switches de agregação A1 e A2 , os novos - N1 e N2 . Imagine que no POD 1 e no POD 4 existem servidores de um cliente C1 , a VLAN do cliente é indicada em azul. Esse cliente usa o serviço de conectividade L2 com outro datacenter, portanto, sua VLAN é servida em um par de comutadores VXLAN.

O cliente C2 coloca os servidores em POD 2 e POD 3 ; nós denotamos a VLAN do cliente como verde escuro. Esse cliente também usa o serviço de conectividade com outro data center, mas o L3, portanto sua VLAN é servida em um par de roteadores L3VPN.


Precisamos que as VLANs do cliente entendam em que estágios da substituição funcionam o que acontece, onde ocorre a interrupção da comunicação e qual pode ser sua duração. O protocolo STP não é usado nesse esquema, pois a largura da árvore para esse caso é grande e a convergência do protocolo cresce exponencialmente a partir do número de dispositivos e links entre eles.

Todos os dispositivos conectados por links duplos formam uma pilha, um par MLAG ou uma fábrica de VCS-Ethernet. Essas tecnologias não são usadas para um par de roteadores L3VPN, já que não há necessidade de redundância L2, basta que eles tenham conectividade L2 entre si por meio de switches de agregação.

Opções de implementação


Ao analisar as opções para outros eventos, percebemos que existem várias maneiras de realizar esses trabalhos. Desde uma interrupção global em toda a rede local, até pequenas interrupções literalmente de 1 a 2 segundos em partes da rede.

Rede, suporte! Interruptores, substitua!


A maneira mais fácil - é, claro, anunciar uma globais laços de quebra em todos os POD e todos os serviços DCI e mudar todos os links do interruptor A nos interruptores de N .


Além da interrupção, cujo tempo não podemos garantir a previsão (sim, sabemos o número de links, mas não sabemos quantas vezes algo vai dar errado - desde um cabo de manobra quebrado ou conector danificado até um mau funcionamento da porta ou do transceptor), ainda não podemos prever com antecedência se o comprimento dos patch cords, DAC, AOC, conectados aos antigos switches A, é suficiente para alcançá-los, embora estejam próximos a eles, mas ainda um pouco afastados, os novos switches N e se os mesmos transceptores funcionarão / DAC / AOC dos switches Brocade nos switches Arista.

E tudo isso em condições de forte pressão dos clientes e do suporte técnico ("Natasha, levante-se! Natasha, tudo não funciona lá! Natasha, nós já escrevemos suporte técnico, honestamente, honestamente! Natasha, eles já largaram tudo lá! Natasha, mas quanto não tem funcionará? Natasha, e quando funcionar?! ”). Mesmo apesar de uma pausa e notificação pré-anunciadas feitas aos clientes, é garantido um fluxo de chamadas em um determinado momento.

Espere, 1-2-3-4!


E se não declarar uma interrupção global, mas anunciar uma série de pequenas interrupções na comunicação nos serviços de POD e DCI. No primeiro intervalo, alterne apenas os switches POD 1 para N , no segundo - após alguns dias - POD 2 , depois de alguns dias POD 3 , depois POD 4 ... [N] , depois os switches VXLAN e os roteadores L3VPN.


Com essa organização de trabalho de troca, reduzimos a complexidade do trabalho único e aumentamos nosso tempo para resolver problemas se algo de repente der errado. A conectividade POD 1 após alternar com outro POD e DCI não é perdida. Mas o trabalho em si é adiado por um longo tempo; durante o tempo em que trabalha no datacenter, é necessário um engenheiro para executar fisicamente a comutação e durante o trabalho (e esse trabalho geralmente é realizado à noite, das 2 às 5 da manhã), a presença de um engenheiro de rede on-line é bastante alta qualificações. Mas temos pausas curtas na comunicação, como regra, o trabalho pode ser realizado no intervalo de meia hora com um intervalo de até 2 minutos (na prática, geralmente 20 a 30 segundos com o comportamento esperado do equipamento).

No exemplo acima, o cliente C1 ou o cliente C2 você precisará avisar sobre o trabalho com uma interrupção nas comunicações pelo menos três vezes - a primeira vez para executar o trabalho em um POD, no qual um de seus servidores está localizado, na segunda vez - no segundo e na terceira vez - ao alternar equipamentos para serviços DCI.

Alternando canais de comunicação agregados


Por que estamos falando sobre o comportamento esperado do equipamento e como os canais agregados podem mudar com a minimização de interrupções na comunicação. Imagine a seguinte imagem:


Por um lado, o link são os comutadores de distribuição POD - D1 e D2 , eles formam um par MLAG (pilha, fábrica VCS, par vPC), por outro lado, dois links - Link 1 e Link 2 - estão incluídos no par MLAG antigo. switch de agregação A . No lado dos switches, D formou uma interface agregada chamada Port-channel A , no lado dos agregadores, A - interface agregada, chamada Port D-channel .

As interfaces agregadas usam o LACP em seu trabalho, ou seja, os comutadores de ambos os lados trocam regularmente pacotes LACPDU nos dois links para garantir que os links:

  • trabalhadores;
  • .

Ao trocar pacotes em um pacote, o valor de identificação do sistema é transmitido , o que indica o dispositivo em que esses links estão incluídos. Para um par MLAG (pilha, fábrica, etc.), o valor da identificação do sistema para os dispositivos que formam a interface agregada é o mesmo. O switch D1 envia um id do sistema de valores do Link 1 e o switch D2 envia um id do sistema de valores do Link 2 . Os comutadores A1 e A2 analisam os pacotes LACPDU recebidos na mesma interface Po D e verificam se o ID do sistema neles corresponde. Se o ID do sistema recebido por algum link diferir repentinamente do valor atual de trabalho

, esse link será removido da interface agregada até que a situação seja corrigida. Agora vamos mudar para o lado D o valor atual do sistema-id LACP-parceiro - A e interruptores no lado A - o valor do sistema-id atual de LACP-parceiro - D .

Se você precisar mudar a interface agregada, podemos fazer duas maneiras diferentes:

Método 1 - Simples
A. .


N, LACP, Po D N system-id N.



Método 2 - Minimizar a interrupção
2 Link 2. D , .


Link 2 N2. N Po DN, N2 LACPDU system-id N. , N2 , Link 2, Up, LACPDU .


, D2 Po A Link 2 system-id N, system-id A, D Link 2 Po A. N Link 2 , LACP- D2. Link 2 .

Link 1 A1, D . , D system-id Po A.


D N system-id A-N Po A Po DN, Link 2. , , 2 .


Link 1 N1, Po A Po DN. system-id , .



Links adicionais


Mas a troca pode ser feita sem a presença de um engenheiro no momento da troca. Para fazer isso, precisamos pré-estabelecer links adicionais entre os switches de distribuição D e os novos N switches de agregação .


Estamos estabelecendo novos links entre os switches de agregação N e todos os switches de distribuição POD. Isto requer ordem, e colocação de cabos de remendo adicional, e instalar transceptores adicionais em ambos de N , e em D . Podemos fazer isso, pois temos portas livres nos comutadores D de cada POD (ou as liberamos primeiro). Como resultado, cada POD é fisicamente conectado por dois links aos antigos switches A e aos novos switches N.


Duas interfaces agregadas são formadas no comutador D - Po A com os links Link 1 e Link 2 e Po N com os links Link N1 e Link N2 . Nesta fase, verificamos a conexão correta de interfaces e links, os níveis de sinais ópticos em ambas as extremidades dos links (via informações DDM dos comutadores), podemos até verificar a capacidade de trabalho do link sob carga ou monitorar o status dos sinais ópticos e da temperatura do transceptor por alguns dias.

O tráfego ainda é transmitido pela interface Po A , enquanto a interface Po N está livre de tráfego. As configurações nas interfaces são aproximadamente as seguintes:

Interface Port-channel A
Switchport mode trunk
Switchport allowed vlan C1, C2

Interface Port-channel N
Switchport mode trunk
Switchport allowed vlan none

Os comutadores D, via de regra, suportam alterações na configuração da sessão; são usados ​​modelos de comutador que possuem essa funcionalidade. Assim, podemos alterar as configurações das interfaces Po A e Po N de uma só vez:

Configure session
Interface Port-channel A
Switchport allowed vlan none
Interface Port-channel N
Switchport allowed vlan C1, C2
Commit

Em seguida, a alteração da configuração ocorrerá com rapidez suficiente e, na prática, a interrupção não passará de 5 segundos.

Esse método nos permite realizar todo o trabalho preparatório com antecedência, realizar todas as verificações necessárias, coordenar o trabalho com os participantes no processo, prever detalhadamente as ações para a produção do trabalho, sem trabalho criativo, quando “tudo deu errado” e ter em mãos um plano para retornar à configuração anterior. O trabalho nesse plano é realizado por um engenheiro de rede sem a presença de um data center no local do engenheiro que realiza fisicamente a comutação.

O que é mais importante com esse método de alternância - todos os novos links já estão predefinidos para monitoramento. Erros, inclusão de links na unidade, carregamento de links - todas as informações necessárias já estão no sistema de monitoramento e já estão desenhadas nos mapas.

dia D


Pod


Escolhemos o menos doloroso para os clientes e menos propenso ao caminho do switch "algo deu errado" com links adicionais. Por algumas noites, trocamos todos os PODs pelos novos switches de agregação.


Mas resta trocar equipamentos que prestam serviços DCI.

L2


No caso de equipamentos que fornecem conectividade L2, não foi possível realizar um trabalho semelhante com links adicionais. Existem pelo menos duas razões para isso:

  • Falta de portas livres da velocidade necessária nos comutadores VXLAN.
  • Falta de funcionalidade para alterações na configuração da sessão nos comutadores VXLAN.

Não trocamos os links “um de cada vez” com uma interrupção apenas durante a aprovação de um novo par de ID do sistema, pois não tínhamos 100% de confiança de que o procedimento estaria correto, e um teste em laboratório mostrou que, no caso se "algo der errado", ainda temos uma falha na conexão, e o pior não é apenas para clientes que têm conectividade L2 com outros data centers, mas para todos os clientes desse data center em geral.

Realizamos um trabalho de propaganda sobre a mudança dos canais L2 antes do tempo, portanto o número de clientes afetados pelas operações nos comutadores VXLAN já era várias vezes menos que um ano atrás. Como resultado, decidimos interromper a comunicação no serviço de conectividade L2, desde que mantivéssemos a operação normal dos serviços de rede local em um data center. Além disso, o SLA para este serviço prevê a possibilidade de trabalho agendado com uma pausa.

L3


Por que recomendamos que todos comecem a usar o L3VPN ao organizar serviços DCI? Um dos motivos é a capacidade de trabalhar em um dos roteadores que fornecem esse serviço, simplesmente com uma redução no nível de redundância para N + 0, sem interrupção na comunicação.

Considere o esquema de prestação de serviços mais de perto. Nesse serviço, o segmento L2 passa dos servidores clientes apenas para os roteadores L3VPN Selectel. Nos roteadores, a rede do cliente é encerrada.

Cada servidor cliente, por exemplo, S2 e S3 no diagrama acima, possui seus próprios endereços IP privados - 10.0.0.2/24 para o servidor S2 e 10.0.0.3/24 para o servidor S3 . Endereços 10.0.0.252/24 e 10.0.0.253/24atribuído pela Selectel aos roteadores L3VPN-1 e L3VPN-2 , respectivamente. O endereço IP 10.0.0.254/24 é um endereço VIP VRRP nos roteadores Selectel.

Você pode ler mais sobre o serviço L3VPN em nosso blog.

Até o momento da troca, tudo parecia aproximadamente como no diagrama:


Dois routers L3VPN-1 e L3VPN-2 foram ligados ao interruptor de idade agregação Uma . O mestre para os endereços VIP VRRP 10.0.0.254 é o roteador L3VPN-1 . Ele tem prioridade definida nesse endereço mais alta que a do roteador L3VPN-2 .

unit 1006 {
    description C2;
    vlan-id 1006;
    family inet {       
        address 10.0.0.252/24 {
            vrrp-group 1 {
                priority 200;
                virtual-address 10.100.0.254;
                preempt {
                    hold-time 120;
                }
                accept-data;
            }
        }
    }
}

O servidor S2 usa o gateway 10.0.0.254 para se comunicar com servidores em outros locais. Portanto, desconectar o roteador L3VPN-2 da rede (é claro, se você primeiro desconectá-lo do domínio MPLS) não afeta a conectividade dos servidores clientes. Neste ponto, o nível de redundância do circuito simplesmente diminui.


Depois disso, podemos reconectar com segurança o roteador L3VPN-2 ao par de N switches . Disponha os links, troque os transceptores. As interfaces lógicas do roteador, das quais depende o trabalho dos serviços do cliente, até a confirmação de que tudo está funcionando como deveria, estão desativadas.

Depois de verificar os links, transceptores, níveis de sinal, níveis de erro nas interfaces, o roteador entra em operação, mas já está conectado a um novo par de switches.


Em seguida, diminuímos a prioridade VRRP do roteador L3VPN-1 e o endereço VIP 10.0.0.254 se move para o roteador L3VPN-2. Estes trabalhos também são realizados sem interrupção da comunicação.


Transferência de endereço VIP para o roteador 10.0.0.254 L3VPN-2 permite que você desabilite o roteador L3VPN-1 sem interrupção de contato para o cliente e conectá-lo a ter um novo par de agregação muda de N .


A questão de devolver ou não o VRRP VIP ao roteador L3VPN-1 é outra questão e, se você retornar, isso é feito sem interrupção.

Total


Após todas essas etapas, substituímos realmente as opções de agregação em um de nossos data centers, minimizando as interrupções para nossos clientes.


Tudo o que resta é desmontar. Desmontagem de switches antigos, desmontagem de links antigos entre os switches A e D, desmontagem de transceptores desses links, correção de monitoramento, fixação de diagramas de rede na documentação e no monitoramento.

Podemos usar interruptores, transceptores, patch cords, AOC, DAC após a alternância, em outros projetos ou em outras comutações similares.

"Natasha, trocamos tudo!"

All Articles