Automação de rede com Go

Feb 08 2023
Faz um mês desde que nosso livro foi finalmente publicado. Resumindo, é um livro sobre como automatizar operações de rede e criar aplicativos usando a linguagem de programação Go.

Faz um mês desde que nosso livro foi finalmente publicado. Resumindo, é um livro sobre como automatizar operações de rede e criar aplicativos usando a linguagem de programação Go.

Michael e eu levamos um ano e meio para condensar o que aprendemos sobre automação de rede que parecia não estar documentado em outro lugar.

Usamos o Go para dizer às máquinas o que fazer por nós, então começamos o livro com uma introdução à linguagem a partir das lentes de um engenheiro de rede, para continuar explorando diferentes casos de uso de automação de rede.

Tentamos o nosso melhor para espremer o máximo de conteúdo relevante possível, desde que isso mantivesse o livro amigável para iniciantes. Claro, podemos ter cruzado a linha da complexidade uma ou duas vezes. Vamos desde o básico da linguagem, concorrência e alocação de memória, até o uso de filtros protobuf e eBPF .

Capa do livro Network Automation with Go

Conteúdo

Aqui está um resumo de cada um dos doze capítulos.

  1. Introdução : explora redes e Go, os benefícios de Go e como ele contrasta com Python.
  2. Go Basics : define Go e fala sobre seus princípios orientadores. Ele apresenta a estrutura do arquivo de código-fonte Go e mostra como compilar programas Go.
  3. Getting Started with Go : abrange diferentes características do Go que são relevantes para automação de rede, como fluxo de controle, operações de entrada e saída, decodificação e codificação e simultaneidade.
  4. Networking (TCP/IP) com Go : concentra-se em casos de uso prático com Go para cada camada do modelo TCP/IP.
  5. Automação de rede : discute o que é automação de rede, seu impacto nas operações de rede e seus benefícios para os negócios. Ele também fala sobre o dimensionamento de casos de uso individuais em um sistema de automação de rede.
  6. Gerenciamento de configuração : orienta-nos através de exemplos práticos usando Go para interagir com dispositivos de rede de diferentes fornecedores de rede via SSH e HTTP para configurar e coletar seu estado operacional para verificar quaisquer alterações.
  7. Frameworks de automação : Descreve como alguns frameworks de automação podem se integrar com Go com ênfase em Ansible e Terraform.
  8. APIs de rede : analisa as interfaces máquina a máquina para gerenciar dispositivos de rede que permitem a automação da rede. De RESTCONF e OpenAPI para gRPC.
  9. OpenConfig : examina como executar tarefas operacionais comuns com serviços OpenConfig gRPC, como provisionar um dispositivo, assinar um fluxo de telemetria e executar uma ação como traceroute.
  10. Monitoramento de Rede : Mergulha no mundo do monitoramento de rede de diferentes ângulos com Go; captura de pacotes de rede, processamento de telemetria de plano de dados, execução de sondagens ativas para medir o desempenho da rede e visualização de métricas.
  11. Expert Insights : consiste em pessoas que têm experiência prática no mundo real com automação de rede e/ou estão usando Go para tarefas e atividades relacionadas à rede, compartilhando suas perspectivas conosco.
  12. Apêndice : Construindo um ambiente de teste: documenta o processo de construção de um ambiente de teste que inclui a versão compatível do Containerlab e outras dependências relacionadas, para garantir que você obtenha uma experiência contínua executando exemplos de qualquer capítulo deste livro.

Queríamos garantir que os exemplos de código fossem concisos e simples de seguir, por isso trabalhamos muito para adicionar realce de sintaxe ao livro.

páginas 144–145
páginas 182–183
páginas 190–191
páginas 276–277

Todos os exemplos de código estão disponíveis aqui:

A recepção

Estamos impressionados com a recepção positiva e com o fato de já terem vendido centenas de cópias. Aqui estão algumas reações nas redes sociais.

Não posso agradecer o suficiente aos nossos colaboradores

Desde os primeiros revisores até os colaboradores de código aberto que nos permitiram criar exemplos de código.

Nossos revisores técnicos fenomenais : John McGovern , Chris Luke .

Especialistas que contribuíram com insights para o livro: David Barroso , Stuart Clark , Claudia de Lun a, Alexis de Talhouët , John Doak , Roman Dodin , David Gee , Daniel Hertzberg , Marcus Hines , Sneha Inguva , Antonio Ojea , Matt Oswalt , Carl Montanari , Brent Salisbury , Maximilian Wilhelm .

Engenheiros talentosos que forneceram feedback inicial: Laura Alonso , Daniel Hertzberg , Maximilian Wilhelm .

Criadores de projetos de código aberto: Roman Dodin , Matt Layher , Carl Montanari , Rob Shakir , Jordan Whited .

Onde comprar

  • Amazonas
  • pacote
  • Bookshop.org
  • Barnes & Noble
  • O'Reilly

Quando embarcamos nessa jornada, sabíamos que faríamos isso principalmente para contribuir com a comunidade, mas não posso negar como é legal se tornar um autor (https://www.amazon.com/author/nleiva).

Talvez eu precise encontrar um novo projeto para me manter ocupado no GitHub no futuro. Você provavelmente pode dizer quando terminamos de escrever o livro:

Enquanto isso, voltarei a blogar. Confira meu último post aqui: