0% found this document useful (0 votes)
4 views41 pages

Devnet 1458

The document discusses the integration of Terraform with Cisco's Catalyst 9000 switches and ThousandEyes for enhanced application hosting and network visibility. It outlines the benefits of Infrastructure as Code (IaC), the capabilities of ThousandEyes for monitoring digital experiences, and the steps to deploy ThousandEyes agents using Terraform. The presentation emphasizes automation, cost reduction, and improved network performance diagnostics in a multicloud environment.

Uploaded by

kayudo80
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views41 pages

Devnet 1458

The document discusses the integration of Terraform with Cisco's Catalyst 9000 switches and ThousandEyes for enhanced application hosting and network visibility. It outlines the benefits of Infrastructure as Code (IaC), the capabilities of ThousandEyes for monitoring digital experiences, and the steps to deploy ThousandEyes agents using Terraform. The presentation emphasizes automation, cost reduction, and improved network performance diagnostics in a multicloud environment.

Uploaded by

kayudo80
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Terraform: ThousandEyes on

Catalyst 9000 Switches

Robert Csapo, Product Manager – Catalyst 9000 Switching


@robertcsapo

DEVNET-1548
• Infrastructure as Code
• Application Hosting on
Catalyst 9000
• ThousandEyes

Agenda • Terraform
• Deploy ThousandEyes on
Catalyst 9000

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 3
ROBERT CSAPO

❖ Product Manager for Catalyst 9000 Core Switches


❖ More than 10 years at Cisco
❖ Cisco Certified: DevNet Associate/Professional
❖ Passionate about simplifying and automation
❖ From Stockholm, Sweden

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 4
Applications live in a multicloud and distributed world
Devices and things

IaaS
WAN SaaS

Mobile users Campus and branch users

Data center/
private cloud

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 5
Infrastructure as Code (IAC)
Help to reduce Cost, increase Speed, and minimize Risk

User Tool Code Infrastructure


Version Control Automation Software Templates/Plugins Platforms

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 6
Application Hosting on Catalyst 9000
Enables hosting docker containers and third-party apps

x86 CPU Linux-based OS Memory/Storage


Cisco Application Framework (IoX)
IOS XE
Docker Container Enterprise Application
CLI/YANG
Cisco IOS XE Kernel
DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 7
Network Visibility for the Applications
Cisco ThousandEyes

Proactively diagnose
network issues that affect
customer experience
Extending Root Cause Analysis
(MTTI/MTTR) for network & internet
related problems

Extending our coverage and root cause


analysis for Enterprise Collaboration
and Productivity SaaS Applications

Monitor & troubleshoot connectivity


and network performance to IaaS,
PaaS services, whilst understanding 3rd
party service dependencies

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 8
Public Internet – no longer a black box

Data
Center
End User Device
Branch Offices

Datacenter

Enterprise SD-WAN Internet Cloud

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 9
What is ThousandEyes?
ThousandEyes is a Digital Experience Monitoring SaaS platform to see, understand, and improve digital experiences of
customers and employees over any network. We offer a distribution of global vantage points from where users can run a
variety of tests.

Cloud Agent Enterprise Agent Endpoint Agent


Globally distributed agents installed Lightweight software-based agents, easily installed on Lightweight service installed on
and managed by ThousandEyes in your own network, provide visibility from within the end-user laptops and desktops
800+ cities. enterprise campus, data centers, cloud VPCs/VNets, that provides proactive and
real-time monitoring of
and branches.
application experience and
Supports active monitoring, SNMP-based monitoring,
network connectivity
and topological mapping of internal network devices.
Enterprise Agent is applicable to Enterprise Infra Hardware

External Vantage Points Internal Vantage Points End-User Experience

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 10
Terraform is…
Terraform uses the RESTCONF API

Open-source Infrastructure as Code (IaC) Software Tool


providing a consistent CLI workflow to manage hundreds
of cloud services. Terraform codifies cloud APIs into
declarative configuration files.

• Cloud Native Tooling circa 2014 from


HashiCorp
• Agentless, single binary file
• Zero server-side dependencies

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
Why Terraform with Catalyst 9000 Switches?
Terraform is a single tool that is used to configure networks and applications Cisco Catalyst 9300X IOS XE
RESTCONF / YANG
Now support for Terraform with IOS XE is being introduced

IPSEC crypto tunnel configuration

Cisco
vManage TLS Cisco Catalyst
Center
Users Terraform (.tf) Terraform
Plan Execution File

Compute and VPC, application,


network configuration, transit
gateway

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
Terraform with Cisco Application Hosting

Terraform Registry GitHub Examples Terraform CLI

Plan
Apply

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 13
Terraform with multiple providers
End-to-End deployment with Cisco ThousandEyes

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 14
Getting started
with Terraform
Install Terraform

macOS CentOS/RHEL Windows

CLI

More details [Link]

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
Code in Terraform language

Terraform Provider
Download from the Terraform Public Registry

Terraform Provider Settings


Cisco IOS XE RESTCONF

Terraform Variables

Application Settings

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 17
Initialize Terraform
$ terraform init

The folder with all the .tf files

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 18
Deploy ThousandEyes Agent
on Catalyst 9000 switches
Prerequisites for Terraform
With Catalyst 9000 and ThousandEyes

Catalyst 9000 Switching Series Cisco ThousandEyes


Catalyst 9300/9400 Activate the Dashboard
Cisco IOS XE 17.8.1+ Enterprise Agents
RESTCONF enabled Account Token
Cisco DNA Advantage Internet Access
Application Hosting HTTPS access
ThousandEyes Agent

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 20
Download the examples from Github

Link

Edit the files


Catalyst 9300/9400 Config
ThousandEyes Account Token

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
ThousandEyes Token
[Link]

Terraform Config

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 22
Terraform Cloud

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 23
Plan and Apply using Terraform
$ terraform plan $ terraform apply
Preview of the configuration Deploying the configuration

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
ThousandEyes Dashboard

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 25
Application Monitoring
Network Visibility using Cisco Catalyst 9000 and Cisco ThousandEyes

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 26
Web performance monitoring
Page load test view
• Web tests: HTTP, page load, transaction
• Monitor and validate web applications’
usability and performance, including SaaS and
internally-hosted apps​
• HTTP Server Test
• Measure availability, response time
and throughput of an HTTP service​
• Page Load Tests​
• Measure page load times of
individual web components using waterfall analysis
• Transaction Tests​
• Monitor application usability by emulating
user journey through an app with multi-
step transactions scripts​
• Validate third-party API performance and
application logic of complex workflows

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 27
Demo Deployment
Using Terraform
Demo: Terraform Cloud – ThousandEyes- Catalyst 9000

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 29
Automation using
CI/CD Pipeline
DevOps NetDevOps
Version
Control Functional
Testing

Code
Build
Diagnostics
Testing

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 31
Network as Code with NetDevOps
Branch Branch
iot_vrf iosx174

Ready for production

Branch
main
Branch
vlan-guest-service

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 32
GitLab PipeLine

1 2 3

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 33
GitLab Pipeline Execution of Terraform

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 34
ThousandEyes Agents in the Dashboard

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 35
Terraform Destroy through GitLab Pipeline

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 36
Key Takeaways
Infrastructure as Code with Catalyst 9000
GitHub with Examples
Hardware

Monitoring

Automation

More information about Cisco Application Hosting


[Link]

DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 38
DEVNET-1458 © 2024 Cisco and/or its affiliates. All rights reserved. Cisco Public 39
Thank you

You might also like