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/PSEFABRIChttps://github.com/nihole/PSEFABRIC/wikihttps://github.com/nihole/PSEFABRIC/wiki/Installation