YANG

Cursos
Tema: Cursos
Nível de Acesso: fundamentals

Faça Login para Iniciar o Laboratório

Entre com sua conta para ter acesso completo aos nossos laboratórios práticos. Este laboratório requer o plano Fundamentals.

YANG cover

Desenvolvimento de Módulos YANG

Introdução

Antes de começar:

sudo apt update && sudo apt install procps -y && sudo apt install libyang-tools -y

O que você irá aprender

Neste laboratório, você irá desenvolver competências práticas fundamentais para trabalhar com YANG (Yet Another Next Generation), a linguagem de modelagem de dados padrão para configuração e gerenciamento de dispositivos de rede.

Objetivos de Aprendizado

Ao concluir este laboratório, você será capaz de:

  1. Compreender a estrutura de módulos YANG
    - Entender a sintaxe e semântica da linguagem YANG
    - Conhecer os principais elementos: containers, lists, leafs e leaf-lists
    - Trabalhar com namespaces, prefixos e imports

  2. Desenvolver módulos YANG do zero
    - Criar módulos YANG para modelar interfaces de rede
    - Implementar configurações IPv4 em interfaces
    - Modelar dispositivos de rede complexos com ACLs
    - Diferenciar dados de configuração (read-write) de dados operacionais (read-only)

  3. Validar e testar módulos YANG
    - Utilizar ferramentas de validação como pyang e yanglint
    - Interpretar saídas em formato de árvore
    - Identificar e corrigir erros de sintaxe e estrutura

  4. Trabalhar com dados de instância
    - Criar arquivos de dados em JSON e YAML compatíveis com módulos YANG
    - Validar dados de instância contra schemas YANG
    - Converter entre diferentes formatos de dados

  5. Estender módulos existentes
    - Utilizar o comando augment para adicionar funcionalidades
    - Implementar extensões condicionais com when
    - Criar módulos modulares e reutilizáveis

Estrutura do Laboratório

O laboratório está organizado em 4 exercícios progressivos:

  • Exercício 1: Módulo IETF Interfaces (básico)
  • Exercício 2: Módulo Device com ACLs e Interfaces (intermediário)
  • Exercício 3: Criação e Validação de Dados de Instância
  • Exercício 4: Augmentação de Módulos (avançado - bônus)

Ferramentas Utilizadas

  • pyang: Validação e visualização de módulos YANG
  • yanglint: Validação de dados de instância
  • yang2dsdl: Conversão e validação de dados

Como Navegar

Acesse a pasta tasks/ para encontrar as instruções detalhadas de cada exercício:

  • Exercício 1: Módulo IETF Interfaces
  • Exercício 2: Módulo Device (ACLs e Interfaces)
  • Exercício 3: Criação de Dados de Instância
  • Exercício 4: Augmentação de Módulos (Bônus)

As soluções completas estão disponíveis na pasta solutions/ para consulta após completar cada exercício.


Comandos Úteis do Pyang

# Visualização em árvore
pyang -f tree module.yang

# Validação de sintaxe
pyang module.yang

# Geração de esquema JSON
pyang -f jsonschema module.yang -o module.jsonschema

# Geração de documentação HTML
pyang -f jstree module.yang -o module.html

# Verificar dependências
pyang --print-depends module.yang

# Visualização detalhada com tipos
pyang -f tree --tree-print-types module.yang

Tarefas (0)

Sem tarefas disponíveis.