O documento apresenta uma solução chamada PipeConf para automatizar a configuração de ativos de rede heterogêneos usando a abordagem de infraestrutura como código. A solução integra diferentes ferramentas como SaltStack, Jenkins e Gogs para permitir o cadastro, versionamento, backup e atualização das configurações dos dispositivos de rede de forma automatizada. O documento descreve a arquitetura, fluxos de trabalho e funcionalidades da solução proposta.
2. Sobre mim...
● Cloud Architect
● Mestrando em Tecnologia da Informação
○ Orientador: Dr. Paulo Ditarso
○ Coorientador: Dr. Diego Pessoa
● Contribuidor com código/documentação em projetos open source:
○ Zabbix-BR
○ VictoriaMetrics (Helm Charts)
○ Sensedia-OpenTools
○ Descomplicando o Kubernetes
○ Cetic/Helm-Zabbix
● Autor nos livros:
aeciopires.com
@aeciopires
linkedin.com/in/aeciopires
github.com/aeciopires
3. 3
Introdução
A Cultura DevOps
Mudando o Paradigma
Infrastructure as Code
Sobre a Pesquisa
Motivação e Descrição do Problema
Objetivos da Pesquisa
Solução Proposta
Arquitetura da Solução
Justificativa das Ferramentas
Fluxo de Trabalho
Funcionalidades
Sugestões de Uso
Continuação da Pesquisa
Contribuições da Pesquisa
Agenda
4. Palestra: A relação entre o ágil e o DevOps
Marcell Castelo Branco https://www.youtube.com/watch?v=XrRrc37lUzk
Palestra: O poder da abstração: desafios técnicos e culturais do “Ops” para o DevOps
Daniel Requena https://t.co/soyugYTeC3
4
A Cultura...
11. 11
“Abordagem que usa técnicas, práticas e
ferramentas do mundo do desenvolvimento de
software, isto permite que ações sejam
corretamente testadas antes de serem
aplicadas em áreas críticas de nossa
organização.”
Infrastructure as Code - IaC
12. 12
“Ao tratar IaC da mesma forma que tratamos
software, podemos pensar em versionamento,
integração contínua, refatoração, programação
em pares, testes, dentre outras técnicas para
desenvolver a nossa infra.”
Infrastructure as Code - IaC
13. 13
Introdução
A Cultura DevOps
Mudando o Paradigma
Infrastructure as Code
Sobre a Pesquisa
Motivação e Descrição do Problema
Objetivos da Pesquisa
Solução Proposta
Arquitetura da Solução
Justificativa das Ferramentas
Fluxo de Trabalho
Funcionalidades
Sugestões de Uso
Continuação da Pesquisa
Contribuições da Pesquisa
Agenda
14. Motivação e Descrição do Problema
● TI como ferramenta para o sucesso do negócio;
● O gerenciamento da configuração muitas vezes é realizado de forma manual;
○ Processo de alteração/reversão de configurações é difícil e demorado;
○ Maior risco de indisponibilidade (impacto no negócio);
○ Maior risco de erros de configuração;
○ Ausência de rastreabilidade;
○ Escalabilidade difícil.
14
15. Motivação e Descrição do Problema
● Heterogeneidade dos ativos de rede;
● Infraestrutura como código (IaC);
○ Nem todos se adaptaram;
○ Várias ferramentas com linguagem própria e curva longa de aprendizado;
○ Poucas ferramentas conseguem lidar com a heterogeneidade dos ativos.
15
16. Objetivos da Pesquisa
Questão da Pesquisa:
“Como integrar, de maneira eficiente e eficaz, diferentes softwares para
realizar a automação da configuração de uma infraestrutura de ativos de
rede?”
Objetivos específicos da pesquisa:
● Identificar trabalhos relacionados;
● Propor e implementar uma solução;
● Implementar uma prova de conceito;
● Avaliar a utilização da solução proposta;
● Reportar os resultados obtidos na pesquisa.
16
17. 17
Introdução
A Cultura DevOps
Mudando o Paradigma
Infrastructure as Code
Sobre a Pesquisa
Motivação e Descrição do Problema
Objetivos da Pesquisa
Solução Proposta
Arquitetura da Solução
Justificativa das Ferramentas
Fluxo de Trabalho
Funcionalidades
Sugestões de Uso
Continuação da Pesquisa
Contribuições da Pesquisa
Agenda
18. Solução Proposta
PipeConf: é uma solução integrada de software que proporciona a automação
da configuração de ativos de rede (switches e roteadores) de diferentes
modelos e fabricantes, utilizando uma abordagem de infraestrutura como
código.
Escopo de execução da solução:
● Switches e roteadores em redes LAN;
● MAN e WAN (viável se houver conectividade entre os ativos e o PipeConf).
18
19. Versionamento
(MV)
Integração Contínua (MIC)
Gerência de Configuração
(MGC)
Notificações (MN)
Plano de Dados Plano de Controle
Tráfego HTTP ou HTTPS ou SSH
(varia de acordo com a configuração do serviço de
versionamento de código)
Comandos Shell Bash
Tráfego SSH ou Telnet ou HTTP ou HTTPS (varia de acordo com
o protocolo de acesso remoto suportado pelo dispositivo)
Tráfego SMTP ou HTTP (varia de acordo com o protocolo
suportado pelo serviço de notificação)
Interação Humana
Arquitetura da Solução
19
Figura 3 – Arquitetura do PipeConf. Fonte: Elaboração própria.
20. Seleção das Ferramentas
● As ferramentas foram selecionadas inicialmente com base em
conhecimento prévio;
● Dentre as ferramentas semelhantes foram selecionadas:
○ Viáveis de serem instaladas em ambientes on-premise;
○ Utilizam menos recursos de CPU e memória.
20
21. Fluxo de Trabalho: Cadastro dos equipamentos
21
Tráfego HTTP ou HTTPS ou SSH
(varia de acordo com a configuração do serviço de
versionamento de código)
Comandos Shell Bash
Tráfego SMTP ou HTTP (varia de acordo com o protocolo
suportado pelo serviço de notificação)
Interação Humana
1
3
Gogs
Sops encripta o
arquivo
2
4 Jenkins
Figura 6 – Fluxo de trabalho para cadastro dos ativos de rede. Fonte: Elaboração própria.
22. Salt-SProxy
+
Napalm
1
2
Sops decripta os
arquivos
3
4
5
7
Gogs
Sops encripta os
arquivos
6
8
Jenkins
22
Fluxo de Trabalho:
Backup das Configurações
Tráfego HTTP ou HTTPS ou SSH
(varia de acordo com a configuração do serviço de
versionamento de código)
Comandos Shell Bash
Tráfego SSH ou Telnet ou HTTP ou HTTPS (varia de acordo com
o protocolo de acesso remoto suportado pelo dispositivo)
Tráfego SMTP ou HTTP (varia de acordo com o protocolo
suportado pelo serviço de notificação)
Interação Humana
Figura 7 – Fluxo de trabalho para backup de configuração dos ativos. Fonte: Elaboração própria.
23. Salt-SProxy
+
Napalm
1 7
Sops decripta os
arquivos
3
4
5
2
Gogs
Sops encripta os
arquivos
6
8
cd
ls –l
du –sh
free –m
df –h
cd /tmp
Tráfego HTTP ou HTTPS ou SSH
(varia de acordo com a configuração do serviço de
versionamento de código)
Comandos Shell Bash
Tráfego SSH ou Telnet ou HTTP ou HTTPS (varia de acordo com
o protocolo de acesso remoto suportado pelo dispositivo)
Tráfego SMTP ou HTTP (varia de acordo com o protocolo
suportado pelo serviço de notificação)
Interação Humana
Jenkins
23
Fluxo de Trabalho:
Atualização das
Configurações
Figura 8 – Fluxo de trabalho para atualização das configurações. Fonte: Elaboração própria.
25. Possibilidades de Uso
● Ambientes de produção de empresas e organizações;
● Demonstrações relacionadas à gerência de uma rede;
● Apoio ao ensino em laboratórios.
25
26. 26
Introdução
A Cultura DevOps
Mudando o Paradigma
Infrastructure as Code
Sobre a Pesquisa
Motivação e Descrição do Problema
Objetivos da Pesquisa
Solução Proposta
Arquitetura da Solução
Justificativa das Ferramentas
Fluxo de Trabalho
Funcionalidades
Sugestões de Uso
Continuação da Pesquisa
Contribuições da Pesquisa
Agenda
27. 27
Contribuições da Pesquisa até o Presente Momento
● Revisão sistemática da literatura na área de IaC para identificar e analisar os principais trabalhos
relacionados;
● Proposta de solução integrada para configuração automatizada de ativos de rede heterogêneos;
● Definição de arquitetura e implementação de ferramenta;
● Propostas de validação quantitativa e qualitativa da solução integrada, segundo critérios de
eficiência e eficácia;
● Foi patenteado o fluxo de trabalho do PipeConf como modelo de utilidade no INPI sob o número
BR202019017745-0;
● Foi registrado o código fonte da solução no INPI sob o número BR512019001905-9.