PSEFABRIC - uma nova abordagem para gerenciamento e automação de rede. Passo para o ideal

Antes de começar


  • tudo o que é discutido aqui é mais relevante para data centers e redes de escritórios
  • será sobre o projeto https://github.com/nihole/PSEFABRIC
  • veja também o artigo que descreve os princípios básicos do PSEFABRIC.

O sistema de gerenciamento de rede ideal


Ouso dizer que, do ponto de vista de gerenciamento e automação, o PSEFABRIC está agora mais próximo do que qualquer outra solução do que poderia ser chamado de "gerenciador de rede ideal".

Se você tem um bom carro, sabe o que é um bom sistema de controle. Você, como usuário, precisa saber apenas como alterar a velocidade e a direção do movimento, e isso e somente isso, em geral, fornece uma interface. Ao mesmo tempo, os carros podem ser diferentes, de diferentes fabricantes, com diferentes soluções técnicas - a interface ainda é a mesma: freio, gasolina e volante (suponha que você tenha uma transmissão automática).

Essa abordagem pode ser transferida para a rede? Em caso afirmativo, qual sistema de controle seria ideal para a rede?

Para responder a essas perguntas, primeiro respondamos à pergunta e quem é o motorista?

As redes, não sendo um “cavalo esférico no vácuo”, não existem por si só, elas existem para um único propósito - a transmissão de dados. E os usuários deste serviço são aplicativos. Todas as necessidades do aplicativo são grades e a conectividade entre elas. Idealmente, o ponto de configuração deve ser o mesmo para toda a rede (e não uma centena de dispositivos de rede diferentes) e a interface deve ser simples e unificada.

E ... é claro, essa é uma tarefa impossível, porque, do ponto de vista da rede, tudo é complicado: centenas de protocolos, tipos de equipamentos, fornecedores, projetos - esse é um oceano de todos os tipos de opções. Como criar um produto com uma interface simples e unificada que leva em consideração toda essa diversidade? É claro que o problema neste formulário não pode ser resolvido.

E, no entanto, agora já podemos dizer que existe uma solução e o PSEFABRIC mostra isso. A tarefa, é claro, precisa ser levemente modificada, mas, felizmente, essa mudança não é significativa.

Declaração do problema


Há duas boas notícias.

A primeira é que, depois de concluir a construção da sua rede e colocá-la em operação, a partir desse momento, o conjunto de tarefas que você executa na rede é bastante reduzido.
Normalmente, as tarefas operacionais são as seguintes:

  • criação / exclusão de uma configuração relacionada à configuração dos protocolos L2 / L3 para conectar dispositivos (redes, wilans, subinterfaces, ...).
    Vou chamá-lo de criação / exclusão de rede.
  • abrir / fechar acesso
  • criação / remoção de servidores virtuais para equilibrar o tráfego

Isso nos dá a oportunidade de alterar o requisito inicial. Não vamos gerenciar todas as operações na rede. Distinguimos várias operações inter-relacionadas, a saber

  • criação de acesso
  • rede (no sentido descrito acima)
  • criação de servidores virtuais para balanceamento
  • ...

A segunda boa notícia é a interface.

O produto Cisco ConfD nos fornece tudo o que precisamos. Usando a linguagem YANG, podemos descrever (e assim criar) praticamente qualquer lógica necessária de nossa interface. Também teremos tudo o que tanto amamos. Aqui estão alguns destes:

  • salvar configuração
  • candidato e versões de configuração em execução (capacidade de confirmação)
  • verificando a sintaxe e a lógica das mudanças
  • reversões
  • AAA
  • configurabilidade via cli, http, rest, netconf, snmp

PSEFABRIC v.010


Nova versão v.010 PSEFABRIC

  • facilita a alternância entre diferentes contextos do projeto
  • É facilmente personalizável para uma ampla variedade de designs, equipamentos e requisitos. Isso é garantido pelas seguintes propriedades PSEFABRIC:
    • projeto p000 , que é um modelo para outros projetos. A abordagem recomendada ao criar um novo projeto é copiar os arquivos desse projeto com as alterações subsequentes
    • Um conjunto de ferramentas para configurar o PSEFABRIC. Nenhuma alteração de código necessária
    • uma metodologia que descreve a sequência de etapas a serem seguidas no processo de implementação desta solução

Quando este artigo foi escrito há um ano, em geral, foi a resposta para a pergunta "isso é possível em princípio?"

O exemplo dado então (agora chamado de projeto p001 ), sendo interessante do ponto de vista de um conjunto de equipamentos (roteadores Cisco, comutadores L3, comutadores, Cisco ASA, Juniper SRX), ainda é um tanto artificial.

A grande vantagem deste projeto (p001) é a presença de um laboratório (UNL), onde você pode "brincar" com as configurações do PSEFABRIC e de todos os equipamentos acima, entender os princípios de operação, os principais pontos da configuração, se familiarizar com as ferramentas de diagnóstico ...

A versão atual do PSEFABRIC (v.010) já é um produto completo. Você pode usar e aplicar na sua rede ou na rede do seu cliente. Para demonstrar a flexibilidade e a força dessa solução, outro projeto foi criado ( p002 ).

