The Single Source Of Truth For Network Automation - NANOG

1y ago
8 Views
2 Downloads
1.17 MB
44 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Philip Renner
Transcription

The Single Source ofTruth for NetworkAutomationAndy Davidson andy@asteroidhq.com March 2018CEE Peering Days 2018, DKNOG 8, UKNOF 40

Automation Journey ReportingMost network engineers begin their automation journey by producingsome simple reporting software. It is low-risk, has a positive usefulimpact, and a good introduction to network scripting and the manylibraries that support network automation.2

Automation Journey ReportingMost network engineers begin their automation journey by producingsome simple reporting software. It is low-risk, has a positive usefulimpact, and a good introduction to network scripting and the manylibraries that support network automation.3

Automation Journey Reporting ToolingEventually, tasks which are repetitive, and simple to automate start tolook like great candidates to automate. Engineers discover that thegreat libraries that integrate with software tools can be used to writeas well as read configuration, and simple standalone tools are created.4

Automation Journey Reporting ToolingEventually, tasks which are repetitive, and simple to automate start tolook like great candidates to automate. Engineers discover that thegreat libraries that integrate with software tools can be used to writeas well as read configuration, and simple standalone tools are created.5

Automation Journey Reporting ToolingApplicationMore complex tools are eventually produced. Engineers begin to“configure the network and not the device”, so state becomes aproblem (I mean state becomes properly managed). This takes thelook and feel of a proper application.6

Automation Journey Reporting ToolingApplicationMore complex tools are eventually produced. Engineers begin to“configure the network and not the device”, so state becomes aproblem (I mean state becomes properly managed). This takes thelook and feel of a proper application.7

Automation Journey Reporting ToolingApplication BusinessThe ultimate place to reach is a fully automated and integratedbusiness with a set of processes enforced and delivered by software.“Configure the product, not the network”.Generally solved by businesses with scale challenges (mass access,hosting) but now a commonplace medium sized ISP/IXP requirement.8

This presentation. Offer a technical perspective/thoughts on architecture on Greenfield deploymentat the ‘automated business’ end of the spectrum What motivated this decision? Replication - “as a service” product Efficiency, leanness Service assurance (rapid provisioning, ongoing high availability) Integration with third party peering networks, Euro-IX, PeeringDB Experience in this field, and frustration with traditional model Chance to align business and technical process from the start - in our “DNA”9

This presentation . (2) Data model Why and how to build a data model to support integratedautomated businessSoftware architecture for network centric businesses Abstraction APIs & API integration with customers Software testing Useful third party tools10

What I mean, “data icesInfrastructureElements A description of the things your business needs to ‘know’in order to operate Start with the steady state of the business11

What I mean, “data model”?People OrganisationsProductsThen model the interactionsbetween those reElementsConfigurations

Why to care from anengineering point of ions

Where does/shall data live?FinanceSalesEngineeringSupport14

Where does/shall data live?FinanceSalesFundamentally it is finefor data to “live” indifferent tools anddatabasesEngineeringSupport15

Where does/shall data live?Search Engine, Inc.FinanceSalesSearch Engine (Netherlands) B.V.Search EngineEngineeringSupport16

Where does/shall data live?Search Engine, Inc.FinanceSalesSearch Engine (Netherlands) B.V.We just deal with FredEngineeringSearch EngineSupport17

Where does/shall data live?FinanceFundamentally it isnot fine for more thanone data place to beauthoritative for anysingle type of recordSalesThe other databasesmust refer to the key(id) of a singleauthoritative sourceEngineeringSupport18

Where does/shall data live?FinanceFundamentally it isnot fine for more thanone data place to beauthoritative for anysingle type of recordSalesThe other databasesmust refer to the key(id) of a singleauthoritative sourceEngineeringSupportWe will talk about how to configure and enforce that shortly.

Rules of Engagement Store any item of data ONCE Easy to ensure that it is correct “Third normal form”Give every record a unique ID which has nothing to do with therecord (ASN is not to be used as ID!) Decide where it will be authoritative Requires buy in and planning from across the business.20

Separate your customer/infrastructure dataPortServiceport idservice idcustomer idport idbridge idservice item1port nameproduct idEnsure infrastructure centric and customer-centric data is not in the same tableThis will make your data substantially easier to maintain in terms of portability21

Database Fashions Document store -vs- RDBMS Developers like document stores because they are veryextensible and less strict “Storage” cost reduced, so now we can be lazyStrict is a benefit / feature22

Common Data Stores inEngineering SQL - Truths about users, ports, services, ‘state’, e.g.MySQL Time Series - e.g. Port utilisation, light level, error count,e.g. InfluxDB Third Party - Someone else’s sorted data, e.g. CRM, e.g.EuroIX/PeeringDB23

General ArchitectureClient Utilities (scripts, portals, even customers)APIWorkerDeviceADeviceADeviceWA single API layer makes it simpler to developand monitor your platform, and easier to makechanges to back end services as time goes by24

General ArchitectureClient Utilities (scripts, portals, even customers)APIWorkerDeviceADeviceADeviceWIt also makes it easier to expose your tools anddata to customers. This is a good thing!25

General ArchitectureClient Utilities (scripts, portals, even customers)APIWorkerDeviceADeviceADeviceWAPI can export data, no matter about back endstorage format in a single format (pick JSON)26

Worker, BIRDInternal SQLWorker, AristaInfluxDB

