Network Automation with Nautobot Adopt a Network Source of Truth and a Data-Driven Approach to Networking

Transform the way your network teams think about and deploy enterprise network automation through the power of Nautobot's open-source platform Key Features Learn how documenting your network in Nautobot can accelerate your network automation journey Apply NetDevOps to your network by leveraging...

Descripción completa

Detalles Bibliográficos
Autor principal: Edelman, Jason (-)
Otros Autores: Matthews, Glenn, VanDeraa, Josh, Celenza, Ken, Adell, Christian, Haas, Brad, Culver, Bryan, Anderson, John, Snider, Gary, Bushong, Mike
Formato: Libro electrónico
Idioma:Inglés
Publicado: Birmingham : Packt Publishing, Limited 2024.
Edición:1st ed
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009825900406719
Tabla de Contenidos:
  • Cover
  • Title Page
  • Copyright and credits
  • Foreword
  • Contributors
  • Table of Contents
  • Preface
  • Part 1: Introduction to Source of Truth and Nautobot
  • Chapter 1: Introduction to Nautobot
  • Introduction to network automation
  • What is network automation?
  • Network automation use cases
  • Why automate your network?
  • Persona-driven network automation
  • Industry trends
  • Understanding SoT
  • Defining SoT
  • Approaches to SoT
  • SoT tools and products
  • Nautobot overview
  • Nautobot use cases
  • Network SoT
  • Network automation platform
  • Nautobot ecosystem
  • Summary
  • Chapter 2: Nautobot Data Models
  • Nautobot data models overview
  • Data model summary
  • Network device inventory data models
  • Devices
  • Device components
  • Device types
  • Manufacturer
  • Roles and statuses
  • Platform
  • Virtual chassis
  • Device redundancy groups
  • Interface redundancy groups
  • Racks
  • Locations
  • Location type
  • Tenants
  • IPAM data models
  • Namespaces
  • Prefixes
  • IP addresses
  • RIRs
  • VRFs
  • Route targets
  • VLANs and VLAN groups
  • Circuits data models
  • Circuits
  • Circuit terminations
  • Circuit types
  • Circuit providers
  • Provider networks
  • Data model extensibility
  • Custom fields
  • Computed fields
  • Relationships
  • Config contexts
  • Custom data models
  • Summary
  • Part 2: Getting Started with Nautobot
  • Chapter 3: Installing and Deploying Nautobot
  • Nautobot architecture overview
  • Installing Nautobot
  • Getting Nautobot up and ready on Ubuntu
  • Installing dependencies
  • Installing the Nautobot application
  • Launching Nautobot
  • Nautobot worker
  • Nautobot web service
  • Running Nautobot as Linux services
  • Loading data into Nautobot
  • Using the graphical user interface
  • Summary
  • Chapter 4: Understanding the User Interface and Bootstrapping Nautobot
  • Understanding the navigation and UI.
  • Navigation menu
  • Nautobot home page and panels
  • Footer navigation
  • Table views
  • Detailed views
  • Managing inventory and bootstrapping your first installation
  • Identifying your data
  • Organizational data
  • Device data
  • Summary
  • Chapter 5: Configuring Nautobot Core Data Models
  • IP address management in Nautobot
  • IP addresses
  • Prefixes
  • Namespaces
  • VRFs
  • VLANs
  • RIRs
  • Configuring IP address management in Nautobot
  • IPAM configuration for Wayne Enterprises
  • Modeling HA and virtual devices
  • Device Redundancy Groups
  • Virtual chassis
  • Key differences between device redundancy and virtual chassis
  • Setting up a firewall redundancy group for Wayne Enterprises in Nautobot
  • Interface Redundancy Groups
  • Cabling and power management
  • Cables
  • Incorporating power management with cabling
  • Power panels
  • Power feeds
  • Understanding the blast radius through comprehensive data
  • Secrets management
  • Why use secrets?
  • Core concepts
  • Secrets versus Secrets Groups in Nautobot
  • Security considerations
  • Accessing secrets in code
  • Nautobot Secrets Providers app (plugin) overview
  • Using Notes, Tags, Changelog, and Filter forms
  • Notes
  • Tags
  • Change log
  • Filter forms
  • Best practices for inventory management
  • Summary
  • Chapter 6: Using Nautobot's Extensibility Features
  • Statuses
  • Managing statuses
  • Applying a status
  • Use cases for statuses
  • Best practices for statuses
  • Tags
  • Managing tags
  • Applying a tag
  • Use cases for tags
  • Best practices for tags
  • Custom fields
  • Managing custom fields
  • Diving into custom field attributes
  • Validation rules
  • Custom field choices
  • Applying a custom field
  • Use cases for custom fields
  • Best practices for custom fields
  • Computed fields
  • Managing and applying computed fields
  • Computed field template context.
  • Use cases for computed fields
  • Best practices for computed fields
  • Custom links
  • Managing and applying custom links
  • Use cases for custom links
  • Best practices for custom links
  • Export templates
  • Default export templates
  • Use cases for export templates
  • Managing and applying export templates
  • Best practices for export templates
  • Config contexts
  • Exploring the config context hierarchy
  • Managing and applying config contexts
  • Use cases for config contexts
  • Config context schemas
  • Git as a data source
  • Managing and applying Git data sources
  • Use cases for data sources
  • Best practices for data sources
  • Relationships
  • Use cases for relationships
  • Managing and applying relationships
  • Creating a relationship
  • Dynamic groups
  • Use cases for dynamic groups
  • Managing and applying dynamic groups
  • Best practices for dynamic groups
  • Summary
  • Chapter 7: Managing and Administering Nautobot
  • Administration with the Admin UI
  • User, group, and permissions management
  • Groups
  • Users
  • Permissions enforcement
  • Exploring Nautobot's settings
  • Understanding setting precedence
  • Setting banner and support messages
  • Adding your company's logos and branding
  • Customizing pagination
  • Preferred primary IP version
  • Handling logs
  • Customizing sanitizer patterns
  • Common settings
  • Advanced settings
  • Setting up and using NAPALM integration
  • Exploring nautobot-server CLI commands
  • Creating a superuser account
  • Exporting and importing data
  • Cleaning up old scheduled jobs
  • Retracing corrupted/missing cable paths
  • Getting help
  • Exploring the Nautobot Shell
  • Working with objects
  • Monitoring Nautobot metrics
  • Upgrading Nautobot
  • Troubleshooting Nautobot
  • Performing a health check
  • Troubleshooting the configuration
  • Debugging Nautobot
  • Summary.
  • Part 3: Network Automation with Nautobot
  • Chapter 8: Learning about Nautobot APIs - REST, GraphQL, and Webhooks
  • Technical requirements
  • Nautobot REST APIs
  • Nautobot's interactive API documentation
  • Understanding Nautobot APIs
  • API authentication
  • Using the API with Python
  • API tips
  • pynautobot
  • GraphQL with Nautobot
  • GraphQL primer
  • GraphiQL
  • GraphQL queries with Python
  • GraphQL versus REST
  • Webhooks
  • Exploring webhooks
  • Example - using a Webhook to trigger an Ansible AWX playbook
  • Summary
  • Chapter 9: Understanding Nautobot Integrations for NetDevOps Pipelines
  • Technical requirements
  • Exploring pynautobot
  • Installing pynautobot
  • Getting started
  • Retrieving objects
  • Updating an object
  • Deleting an object
  • Creating an object
  • Working with Nautobot Apps
  • Using GraphQL with pynautobot
  • Using pynautobot to get the next available IP address
  • Exploring the Nautobot Ansible Collection
  • Installing the collection
  • Reading data with Ansible
  • Ansible write operations
  • Exploring Ansible inventory sources
  • Using Nornir Nautobot
  • Installing Nornir Nautobot
  • Exploring Nautobot Docker containers
  • Exploring the Nautobot Go library
  • Introducing the Nautobot Terraform provider
  • Summary
  • Chapter 10: Embracing Infrastructure as Code with Nautobot, Git, and Ansible
  • Technical requirements
  • Setting up the environment
  • Network topology
  • Linux host
  • Ansible
  • Nautobot
  • The book's Git repo
  • Adding data to Nautobot with Ansible
  • Setting up a dynamic inventory
  • Backing up network devices
  • Performing a config replace with Nautobot, NAPALM, and Ansible on Arista and Juniper devices
  • Performing config changes with Nautobot and Ansible for Cisco IOS devices
  • Performing config changes with Nautobot and Ansible for Cisco NX-OS devices.
  • Managing data with config contexts and using Git
  • Nautobot jobs versus Ansible playbooks
  • Summary
  • Chapter 11: Automating Networks with Nautobot Jobs
  • Technical requirements
  • Nautobot Jobs overview
  • Introduction to the Django ORM
  • Learning about the Nautobot Shell and ORM
  • Reading data
  • Adding and updating data
  • Deleting data
  • Adding Jobs to Nautobot
  • Synchronizing Jobs into Nautobot from a Git repository
  • Distributing Jobs as part of a Nautobot app
  • Mounting or placing Jobs directly in JOBS_ROOT
  • Creating your first Nautobot Job
  • "Hello World" Nautobot Job
  • Breaking down and building a Nautobot Job
  • Adding dynamic dropdowns to your job
  • Using Jobs to populate data in Nautobot
  • Converting Python scripts into Nautobot Jobs
  • Diving into even more Job features
  • Job buttons
  • Job Hooks
  • Job scheduling
  • Job approvals
  • The Jobs API
  • Job permissions
  • Summary
  • Chapter 12: Data-Driven Network Automation Architecture
  • Data-driven network automation architecture
  • Evolution of managed networks
  • Manually managed networks
  • Power tool automated networks
  • Legacy and domain network management managed networks
  • Infrastructure as Code (IaC) automated networks
  • Nautobot automated networks
  • SoT with Nautobot
  • Integrations and extensibility
  • SoT life cycle
  • Nautobot enablers for SoT
  • Automation and orchestration
  • Understanding workflows
  • Nautobot enablers for automation and orchestration
  • APIs - REST, GraphQL, and Webhooks
  • Modern network monitoring - telemetry and observability
  • Data enrichment
  • Data normalization
  • Data collection
  • Closed loop network automation
  • User interactions
  • Summary
  • Part 4: Nautobot Apps
  • Chapter 13: Learning about the Nautobot App Ecosystem
  • Nautobot Apps overview
  • Why Nautobot Apps?
  • Flexibility
  • Access to SoT data.
  • Accelerated development.