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.1k
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
20231210 Azure Kubernetes Services 永續性軟體工程設計方針
pichuang
1
55
20231129 如何選擇適當的 CNCF Project 來使用
pichuang
0
100
Cloud Native Taiwan User Group: Governance of Open-Source Communities in Non-English Region
pichuang
0
10
20231024 CNSW Lightning Talk: TAG Environmental Sustainability
pichuang
0
85
20230913_採用 Azure OpenAI 和 Azure Kubernetes Service 來建構您自己的 AI 應用程式
pichuang
1
110
20230615 Kubernetes Scalable Workloads
pichuang
1
230
混合雲基礎架構探討 Microsoft Azure Infrastructure
pichuang
0
110
20230328 ARO Technical Workshop
pichuang
0
85
20230320 Azure Red Hat OpenShift Network Concepts
pichuang
0
100
Other Decks in Technology
See All in Technology
プロデザ! BY リクルート vol.18_リクルートのリサーチ実践組織「リサーチブーストコミュニティ」
recruitengineers
PRO
3
280
開発生産性向上サービスを作るFindyが自分たちで開発生産性を爆上げした組織づくりの歩み / Findy's path to boosting its own development productivity 2024-04-17
ma3tk
3
640
非同期推論システムによるコスト削減と信頼性向上
koki_nishihara
0
230
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
180
コンテナセキュリティの基本と脅威への対策
kyohmizu
3
760
KubeConにproposalを送りたい人へのアドバイス
sat
PRO
3
240
20240418_Google ColabにLLMが搭載されたようなのでPython x データ分析の勉強方法を考えてみる
doradora09
0
130
ServiceNow Knowledge Learning Rise up
manarobot
0
210
Databricks における 『MLOps』
databricksjapan
2
170
現代CSSフレームワークの内部実装とその仕組み
poteboy
8
3.6k
Azureの基本的な権限管理の勉強会
yhana
0
190
Terraformあれやこれ/terraform-this-and-that
emiki
8
1.4k
Featured
See All Featured
Embracing the Ebb and Flow
colly
80
4.1k
Agile that works and the tools we love
rasmusluckow
325
20k
Imperfection Machines: The Place of Print at Facebook
scottboms
260
12k
Music & Morning Musume
bryan
41
5.6k
Building Better People: How to give real-time feedback that sticks.
wjessup
355
18k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
125
32k
Principles of Awesome APIs and How to Build Them.
keavy
121
16k
Large-scale JavaScript Application Architecture
addyosmani
504
110k
The Language of Interfaces
destraynor
151
23k
Facilitating Awesome Meetings
lara
42
5.6k
How STYLIGHT went responsive
nonsquared
92
4.8k
The Art of Programming - Codeland 2020
erikaheidi
42
12k
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