Models Templates Once you have confidence in your data model you canharness the power of templated configuration Once your data model extends across the business youcan do that with greater accuracy and devolved control e.g. at Asteroid, our sales people can deliver exchangeports directly from the quotation So can customers Simultaneous delivery of monitoring from the quotation28

DaredturucStTemplatesnatotomAutaAutomation fire triangle

Templates - Jinja Generate any kind of configuration Takes variables from your JSON API Facilitates programatic methods in configuration strophe Loops Conditionals30

Automation - Ansible31

Conditional Logic withoutscript32

Advantages API layer lightweight Retrieve and update database records Write in a familiar type-safe language (I chose Python)Automation layer lightweight Essentially Ansible configuration files Configuration “easier” than coding?33

Business LogicClient Utilities (scripts, portals, even customers)APIWorkerDeviceADeviceADeviceWEnsure your API choices allow you to store, retrieveand process business logic as well as your technicalproducts. Example: Asteroid Campaign logic.34

Worker ArchitectureClient Utilities (scripts, portals, even customers)APIWorkerDeviceADeviceA DeviceW35Must consider:Inter Process CommunicationJob and network stateDevice independentVendor failure behaviourDevice swap-outs

Inter-Processcommunication Message Queue based? e.g. RabbitMQ Quite good support in major scripting languages Fault tolerant, order matters, guaranteed delivery, HA Extra software to support & CentralisedWeb Services Same technology stack as central API Inherently extensible Decentralised Extra software to write and more state to manage36

Device Independence I chose to write a different worker per back endtechnology A bit of copy/paste code, which is an anti-pattern No stress trying to treat different vendors generically NAPALM allows me to continue with Ansible Can swap out a switch/server architecture for sure37

Device Swap-outs Using Ansible/NAPALM for switch configuration allows aprocess for rolling full configuration in event of devicefailure No need for specific software feature, an operationalprocess is ok38

Software Testing Write the test first Red, Green, Refactor mantra39

Integration vs Unit Testing If you are like me, you will prefer Integration tests Write lots, and remember to cover desired exceptions Run on your development instance after every change “Back to Zero” testing catches unexpected failures40

The Joy of Errors41

Ubiquity of JSON for an ISP Especially in Peering! PeeringDB Euro-IX IXF-DB Asteroid JSON

Summary Single source of truth under the control of all departments Which is used to configure services and network Accessible to all departments Customer self service Provision from quote “Information in one place and tool” Account Managers can do troubleshooting

Any Questions?Andy Davidson andy@asteroidhq.com www.asteroidhq.com

Automation Journey! Reporting Most network engineers begin their automation journey by producing some simple reporting software. It is low-risk, has a positive useful impact, and a good introduction to network scripting and the many libraries that support network automation. 2

Related Documents:

May 02, 2018 · D. Program Evaluation ͟The organization has provided a description of the framework for how each program will be evaluated. The framework should include all the elements below: ͟The evaluation methods are cost-effective for the organization ͟Quantitative and qualitative data is being collected (at Basics tier, data collection must have begun)

Silat is a combative art of self-defense and survival rooted from Matay archipelago. It was traced at thé early of Langkasuka Kingdom (2nd century CE) till thé reign of Melaka (Malaysia) Sultanate era (13th century). Silat has now evolved to become part of social culture and tradition with thé appearance of a fine physical and spiritual .

On an exceptional basis, Member States may request UNESCO to provide thé candidates with access to thé platform so they can complète thé form by themselves. Thèse requests must be addressed to esd rize unesco. or by 15 A ril 2021 UNESCO will provide thé nomineewith accessto thé platform via their émail address.

̶The leading indicator of employee engagement is based on the quality of the relationship between employee and supervisor Empower your managers! ̶Help them understand the impact on the organization ̶Share important changes, plan options, tasks, and deadlines ̶Provide key messages and talking points ̶Prepare them to answer employee questions

Dr. Sunita Bharatwal** Dr. Pawan Garga*** Abstract Customer satisfaction is derived from thè functionalities and values, a product or Service can provide. The current study aims to segregate thè dimensions of ordine Service quality and gather insights on its impact on web shopping. The trends of purchases have

Chính Văn.- Còn đức Thế tôn thì tuệ giác cực kỳ trong sạch 8: hiện hành bất nhị 9, đạt đến vô tướng 10, đứng vào chỗ đứng của các đức Thế tôn 11, thể hiện tính bình đẳng của các Ngài, đến chỗ không còn chướng ngại 12, giáo pháp không thể khuynh đảo, tâm thức không bị cản trở, cái được

Le genou de Lucy. Odile Jacob. 1999. Coppens Y. Pré-textes. L’homme préhistorique en morceaux. Eds Odile Jacob. 2011. Costentin J., Delaveau P. Café, thé, chocolat, les bons effets sur le cerveau et pour le corps. Editions Odile Jacob. 2010. Crawford M., Marsh D. The driving force : food in human evolution and the future.

Le genou de Lucy. Odile Jacob. 1999. Coppens Y. Pré-textes. L’homme préhistorique en morceaux. Eds Odile Jacob. 2011. Costentin J., Delaveau P. Café, thé, chocolat, les bons effets sur le cerveau et pour le corps. Editions Odile Jacob. 2010. 3 Crawford M., Marsh D. The driving force : food in human evolution and the future.