《从点击操作到 GitOps - 思科 DNA 中心基础设施即代码使用案例.pdf》由会员分享,可在线阅读,更多相关《从点击操作到 GitOps - 思科 DNA 中心基础设施即代码使用案例.pdf(93页珍藏版)》请在三个皮匠报告上搜索。
1、#CiscoLive#CiscoLiveGabi Zapodeanu,Technical Marketing EngineerzapodeanuDEVNET-2739Cisco DNA Center Infrastructure-as-Code Use CasesClickOps to GitO https:/YouT 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveEnter your personal notes hereCisco Webex App Questions?Use Cisc
2、o Webex App to chat with the speaker after the sessionFind this session in the Cisco Live Mobile AppClick“Join the Discussion”Install the Webex App or go directly to the Webex spaceEnter messages/questions in the Webex spaceHowWebex spaces will be moderated by the speaker until June 9,2023.12343http
3、s:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicDEVNET-27393Agenda 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicCisco DNA Center PlatformInventory Collection Python SDKTemplates Sync-TerraformDevice Configuration AnsibleGitHub SecurityDeveloper ResourcesLesso
4、ns LearnedDEVNET-27394Agenda 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicCisco DNA Center PlatformInventory Collection Python SDKTemplates Sync-TerraformDevice Configuration AnsibleGitHub SecurityDeveloper ResourcesLessons LearnedDEVNET-27395 2023 Cisco and/or its affiliates.All
5、 rights reserved.Cisco Public#CiscoLiveCisco DNA Center PlatformCisco Physical and Virtual InfrastructureCisco Physical and Virtual InfrastructureCisco DNA Center PlatformCisco DNA Center PlatformREST APIsREST APIsEventsEventsReportsReportsInfrastructureInfrastructure-asas-CodeCodeInfrastructure pro
6、visioning,workflow automation and network managementIntegrationsIntegrationsCisco SpacesCustom IntegrationsCustom IntegrationsNetwork InsightsNetwork InsightsManagedServicesEducationHospitalityHealthcareManufacturingRetailWorkplacesDevOps ToolsDevOps ToolsDEVNET-27396 2023 Cisco and/or its affiliate
7、s.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center PlatformCisco Physical and Virtual InfrastructureCustom IntegrationsThird Party IntegrationsCisco IntegrationsDevOpsToolsREST APIsREST APIsWebhooksWebhooksInfrastructure as CodeDEVNET-27397 2023 Cisco and/or its affiliates.All rights reser
8、ved.Cisco Public#CiscoLiveCisco DNA Center Platform OverviewNorthbound REST APIsEvent NotificationsIT Ecosystem IntegrationsDeveloper ResourcesAssurance IssuesAI/ML InsightsSystem Health Integration ConnectivityLicense ManagementWebhooksPagerDutyWebexSyslogSNMPNetwork InventoryNetwork TopologyNetwor
9、k DesignProvisioningSWIM,PnPPath TraceAssuranceSDATemplatesRMAConfig ArchiveSensorsSample Code,VideosPython SDK,Ansible,TerraformCisco DevNetSandboxes,Learning LabsDeveloper GuidesSample CodeIT Service ManagementIP Address ManagementReportingWireless PlanningIncident Response SIEM,SplunkDEVNET-27398
10、 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveDNA Center Platform Overview9DEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveDNA Center Platform Developer ToolkitTryTryCall an API without writing any code 10DEVNET-2739Review API docs
11、,configure integration workflows and subscribe to events 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveTry an API CallDEVNET-273911 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCode PreviewDEVNET-273912Code PreviewCode PreviewGenerate code i
12、n few programming languages 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center and DevOps JourneyAd-hoc ScriptingEngineers run scripts and tools using Cisco DNA Center APIs and device APIsRe-usable FrameworksCentrally managed repos and templates to accelerate
13、 service delivery,and workflow automationsService OrchestrationIntent-based networks,automation in one place,across multiple domains,out-of-box integrationsBusiness ProcessBusiness-level intent,executive dashboards,fully customizable integrations with ITSM,asset management and business applicationsB
14、usinessAppsValueScaleDEVNET-273913 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveGitOps for Cisco DNA Center?GitOps uses Git repositories as a single source of truth to deliver Infrastructure-as-Code:Automations and integrations appsIntent-based configurations documented
15、 as codeInventories:clients,devices,sites,fabricsCode changes,intent configurations,and network state are tracked,and version controlledConsistency across Cisco DNA Center clusters and IT teamsEnhanced security and visibility,robust role-based access14DEVNET-2739 2023 Cisco and/or its affiliates.All
16、 rights reserved.Cisco Public#CiscoLiveGit Configurations+InventoriesCLI templates and profilesNetwork settingsSDA-as-Code configurationsCustom events notifications and subscriptionsReports and inventoryCompliance15DEVNET-2739ServicesServicesLayerLayer Simplified at-scale network management Consiste
17、nt and efficient service delivery across clustersNotes:Notes:Configurations may be CLI templates,profiles,or YAML/JSON intent configurationsInventory files enable time travel,changes,reporting 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive16GitHub Diffs Configuration and
18、 Inventory State DEVNET-2739CLI Templates changes:csr_logging-logging buffered command changed Intent changed template removedDevices deleted from Cisco DNA Center Inventory:NYC-ACCESSNYC-RO 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center GitOpsInventory C
19、ollectionInventory CollectionPython SDK:Python SDK:Collect and parse the device inventory from Cisco DNA CenterCreate these files:Devices and AP lists,non-compliant devicesFiles saved in JSON,YAML formatsPushed to GitHub and saved locallyNetwork Engineer+DevOps Network Engineer+DevOps create automat
20、ion workflows:Device inventoryAnsible playbooksTerraform plansIntent configurationsAll workflows are pushed to GitHubAlways upAlways up-toto-date date inventory and Apps inventory and Apps code,hosted on code,hosted on GitHubGitHubNetwork engineers Network engineers run the same run the same automat
21、ions written automations written using Python SDK,using Python SDK,Ansible and Ansible and TerraformTerraformConsistent Consistent outcomes,validated outcomes,validated and secureand secureTemplates SyncTemplates SyncTerraform Plan:Terraform Plan:Pull GitHub repo with CLI templates,create or update
22、them on Cisco DNA CenterIdentify when templates changes or new/removed templatesTerraform plan pulled from GitHubDevice ConfigurationDevice ConfigurationAnsible Playbook:Ansible Playbook:Git pull,or clone,the repos with device inventory and deployment templateApply filter to select devices to be con
23、figuredIdentify if devices are managed and reachableDeploys existing CLI Templates,checks statusCreates deployment status reportDEVNET-273917Agenda 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicCisco DNA Center PlatformInventory Collection Python SDKTemplates Sync-TerraformDevice
24、Configuration AnsibleGitHub SecurityDeveloper ResourcesLessons LearnedDEVNET-273918 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveAutomation Workflow:Inventory CollectionInventory CollectionDEVNET-273919Inventory FilesWill collect rich device information and topologyMay
25、run on-demand,or scheduledInventory files:Pushed to GitHubSaved locallyFormatted:JSON,YAML,CSV,Always up-to-date inventory 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLivehttps:/dnacentersdk.readthedocs.ioPython SDKCisco DNA Center Version Support 1.2.10 to 2.3.5.xhttps:/
26、all Cisco DNA Center REST APIsSupport for Cisco DNA Center version 2.3.5.xFirst SDK version August 2019Downloads last month 3,500+20DEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCalling Cisco DNA Center REST APIsDEVNET-273921Obtain the auth token:URL,headers
27、request/response,params,parsing infoGet the device list using the API pagination 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center+credentialsGet the device countGet the device list usingAPI paginationCalling Cisco DNA Center REST APIs Python SDKAccelerates
28、and simplifies apps developmentDeveloper focus on the use case,and not each API callDEVNET-273922 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveHow to Use the Python SDKIntegrated Development Environment(IDE)23DEVNET-2739 2023 Cisco and/or its affiliates.All rights reser
29、ved.Cisco Public#CiscoLiveInventory CollectionParse the device informationGet the device countGet the device listSpecify the Cisco DNA CenterYAML and JSON formatted files saved locally and pushed to GitHubDEVNET-273924 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveSample
30、 Inventory FilesNotes:Notes:Data format-JSON,YAML,Files saved locallyGitHub push create or update inventory files“device_inventory.json”“non_compliant_devices.yaml”DEVNET-273925DemoInventory Collection 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveDEVNET-273927Agenda 202
31、3 Cisco and/or its affiliates.All rights reserved.Cisco PublicCisco DNA Center PlatformInventory Collection Python SDKTemplates Sync-TerraformDevice Configuration AnsibleGitHub SecurityDeveloper ResourcesLessons LearnedDEVNET-273928 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#C
32、iscoLiveAutomation Workflow:GitHub SyncTerraform PlanGitHub Repo-TemplatesPull from GitHub the desired state for Cisco DNA Center configured templatesIdentify if templates are new,exist,or changedUpdate or create templatesDEVNET-273929 2023 Cisco and/or its affiliates.All rights reserved.Cisco Publi
33、c#CiscoLiveTerraform Use CasesThis presentation will focus on a manage network infrastructure use case,calling the Cisco DNA Center REST APIs DEVNET-273930 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveHCLHCL(HashiCorp Configuration Language)-Establishes the syntax Terra
34、form uses for things like arguments,blocks,literal values,and expressions,and writing plans.ProviderProvider Plugins responsible for understanding API interactions with other platforms and exposing resources based on their APIs.Data Source Data Source Allows Terraform to use(read)information defined
35、 outside of Terraform.Example:providers,local-only.ResourceResource-Are the most important element in the Terraform language.Each resource block describes one or more infrastructure objects devices,interfaces,operations.Terraform One SlideInitInit-The command is used to initialize a working director
36、y containing Terraform configuration files.This is the first command that should be run,and it is safe to run this command multiple times.It will install the required providers and modules.PlanPlan-compares the managed infrastructure state to the configuration,and it determines which changes are nec
37、essary.It presents a human-readable summary to the user.ApplyApply Makes changes to real infrastructure in order to make it match the desired state.It may use saved plans or creates a new plan and asks for approval.Ref:https:/www.terraform.io/docsDEVNET-273931 2023 Cisco and/or its affiliates.All ri
38、ghts reserved.Cisco Public#CiscoLiveTerraform Provider and Go SDKhttps:/registry.terraform.io/providers/cisco-en-programmability/dnacenterExtended coverage of Cisco DNA Center REST APIsSupport for Cisco DNA Center version 2.3.5.3Released January 202119,600+downloads32DEVNET-2739https:/ 2023 Cisco an
39、d/or its affiliates.All rights reserved.Cisco Public#CiscoLiveTerraform Installation of the Open-Source Edition33DEVNET-2739https:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center Terraform Provider InstallationNote:Note:Instructions to get started with Ci
40、sco DNA Center Terraform Providerhttps:/ creating a planRun command:“terraform init”It will download the latest Cisco DNA Center provider version 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive35Cisco DNA Center Terraform Provider DocsDEVNET-2739Select the data-source or
41、resourceSearch for API resourceUse the sample code 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center and credentialsSelect the provider version and sourceCall the data source to retrieve the project id for specified project36Calling Cisco DNA Center REST API
42、s TerraformDEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive37GitHub Desired State-Project Info and TemplatesDEVNET-2739project_info.jsonCisco DNA Center Project NameTemplates details data structure mapKeys no significance,must be unique.Used only for looping in
43、 Terraform.I used a“t”+number.Values repo file names,matching the Cisco DNA Center template namesswitches_aaaswitches_loggingNote:Note:The Plan will configure/update Cisco DNA Center CLI templates in the project“GitOps_Project”.Design a data model that will support the tools using the data,in this c
44、ase Terraform 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveTemplate Sync Plan ProvidersSpecify the Cisco DNA Center and GitHub ProvidersDefine variablesDEVNET-273938 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveTemplate Sync Plan Git PullGi
45、t pull CLI templates repo and save files locallyParse the info and select project nameDEVNET-273939 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveTemplate Sync Plan Create/Update Cisco DNA Center TemplatesConfigure Cisco DNA CenteraccessRetrieve the Cisco DNA Center proj
46、ect Id for the project with the nameDEVNET-273940Use a“for_each”meta-argument to call the”create_template”module.It will create,update,or delete Cisco DNA Center templates.2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive41Terraform Modules and Meta-ArgumentsDEVNET-2739A re
47、source or data resource configures or reads one objectA module block includes all modules configuration tasks one timemain.tfmodulemain.tfmain.tfA for_each for_each meta-argument executes all modules tasks for each member in the map.Most of Cisco DNA Center automations are better suited to use for_e
48、ach,not count meta-argumentproject_info_json 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive42Template Sync Plan Create Template ModuleDEVNET-2739Call the”create_template”module for each template to be created or updatedProvide the input params to the moduleNote:Note:Reco
49、rds to be created,updated or destroyed are different,not similar.Use“for_each”,not“count”meta-argument to call the module.Ref.:https:/ create_templateInput paramsCreate or update template 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveInitialize the Terraform Working Dire
50、ctoryTerraform Init CommandThe first command to run after writing the planInitialize the working directorySafe to run the command multiple timesTerraform Steps:Initialize the code and download providersReview the proposed changesApply changes if approvedDEVNET-273943 2023 Cisco and/or its affiliates
51、.All rights reserved.Cisco Public#CiscoLive44Create Execution PlanDEVNET-2739Terraform Plan CommandReads existing stateCreates execution planAllows the preview of changesTerraform Steps:Initialize the code and download providersReview the proposed changesApply changes if approvedOutputs:Templates to
52、 be created or updated 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive45Plan ExecutionDEVNET-2739Terraform Apply CommandCreates execution planMay used saved plan,or use“auto-approve”Parameters could be providedWill return outputs with what was changedTerraform Steps:Initi
53、alize the code and download providersReview the proposed changesApply changes if approved 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveOutputs46DEVNET-2739GitHub Project InfoTemplates:Created if new in GitHub repoUpdated when CLI commands changesRemoved after deleted fr
54、om GitHubDemoTemplates Sync 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveDEVNET-273948Agenda 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicCisco DNA Center PlatformInventory Collection Python SDKTemplates Sync-TerraformDevice Configuration AnsibleGitH
55、ub SecurityDeveloper ResourcesLessons LearnedDEVNET-273949 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive50Automation Workflow:Device ConfigurationDEVNET-2739Ansible PlaybookAutomate the deployment of CLI templates to network devicesMay run on-demand,or scheduledPulls fr
56、om GitHub the device inventory published by the Python SDK appDeploys the Cisco DNA Center CLI templates configured by TerraformDefines intent of network devices to be configured,for example:Configure all devices with role“CORE”at a specific locationTemplates configured by TerraformInventory collect
57、ed by the Python SDK app 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveAnsible Automation Use CasesThis presentation will showcase an Ansible network automation workflow calling the Cisco DNA Center REST APIs DEVNET-273951 2023 Cisco and/or its affiliates.All rights rese
58、rved.Cisco Public#CiscoLiveYAMLYAML-Yet Another Markup Language or YAML Aint Markup Language.Ansible uses YAML to define playbook configurations and variable files.It is human readable and may be used with many programming languages.CollectionCollection-A packaging format for bundling and distributi
59、ng Ansible content,including plugins,roles,modules,and more.Module/PluginModule/Plugin-Code,typically written in Python,that will perform some action on a host.Cisco DNA Center modules provide the documentation,the plugins execute the actionsAnsible One SlidePlayPlay Execution of a set of tasks to a
60、 host or group of hosts lab Cisco DNA Center vs production Cisco DNA CentersTaskTask Execute a module with specific arguments.When a task has executed on all target machines,Ansible moves on to the next task.PlaybookPlaybook-Repeatable,re-usable,simple configuration management that will push a new c
61、onfiguration or confirm the existing configuration.They are composed of plays and tasks.Task Lists and Blocks Task Lists and Blocks re-usable groups of tasks that are executed based on specific conditions or countsRef:https:/DEVNET-273952 2023 Cisco and/or its affiliates.All rights reserved.Cisco Pu
62、blic#CiscoLiveCisco DNA Center Ansible Moduleshttps:/ set of Ansible modules for all Cisco DNA Center REST APIsFirst library version Dec 2020Certified by RedHat v 2.9 04/2021Community certified-05/2022Support for Cisco DNA Center version 2.3.5.312,600+downloads53DEVNET-2739 2023 Cisco and/or its aff
63、iliates.All rights reserved.Cisco Public#CiscoLiveAnsible Collection Community CertificationCisco DNA Center Collection Community Certified 05/19/2022Modules are included with every Ansible installationWill not require additional collection installation steps54DEVNET-2739 2023 Cisco and/or its affil
64、iates.All rights reserved.Cisco Public#CiscoLiveIntent Modules-Cisco Developed and SupportedProvide Ansible automations for Cisco DNA Center workflowsSimplify developer experienceSignificantly reduce customer and partner development effortAccelerate the adoption of Cisco DNA Center Ansible collectio
65、nPublished Intent Modules:PnP,Site,Template,SWIMDEVNET-273955 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center Ansible Modules Docshttps:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveAnsible InstallationInstall AnsibleDEVNET-2
66、73957 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLivePython SDK InstallationInstall the Python SDKNote:Note:Instructions to get started with Cisco DNA Center Ansible moduleshttps:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center
67、 Ansible Collection UpdateVerify the collection is installedUpgrade collection,if neededDEVNET-273959 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveDevice List API+Ansible Modulehttps:/ the API endpoint called by the Ansible moduleDEVNET-273960 2023 Cisco and/or its affi
68、liates.All rights reserved.Cisco Public#CiscoLiveDeploy Template+Ansible Modulehttps:/ the API endpoint called by the Ansible moduleDEVNET-273961 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center host,credentials,collection version and required paramsSelect
69、the Ansible moduleVerify the task execution62Calling Cisco DNA Center REST APIs AnsibleDEVNET-2739Simplifies playbooks and modules developmentDevelopers focus on the use case,and not each API call 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveTemplate Deployment Ansible
70、PlaybookResources:Cisco DNA CenterAnsible environmentCisco DNA CenterAnsible LibraryNetwork engineer creates Deployment TemplateDeployment Template pushed to Git Server or GitHubAnsible Playbook:Ansible Playbook:Git pull,or clone,the repos with device inventory and deployment templateChecks if templ
71、ate project existsApply filter to select devices to be configuredIdentify if devices are managed and reachableDeploys existing CLI Templates,checks statusCreates deployment status reportREST APIsCisco DNA CenterInventoryTemplatesTasksNotes:Notes:Ansible Playbook created by developer+network engineer
72、Network Engineer runs the playbookDEVNET-273963 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveDefine Filter and ValueDeployment Templates Intent ConfigurationSelect Project and Template NameDeploy existing Cisco DNA Center CLI TemplatesNotes:Notes:Create a data model to
73、represent your intent.Cisco DNA Center project and templates already by the Terraform planFilter Options:hostnamedevice familyrolesitesoftware versiondevice IP addressother params or and/or logicDEVNET-273964This playbook will deploy the template“switches_aaa”only to the switches with“role”“CORE”202
74、3 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveAnsible PlaybookGit pull,or clone,the repos with device inventory and deployment templateChecks if CLI template configured on Cisco DNA CenterVersions(commits)templateApplies filter to select devices to be configuredVerifies if
75、devices are managed and reachableDeploys CLI TemplatesRetrieves deployment statusNote:Note:Developer+Network Engineer createdDEVNET-273965 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveAnsible Task Lists and Loops66DEVNET-2739Ansible task listAnsible playbookExecute all
76、steps in the task list for every device,using a loop.Simplify Ansible Playbooks by using tasks listsRe-use of task lists with future playbooks 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveAnsible Blocks and Conditionals67DEVNET-2739deploy_template_tasks.yamlGroup severa
77、l tasks using Ansible BlocksExecute the Block when condition is TrueExecute the block of tasks when the device is managed by Cisco DNA CenterSimplify Ansible Playbooks by using the conditional once,not for every task 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveRun the
78、Ansible PlaybookDEVNET-273968Select the templateTemplate deployment and reportSpecify deployment template as a parameterDemoDevice Configuration 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveDEVNET-273970Agenda 2023 Cisco and/or its affiliates.All rights reserved.Cisco P
79、ublicCisco DNA Center PlatformInventory Collection Python SDKTemplates Sync-TerraformDevice Configuration AnsibleGitHub SecurityDeveloper ResourcesLessons LearnedDEVNET-273971 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveRole Based Access to Configurations and AppsUse E
80、nterprise Git serversPrivate reposRestrict user access to read only,disable write access72DEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveManage Platform Credentials.env fileEnvironment variablesHashiCorp VaultJenkins credentialsBe careful not to commit any fil
81、es with sensitive informationIf you did,this may help:Removing sensitive data from a repository73DEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveGitHub SecurityEnable the GitHub security tooling to identify coding and dependencies vulnerabilities74DEVNET-2739 2
82、023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveGitHub Security Dependencies AlertsNote:Note:3 years old repo,not maintained75DEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveGitHub Security Code Scanning76DEVNET-2739Agenda 2023 Cisco a
83、nd/or its affiliates.All rights reserved.Cisco PublicCisco DNA Center PlatformInventory Collection Python SDKTemplates Sync-TerraformDevice Configuration AnsibleGitHub SecurityDeveloper ResourcesLessons LearnedDEVNET-273977 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveD
84、NA Center GitOpshttps:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center-DevNet ResourcesAPI DocumentationUser GuidesLearning LabsSandboxesCode Exchange79DEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center
85、 Jenkins Automationshttps:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center GitHub/GitLab Integrationshttps:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center Apps Splunkbasehttps:/ Apps:Add-on data collectionVisu
86、alizationsSupport via GitHub issuesFully customizable 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center ServiceNow Custom Workflowshttps:/ open-source code is for demos and proof-of-concepts only.2023 Cisco and/or its affiliates.All rights reserved.Cisco Pub
87、lic#CiscoLiveCisco EN Programmability GitHub Orghttps:/ DNA Center use casesPython SDKAnsible modulesGo SDK and Terraform providerSplunk Integration AppsSDA-as-CodeReport OperationsDay N use cases Python SDK,Ansible,TerraformJenkins open-source Integration and pipelinesGitHub/GitLab open-source Inte
88、grationsCompliance Use CaseCustom Integration AppWebhook ReceiverOther sample code 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center Developer Resourceshttps:/ 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicCisco DNA Center PlatformInventor
89、y Collection Python SDKTemplates Sync-TerraformDevice Configuration AnsibleGitHub SecurityDeveloper ResourcesLessons LearnedDEVNET-273986 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveCisco DNA Center LibrariesAll network automation use cases may be implemented with ever
90、y Cisco DNA Center libraryPython SDK is very versatile,excellent choice for complex use cases,and integrations,easy to get started withAnsible and Terraform are great options for:Simple use cases,or end-to-end automations with Data Center and CloudWhen DevOps engineers use these automation toolsPart
91、ner with developers to create your automations workflowsCode re-use-build your teams library:modules,tasks lists,plans87DEVNET-2739 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLiveFill out your session surveys!Attendees who fill out a minimum of four session surveys and th
92、e overall event survey will get Cisco Live-branded socks(while supplies last)!These points help you get on the leaderboard and increase your chances of winning daily and grand prizesAttendees will also earn 100 points in the Cisco Live Game for every survey completed.DEVNET-273988 2023 Cisco and/or
93、its affiliates.All rights reserved.Cisco Public#CiscoLiveOther Cisco DNA Center Sessions:DEVNET-273989DayTimeRoomSessionOn demandBRKOPS-2854 Version Control Tools Integrations Cisco DNA Center Infrastructure-as-Code Use CasesJune 59:30-10:30 AMLevel 2,Mandalay Bay DBRKOPS-2032 3 Cisco DNA Center and
94、 ITSM Workflows:CMDB,Incident Management and SWIMJune 62:30 3:30 PMLower Level,Tradewinds ABCBRKOPS-2471 Custom Workflows for the Cisco DNA Center Integration with ServiceNowJune 710:00 10:45 AMDevNet Theater DEVNET-2739 ClickOps to GitOps-Cisco DNA Center Infrastructure-as-Code Use CasesJune 72:00
95、2:45 PMDevNet Classroom 2DEVNET-2151 Jenkins Automations for Cisco DNA Center 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicContinue your educationVisit the Cisco Showcase for related demosBook your one-on-oneMeet the Engineer meetingAttend the interactive education with DevNet,Ca
96、pture the Flag,and Walk-in LabsVisit the On-Demand Library for more sessions at www.CiscoL you#CiscoLive 2023 Cisco and/or its affiliates.All rights reserved.Cisco Public#CiscoLive92Gamify your Cisco Live experience!Get points Get points for attending this session!for attending this session!Open the Cisco Events App.Click on Cisco Live Challenge in the side menu.Click on View Your Badges at the top.Click the+at the bottom of the screen and scan the QR code:How:123492 2023 Cisco and/or its affiliates.All rights reserved.Cisco PublicDEVNET-2739#CiscoLive