Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
NetDevOps: Next-Generation Network Engineer
Search
Phil Huang
September 06, 2017
Technology
5
1.2k
NetDevOps: Next-Generation Network Engineer
#NetDevOps #Edgecore #Ansible # GNS3 #Networking
Phil Huang
September 06, 2017
Tweet
Share
More Decks by Phil Huang
See All by Phil Huang
When Windows Meets Kubernetes…
pichuang
0
270
20241217-Azure Red Hat OpenShift 於 Azure TaiwanNorth 上之雲原生異地備援架構設計
pichuang
0
22
20241112 Real AVS Migration Experience Sharing
pichuang
0
29
Active/Passive HA FortiGate Pair with External and Internal Azure Load Balancer
pichuang
0
30
20240814-採用 Azure VMware Solution 啟動你的 Azure 雲端服務
pichuang
0
47
20240425 Play and Discuss the game “K8S LAN Party”
pichuang
0
140
20231210 Azure Kubernetes Services 永續性軟體工程設計方針
pichuang
1
130
20231129 如何選擇適當的 CNCF Project 來使用
pichuang
0
140
Cloud Native Taiwan User Group: Governance of Open-Source Communities in Non-English Region
pichuang
0
47
Other Decks in Technology
See All in Technology
Zero Data Loss Autonomous Recovery Service サービス概要
oracle4engineer
PRO
1
5k
ZOZOTOWN の推薦における KPI モニタリング/KPI monitoring for ZOZOTOWN recommendations
rayuron
1
1.1k
Oracle Exadata Database Service(Dedicated Infrastructure):サービス概要のご紹介
oracle4engineer
PRO
0
12k
【令和最新版】ロボットシミュレータ Genesis x ROS 2で始める快適AIロボット開発
hakuturu583
2
1.5k
Azureの開発で辛いところ
re3turn
0
220
30分でわかるデータ分析者のためのディメンショナルモデリング #datatechjp / 20250120
kazaneya
PRO
17
4.3k
アジャイルチームが変化し続けるための組織文化とマネジメント・アプローチ / Agile management that enables ever-changing teams
kakehashi
3
3k
PHP ユーザのための OpenTelemetry 入門 / phpcon2024-opentelemetry
shin1x1
3
1.7k
自社 200 記事を元に整理した読みやすいテックブログを書くための Tips 集
masakihirose
1
230
深層学習と3Dキャプチャ・3Dモデル生成(土木学会応用力学委員会 応用数理・AIセミナー)
pfn
PRO
0
430
2025年のARグラスの潮流
kotauchisunsun
0
730
普通のエンジニアがLaravelコアチームメンバーになるまで
avosalmon
0
690
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
62
7.6k
Designing for Performance
lara
604
68k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
950
Being A Developer After 40
akosma
89
590k
Unsuck your backbone
ammeep
669
57k
The Pragmatic Product Professional
lauravandoore
32
6.4k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Code Review Best Practice
trishagee
65
17k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Practical Orchestrator
shlominoach
186
10k
Building Adaptive Systems
keathley
38
2.3k
Transcript
NetDevOps: Next-Generation Network Engineer Phil Huang <
[email protected]
> Open Networking Solution
Engineer, Edgecore Networks DevOpsDays Taipei 2017, Taiwan, Sep. 6, 2017
Phil Huang 黃秉鈞 • Edgecore Networks Solution Engineer • ONF
Projects • BigSwitch / Pica8 / CumulusLinux • Open Source SI • ONF CORD Ambassador • SDNDS-TW Co-Founder 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 2 ONF: Open Networking Foundation Ref: https://www.linkedin.com/in/phil-huang-09b09895/
Edgecore Networks 9/8/17 3 Delivering at Scale Cumulus® Linux® Network
OS ICOS Software Network OS Partner SONiC Open Hardware / Open Source Software Delivery & Support
4
Modern Data Center
DC Network Evolved in the World Wide 9/8/17 © 2017
Edgecore Networks. All rights reserved | www.edge-core.com 6 Access Aggregation Core
Switch as a Server Compute Network Bare Metal Server Bare
Metal Switch Hardware 7 U-Boot & ONIE BIOS & PXE Boot & Provision BIOS & PXE U-Boot & ONIE OS Network OS Linux, Windows… U-Boot & ONIE BIOS & PXE Applications Network OS Linux, Windows… Applications Applications +
Hardware and Software Disaggregation 9/8/17 © 2017 Edgecore Networks. All
rights reserved | www.edge-core.com 8 OCP-Qualified Hardware Software on Linux-based Platform OCP: Open Compute Project
NetDevOps
NetDevOps = Networking + DevOps • Based on Agile Manifesto
and DevOps culture • It is talking about Network Automation 1. Prevent Fat Fingers Ø“The CLI is Dead, API is Cool!“ (e.g. Ansible, gRPC, NetConf, RESTful …etc) Ø“By 2020, ONLY 30% of network operations teams will use the command line interface (CLI) as their primary interface, down from 85% at YE16.” from Gartner report 2. Repetitive Tasks ØMake reproduce and dispose operations more reliable and predictable 3. Deliver source code ØReuse of known-good automation scripts increases admin confidence as well as task completion accuracy 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 10 Ref: https://cumulusnetworks.com/blog/netdevops-networking-methods-with-a-devops-mindset/
Infrastructure as Code for Automation Network
Why use Ansible in Networking • Agentless Ø Don’t need
any agent on the network devices • Infrastructure as Code (IaC) Ø Same language and docs between Operating and Networking team • Community and network OS vendors driven both Ø Based on Open Source and follow GitHub workflow • Modular framework, easily modified and maintained Ø Simple use and learn 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 12
Network Configuration Workflow 9/8/17 © 2017 Edgecore Networks. All rights
reserved | www.edge-core.com 13 Ansible Playbook System Team Network Team Production Staging Testing Users Environments Collaboration & Communication
What Tools Should We Look At? 9/8/17 © 2017 Edgecore
Networks. All rights reserved | www.edge-core.com 14 Ref: https://interestingtraffic.nl/2017/03/27/insights-from-the-netdevops-fall-2016-survey/
What to Automate First? 9/8/17 © 2017 Edgecore Networks. All
rights reserved | www.edge-core.com 15 Ref: https://interestingtraffic.nl/2017/03/27/insights-from-the-netdevops-fall-2016-survey/
Network Integration with Ansible (>2.3) 9/8/17 © 2017 Edgecore Networks.
All rights reserved | www.edge-core.com 16 Ref: https://www.ansible.com/network-automation + More than 250+ Ansible Network Modules
Reuse Playbooks in Multiple Deploy 9/8/17 © 2017 Edgecore Networks.
All rights reserved | www.edge-core.com 17 Ref: https://github.com/pichuang/cumulus_config_backup
Example: Upgrade Switch 9/8/17 © 2017 Edgecore Networks. All rights
reserved | www.edge-core.com 18 Ref: http://packetpushers.net/infrastructure-as-code-for-the-network-stack/
Version Control – Git • Configuration file repository • File
change and revision management • Build for teams to work the same files 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 19
Commit Any Change 9/8/17 © 2017 Edgecore Networks. All rights
reserved | www.edge-core.com 20 $ git add . $ git commit -a -s -m "Add new switch configuration" [master 8cf8a38] Add new switch configuration 1 file changed, 1 insertion(+) create mode 100644 running.conf $ git push -u origin master
Blame Someone 9/8/17 © 2017 Edgecore Networks. All rights reserved
| www.edge-core.com 21 $ git blame running.conf 69f5f511 (Phil Huang 2016-11-01 13:59:23 +0800 1) Phil Huang 69f5f511 (Phil Huang 2016-11-01 13:59:23 +0800 2) is a 60643262 (Phil Huang 2016-12-01 15:00:51 +0800 3) good 69f5f511 (Phil Huang 2016-11-01 13:59:23 +0800 4) man
22 9/8/17 © 2017 Edgecore Networks. All rights reserved |
www.edge-core.com Ref: http://www.pica8.com/sdn-solutions/ethernet-switching/devops-automation Networking
Use Cases: NTT SIC • Network Flexibility − Leverage custom
applications like GoBGP to run directly − Leverage existing tool to monitor all BGP information with InfluxDB, and visual report from Grafana • Network Simplification − Leveraging ONIE to install NOS allowed NTT SIC to institute zero touch provisioning (ZTP) − Utilized custom REST API to invoke Ansible for provisioning 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 23 Ref: https://cumulusnetworks.com/customers/ntt/ ONIE: Open Network Install Environment OCP-qualified Hardware
Network Testing
Network Simulator – GNS3 • Used by network engineers worldwide
to 1. Emulate -> Configure -> Test 2. Troubleshoot virtual and real networks • Supports multi vendor environments • Only limitation is your hardware: CPU and memory • Large and active community (800,000+ members) 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 25 Ref: https://docs.gns3.com/1PvtRW5eAb8RJZ11maEYD9_aLY8kkdhgaMB0wPCz8a38/index.html
GNS3 Demonstration Ref: YouTube: Cumulus Linux: Disaggregated networking - why
use proprietary network stacks? - David Bombal
Serverspec • The concept is based on “Switch as a
Server” • Can write RSpec tests for checking your devices are configured correctly • Allows for infrastructure code to be written using Test Driven Development (TDD) for networking • Driven by many of the popular configuration management tools, like Ansible, Puppet, CFEngine and Itamae. 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 27 Ref: http://serverspec.org/
TDD for ServerSpec 9/8/17 © 2017 Edgecore Networks. All rights
reserved | www.edge-core.com 28 TDD: Test-Driven Development Report Unit Test Case
Summary • Emerging trends shaping the data center 1. Hardware
and Software disaggregation 2. Driving network automation is the rapid expansion of network infrastructure 3. Increase strategic workforce, especially software part • Network engineers require skills include − Linux knowledges − Ansible (or others CM tool) − Network programmability skill − Continued learning and Open Mind 9/8/17 © 2017 Edgecore Networks. All rights reserved | www.edge-core.com 29 Network Engineer Capacity Total Population M-Form
Join Us! 9/8/17 © 2017 Edgecore Networks. All rights reserved
| www.edge-core.com 30
Join Agile Tour Hsichu 9/8/17 © 2017 Edgecore Networks. All
rights reserved | www.edge-core.com 31 David Ko
Open Networking from Freedom Control Innovation © 2017 Edgecore Networks.
All rights reserved | www.edge-core.com 32