Este já é um design de "combate" que você pode aplicar em sua casa ou no cliente. Essa é uma abordagem popular e moderna para a construção de um data center com base em idéias de longa data:

  • Segmentação lógica aninhada
    • dispositivos lógicos (inquilinos ACI, VSYS Palo-Alto, VDCs N7k, ...)
    • Segmentação de roteamento (VRFs)
  • controle de tráfego entre segmentos lógicos em firewalls
  • Nuvem MPLS para conectar data centers

Equipamento: Palo-Alto, Cisco ACI.

Neste vídeo de meia hora , analisamos o exemplo 0 em detalhes. Neste exemplo, usando PSEFABRIC, configuramos o acesso entre os diferentes segmentos de rede do projeto p002, ajustando respectivamente os equipamentos ACI e PA.

Um pouco sobre milagres


Para entender como o PSEFABRIC está mudando o conceito de gerenciamento de rede, aqui estão alguns exemplos.

Vamos começar com coisas conceituais.

  • Flexibilidade Após responder a todas as perguntas do questionário, a configuração do PSEFABRIC para um novo projeto leva de vários dias a várias semanas. Depende muito da rapidez com que você pode criar todos os modelos necessários. Mas, em qualquer caso, três meses parecem bastante realistas para a implementação (junto com o teste) deste sistema. Por exemplo, a configuração do PSEFABRIC para o projeto p002 levou 1 semana. Tendo experiência na criação de um sistema de controle de acesso para a ACI, posso dizer que, mesmo se aumentarmos esse tempo para 6 meses para um projeto complexo, ele ainda será um indicador muito, muito bom.
  • Recuperação de desastres. Você realmente tem uma configuração "operacional" da "rede inteira" em um único arquivo. Você pode aplicá-lo facilmente a novos equipamentos. Mas, curiosamente, você pode até substituir o tipo de equipamento (por exemplo, era o Juniper SRX, mas tornou-se o Palo-Alto FW), alterar as configurações do PSEFABRIC (ou criar um novo projeto com novas configurações) e aplicar a mesma configuração, mas em um novo tipo de equipamento. E realmente parece um milagre, certo?
  • Acesse o log. O problema usual. Se você não fizer logon, muito em breve não entenderá mais onde e o que e quais acessos ainda são necessários, quais estão desatualizados e, em geral, você perde o controle da sua rede. Se você fizer logon, isso leva muito tempo e você nunca tem certeza de que os acessos registrados realmente correspondem à configuração real e, no final, você para de fazê-lo. Aqui você tem a configuração e o logon em uma garrafa.
  • DevOps. A configuração da sua rede agora é um arquivo de texto simples e fácil de ler. Assim, você pode aplicar o desenvolvimento de melhores práticas a alterações na sua rede.
  • NaaS. Você já pensou em como implementar a solução "Rede como serviço"? Agora você tem esta solução com interfaces cli, netconf, REST, HTTP, SNMP.

E alguns exemplos técnicos:

  • Você já tentou responder perguntas como “de onde / de onde estão os acessos de / para tal e tal rede aberta?” Se você possui vários datacenters e os acessos são controlados em uma dúzia de dispositivos diferentes, a resposta a esta pergunta pode ser bastante difícil. No caso do PSEFABRIC, isso é elementar.
  • Alguns fornecedores oferecem soluções convenientes de administração de acesso, como tag no Palo-Alto ou TrustSec na Cisco. A linha inferior é fornecer automaticamente acesso às redes usando tags. No PSEFABRIC, você pode implementar isso para toda a sua rede, independentemente do fornecedor. Soa como um milagre? Na minha opinião sim.
  • Você deseja abrir o acesso de várias redes em que os recursos administrativos estão localizados (sistema de monitoramento, sistemas de backup, ...) a todos os dispositivos de rede e servidores Linux. Geralmente, isso leva ao fato de que você precisa abrir muitos acessos em muitos dispositivos. Um procedimento executável, mas não muito agradável, e é claro que pode haver muitos exemplos. No caso do PSEFABRIC, essa pode ser uma política e, em seguida, o PSEFABRIC determinará onde e quais comandos de configuração devem ser aplicados.

PERGUNTAS FREQUENTES


Mas como isso difere da orquestração regular, por exemplo, usando o Cisco UCSD?
O que há de novo nessa abordagem?

A novidade é que a orquestração geralmente não sabe sobre a configuração da rede e, se forem necessárias informações, a orquestração deve fazer solicitações para equipamentos reais.
Por exemplo, se você excluir um Contrato em uma ACI, o sistema de orquestração precisará passar por todos os EPGs da ACI para encontrar todos os fornecedores e consumidores desse contrato. E pode ser dezenas de milhares de EPGs. E não é apenas sobre desempenho (embora isso também), mas que complica bastante a lógica.

Bem, basta olhar para o capítulo anterior e responder à pergunta, você tem todas essas vantagens em caso de orquestração?

Interessante?


PSEFABRIC é de código aberto com a licença Apache, versão 2.0.

https://github.com/nihole/PSEFABRIC
https://github.com/nihole/PSEFABRIC/wiki
https://github.com/nihole/PSEFABRIC/wiki/Installation

Source: https://habr.com/ru/post/pt431910/


All Articles