Professional Documents
Culture Documents
Devwks 2879
Devwks 2879
DevNet Workshop
Cisco DNA Center as a
Platform
Questions?
Use Cisco Webex Teams (formerly Cisco Spark)
to chat with the speaker after the session
How
1 Open the Cisco Events Mobile App
2 Find your desired session in the “Session Scheduler”
3 Click “Join the Discussion”
4 Install Webex Teams or go directly to the team space
5 Enter messages/questions in the team space
cs.co/ciscolivebot#DEVWKS-2879
© 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 3
BRKRST-2674 Cisco DNA Center Automation
Day0 – DayN
DEVWKS-2424 PnP
Thu 12:50pm Wed 12pm
DEVNET-2877 DNACaaP
Tue 3pm DEVNET-2425 Common Tasks
DEVWKS-2879 DNACaaP Fri 9am
Wed-4pm DEVWKS-2872 Hands on Intent
Tue 1pm
DEVNET-2878 Assurance
Wed 5pm
DEVWKS-2878 Assurance workshop
Wed 9am
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 4
Agenda
• Introduction to Platform
• Hands on
• API Overview
• Enrichment
• Webhook
• Hands On
DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 5
BRKRST-2674 Cisco DNA Center Automation
Day0 – DayN
DEVWKS-2424 PnP
Thu 12:50pm Wed 12pm
DEVNET-2877 DNACaaP
Tue 3pm DEVNET-2425 Common Tasks
DEVWKS-2879 DNACaaP Fri 9am
Wed-4pm DEVWKS-2872 Hands on Intent
Tue 1pm
DEVNET-2878 Assurance
Wed 5pm
DEVWKS-2878 Assurance workshop
Wed 9am
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 6
Some Operational Challenges
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 7
The Journey to Intent-based Networking
Increased
IT Agility
Platforms
Systems
Products
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 8
Initial Platform Capabilities – APIs, Adapters & SDKs
Business and Network Intent APIs
IT and Network
System Process Adapters Application Policy Software Image
Management (SWIM)
Assurance
Network Inventory /
ITSM Wireless Provisioning
Discovery
Plug-n-Play
IPAM Command Runner
Topology
Template Programmer
Reporting
eNFV Provisioning
X-Domain Adapters
User: devnetuser
Password: Cisco123!
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 11
DNA Center Platform ITSM Integration Overview
Northbound
Rest API application
Analytics app
CSV
DaaS Tableau
PDF BI, Reporting app
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
Schedule Flows
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 13
API Overview
Categories
Integration API
• POST /dna/intent/api/v1/update-itsm-problem-details
• POST /dna/intent/api/v1/update-itsm-incident-details
• POST /dna/intent/api/v1/update-itsm-alert-details
Enrichment API
• GET /dna/intent/api/v1/issue-enrichment
• GET /dna/intent/api/v1/device-enrichment
• GET /dna/intent/api/v1/user-enrichment
Assurance API
• GET /dna/intent/api/v1/site-hierarchy?timestamp=
• GET /dna/intent/api/v1/network-health?startTime=&endTime=
• GET /dna/intent/api/v1/client-health?startTime=&endTime=
• GET /dna/intent/api/v1/client-detail?timestamp=&macAddress=<mac>
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 15
To use enrichment API, enable ServiceNow integration
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 16
Issue Enrichment Headers:
entity_type: mac_address
entity_value: c8:4c:75:68:b2:c0
https://dnac/dna/intent/api/v1/issue-enrichment GET
{ "issueDetails" : { "impactedHosts" : [ {
"issue" : [ { "hostType" : "WIRELESS", NOTES:
"issueId" : "AWPuHcxR_Vn43OLUwqf-", "hostName" : "adams-MBP", Entity_type can be issue_id or
"issueSource" : "Cisco DNA", "hostOs" : "Apple-Device",
"issueCategory" : "Onboarding", "ssid" : "sda", mac_address
"issueName" : "wireless_client_onboarding", "connectedInterface" : "Unknown",
"issueDescription" : null, "macAddress" : "00:26:08:E0:F4:97",
"issueEntity" : "Client", "failedAttempts" : 1,
"issueEntityValue" : "00:26:08:E0:F4:97", "location" : {
"issueSeverity" : "HIGH", "siteId" : "305ed723-2e48-499b-a383-49103b15af54",
"issuePriority" : "", "siteType" : "FLOOR",
"issueSummary" : "Wireless client failed to roam (SSID: "area" : "Global",
sda, AP: adam-sda-3802, Band: 5.0 GHz, Site: Global/north "building" : "north sydney",
sydney/level 22) - Failed to authenticate due to Client "floor" : "level 22",
Timeout", "apsImpacted" : [ "CC:16:7E:92:2B:40" ]
"issueTimestamp" : 1528708144081, },
"suggestedActions" : [ { "timestamp" : 1528708144081
"message" : "Verify whether the client software has } ]
gone through a recent update since this may be a recent change }, {
of behavior.", "issueId" : "AWPuG_eH_Vn43OLUwqf7",
"steps" : [ ] "issueSource" : "Cisco DNA",
}, { "issueCategory" : "Onboarding",
"message" : "If the failed attempt is associated with a "issueName" : "wireless_client_onboarding",
client that is located outdoors, consider introducing Low RSSI "issueDescription" : null,
Threshold to the setup since this will force the client to join "issueEntity" : "Client",
an AP with a stronger signal. Also check the AP location for RF "issueEntityValue" : "00:26:08:E0:F4:97",
Issues. Make sure the AP is in client's line of sight.", "issueSeverity" : "HIGH",
"steps" : [ ] "issuePriority" : "",
} ], "issueSummary" : "Wireless client failed to roam (SSID:
sda, AP: adam-sda-3802, Band: 5.0 GHz, Site: Unknown) - Failed
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 17
Device Enrichment Headers:
entity_type: ip_address
entity_value: 10.10.22.74
https://dnac/dna/intent/api/v1/device-enrichment GET
[ { "waasDeviceMode" : null,
"deviceDetails" : { "series" : "Cisco ASR 1000 Series Aggregation Services
"family" : "Routers", Routers",
"type" : "Cisco ASR 1001-X Router", "inventoryStatusDetail" : "
"location" : null, <status>
"errorCode" : null, <general code=\"SUCCESS\"/>
"macAddress" : "00:c8:8b:80:bb:00", </status>",
"role" : "BORDER ROUTER", "collectionInterval" : "Global Default",
"apManagerInterfaceIp" : "", "serialNumber" : "FXS1932Q1SE",
"associatedWlcIp" : "", "softwareVersion" : "16.6.1", NOTES:
"bootDateTime" : "2018-01-11 15:47:26", "roleSource" : "AUTO", Entity_type can be device_id,
"collectionStatus" : "Managed", "hostname" : "asr1001-x.abc.inc",
"interfaceCount" : "12", "upTime" : "150 days, 9:50:00.62",
ip_address, mac_address
"lineCardCount" : "9", "lastUpdateTime" : 1528681048506,
"lineCardId" : "5e1b93c1-bed2-4324-b504-7bd0ed564c6d, "errorDescription" : null,
80781bb5-32b4-415e-96b4-ce580f66ac6e, aae1f793-fd41-420a-ab0e- "locationName" : null,
4a53ead7af08, 6855077f-deab-479d-bafd-630f3f51cf71, a6fabc8d- "tagCount" : "0",
3163-4fcb-b6c0-6244d35f69c5, 3ca823be-2c16-4cc8-b870- "lastUpdated" : "2018-06-11 01:37:28",
5993a53f8c50, 9dd486e6-c3b2-4e33-90dc-8e32c8877892, 375caca8- "instanceUuid" : "5337536f-0bb4-40eb-abd6-676894c9712c",
46da-413a-92af-d019a095ef47, 0cb53bff-e124-430e-a2b1- "id" : "5337536f-0bb4-40eb-abd6-676894c9712c",
4337b5777a47", "neighborTopology" : [ {
"managementIpAddress" : "10.10.22.74", "nodes" : [ {
"memorySize" : "3956371104", "role" : "DISTRIBUTION",
"platformId" : "ASR1001-X", "name" : "cs3850.abc.inc",
"reachabilityFailureReason" : "", "id" : "99b1ec00-3dcb-44b8-9b6e-2ad6fc141f36",
"reachabilityStatus" : "Reachable", "description" : "Switch",
"snmpContact" : "", "deviceType" : "Cisco Catalyst38xx stack-able ethernet
"snmpLocation" : "", switch",
"tunnelUdpPort" : null, <cont>
<cont<
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 18
User Enrichment Headers:
entity_type: mac_address
entity_value: c8:4c:75:68:b2:c0
https://dnac/dna/intent/api/v1/user-enrichment GET
[ { "vlanId" : "1",
"userDetails" : { "ssid" : null, "port" : null
"id" : "C8:4C:75:68:B2:C0", "frequency" : null, },
"connectionStatus" : "CONNECTED", "channel" : null, "connectedDevice" : [ {
"hostType" : "WIRED", "apGroup" : null, "deviceDetails" : {
"userId" : null, "location" : "Sydney/NSD5", "family" : "Switches and Hubs",
"hostName" : null, "clientConnection" : "type" : "Cisco Catalyst 9300 Switch",
"hostOs" : null, "cat_9k_1.abc.inc", "location" : null,
"hostVersion" : null, "connectedDevice" : [ ], "errorCode" : null,
"subType" : "UNKNOWN", "issueCount" : 0, "macAddress" : "f8:7b:20:67:62:80",
"lastUpdated" : 1528484918341, "rssi" : null, "role" : "ACCESS",
"healthScore" : [ { "avgRssi" : null, "apManagerInterfaceIp" : "",
"healthType" : "OVERALL", "snr" : null, "associatedWlcIp" : "",
"reason" : "", "avgSnr" : null, "bootDateTime" : "2018-01-11 14:42:26",
"score" : 10 "dataRate" : null, "collectionStatus" : "Managed",
}, { "txBytes" : null, "interfaceCount" : "41",
"healthType" : "ONBOARDED", "rxBytes" : null, "lineCardCount" : "2",
"reason" : "", "dnsSuccess" : null, "lineCardId" : "1cd043ef-aaf7-4b2e-b720-
"score" : 4 "dnsFailure" : null, 7af782b98b1c, a2b2467b-1692-46d4-8c64-e1765945efc1",
}, { "onboarding" : { "managementIpAddress" : "10.10.22.66",
"healthType" : "CONNECTED", "averageRunDuration" : null, "memorySize" : "889226872",
"reason" : "", "maxRunDuration" : null, "platformId" : "C9300-24UX",
"score" : 6 "averageAssocDuration" : null, "reachabilityFailureReason" : "",
} ], "maxAssocDuration" : null,
NOTES:
"reachabilityStatus" : "Reachable",
"hostMac" : "C8:4C:75:68:B2:C0", "averageAuthDuration" : null, "snmpContact" : "",Entity_type can be mac_address or
"snmpLocation" : "",
"hostIpV4" : "10.10.22.98", "maxAuthDuration" : null,
<cont> network_user_id
"hostIpV6" : [ ], "averageDhcpDuration" : null,
"authType" : null, "maxDhcpDuration" : null,
<cont> "aaaServerIp" : null,
"dhcpServerIp" : null,
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 19
Polling vs Notification
Polling (Pull) Notification (Push)
request
response subscription
30sec
request
DNA DNA
response
Center Center
Application Application
30sec
request
event response
response
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 20
Webhooks
SWIM Events
REST
endpoint
Assurance Issues
CMDB sync
Assurance Issues
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
Q&A
#CLMEL
DevNet Code Exchange
Build your
developer
cred Share
your
code
#CLMel DEVWKS-2879 © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
Complete Your Online Session Evaluation
• Give us your feedback and receive
a complimentary Cisco Live 2019
Power Bank after completing the
overall event evaluation and 5
session evaluations.
• All evaluations can be completed
via the Cisco Live Melbourne
Mobile App.
• Don’t forget: Cisco Live sessions
will be available for viewing on
demand after the event via
https://ciscolive.cisco.com/
#CLMEL © 2019 Cisco and/or its affiliates. All rights reserved. Cisco Public 25
Thank you
#CLMel
#CLMel