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
20241112 Real AVS Migration Experience Sharing
pichuang
0
5
Active/Passive HA FortiGate Pair with External and Internal Azure Load Balancer
pichuang
0
7
20240814-採用 Azure VMware Solution 啟動你的 Azure 雲端服務
pichuang
0
31
20240425 Play and Discuss the game “K8S LAN Party”
pichuang
0
130
20231210 Azure Kubernetes Services 永續性軟體工程設計方針
pichuang
1
100
20231129 如何選擇適當的 CNCF Project 來使用
pichuang
0
120
Cloud Native Taiwan User Group: Governance of Open-Source Communities in Non-English Region
pichuang
0
34
20231024 CNSW Lightning Talk: TAG Environmental Sustainability
pichuang
0
140
20230913_採用 Azure OpenAI 和 Azure Kubernetes Service 來建構您自己的 AI 應用程式
pichuang
1
150
Other Decks in Technology
See All in Technology
mikroBus HAT を用いた簡易ベアメタル開発
tarotene
0
330
Team Dynamicsを目指すウイングアーク1stのQAチーム
sadonosake
1
310
[FOSS4G 2024 Japan LT] LLMを使ってGISデータ解析を自動化したい!
nssv
1
190
TinyGoを使ったVSCode拡張機能実装
askua
2
210
組み込みLinuxの時系列
puhitaku
4
1.1k
いろんなものと両立する Kaggleの向き合い方
go5paopao
2
1.1k
Amazon CloudWatch Network Monitor のススメ
yuki_ink
0
170
인디 앱 개발자와 Flutter
tinyjin
0
160
Microsoft MVPになる前、なってから/Fukuoka_Tech_Women_Community_1_baba
nina01
0
180
第23回Ques_タイミーにおけるQAチームの在り方 / QA Team in Timee
takeyaqa
0
270
元旅行会社の情シス部員が教えるおすすめなre:Inventへの行き方 / What is the most efficient way to re:Invent
naospon
2
310
Windows Autopilot Deployment by OSD Guy
tamaiyutaro
0
390
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
10 Git Anti Patterns You Should be Aware of
lemiorhan
654
59k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.4k
For a Future-Friendly Web
brad_frost
175
9.4k
Six Lessons from altMBA
skipperchong
27
3.5k
The Cult of Friendly URLs
andyhume
78
6k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
GraphQLの誤解/rethinking-graphql
sonatard
67
10k
Facilitating Awesome Meetings
lara
50
6.1k
Bash Introduction
62gerente
608
210k
Building an army of robots
kneath
302
42k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
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