The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The...

39
Confidential + Proprietary Confidential + Proprietary The Zero Touch Network Bikash Koley For Google Technical Infrastructure CNSM 2016

Transcript of The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The...

Page 1: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + ProprietaryConfidential + Proprietary

The Zero Touch NetworkBikash KoleyFor Google Technical Infrastructure

CNSM 2016

Page 2: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary2

For the past 15 years, Google has been building out the largest cloud infrastructure on the planet.

Page 3: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + ProprietaryImages by Connie Zhou

100 Billion searches per month on

google.com

Source: Google, 2012

Page 4: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

A Global Cloud Network

Cluster

Page 5: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Google Backbone(s)Internet facing Backbone, B2:70+ locations in 33 countries

Global Software Defined Inter-DC Backbone: B4

Page 6: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

● 30,000+ circuits in operation● Many tens of network element roles

● Dozen+ vendors

● 4M lines of configuration files

● ~30K configuration changes per

month

● > 8M OIDs collected every 5 minutes

6

Operational scale

Page 7: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

At scale stuff breaks!

Cluster

Page 8: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

The Nines and the Outage Budgets

… for four 9s availability? … for five 9s availability?

4 minutes per month 24 seconds per month

99.99% uptime 99.999% uptime

Page 9: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Why is high network availability a challenge?

Velocity of Evolution

Scale

Management Complexity

9

Page 10: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + ProprietaryTime

Cap

acit

y

Saturn

Firehose 1.0

Watchtower

Firehose 1.1

4 Post

Jupiter

10

Google’s Network Hardware Evolves Constantly

Page 11: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

B4

2006

2008

2010

2012

2014Google Global Cache

BwE

JupitergRPC

Freedome

Watchtower

QUIC

Andromeda

11

As does the Network Software

Page 12: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary 12

… driven by ever-evolving products

Page 13: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Network Operation is a tradeoff Traditional network: pick any two of the three

13

efficiency

reliability

scale

{unscalable, reliable, efficient}

{sca

lable,

relia

ble,

ineffic

ient}

{scalable, unreliable, efficient}

We want all three!

Page 14: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Lessons learned from a decade of high-availability network design

14

Page 15: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

We analyzed over 100 Post-mortem reports

written over a 2 year period

15

Page 16: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

What is a Post-mortem?

Carefully curated description of a previously unseen failure that had significant availability impact

Learn from failures16

Blame-free process

Page 17: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary 17

Page 18: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary 18

Page 19: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

No one network or plane dominates

19

Where do failures happen?

Page 20: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Durations much longer than outage budgets

Shorter failures on B2

20

How long do the failures last?

Page 21: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

70% of failures happen when a management operation is in progress

21

What role does network evolution play?

Page 22: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary 22

Intent-driven Operation

Rel

iabi

lity,

effi

cien

cy, s

cale

The Zero Touch Network{reliability, efficiency, scale} are NOT tradeoffs.. if network operation is fully intent driven

Evolution is inevitable:Design for it!

Page 23: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

The Zero Touch Network

● All network operations are automated, requiring no operator steps beyond the instantiation of intent

● Changes applied to individual network elements are fully declarative, vendor-neutral, and derived by the network infrastructure from the high-level network-wide intent

● Any network changes are automatically halted and rolled-back if the network displays unintended behavior

● The infrastructure does not allow operations which violate network policies

Page 24: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

The Zero Touch Network

● All network operations are automated, requiring no operator steps beyond the instantiation of intent

● Changes applied to individual network elements are fully declarative, vendor-neutral, and derived by the network infrastructure from the high-level network-wide intent

● Any network changes are automatically halted and rolled-back if the network displays unintended behavior

● The infrastructure does not allow operations which violate network policies

Page 25: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

The Zero Touch Network

● All network operations are automated, requiring no operator steps beyond the instantiation of intent

● Changes applied to individual network elements are fully declarative, vendor-neutral and derived by the network infrastructure from the high-level network-wide intent

● Any network changes are automatically halted and rolled-back if the network displays unintended behavior

● The infrastructure does not allow operations which violate network policies

Page 26: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

The Zero Touch Network

● All network operations are automated, requiring no operator steps beyond the instantiation of intent

● Changes applied to individual network elements are fully declarative, vendor-neutral and derived by the network infrastructure from the high-level network-wide intent

● Any network changes are automatically halted and rolled-back if the network displays unintended behavior

● The infrastructure does not allow operations which violate network policies

Page 27: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

ZTN Architecture

Network devices/ systems

Network Management Layer

operators

Workflow API

“drain a link”

Update Network model

Workflow Engine

Topology Config

configuration, commands, telemetry

Bikash

Page 28: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

● The workflow engine executes a goal-seeking workflow graph

● Workflows are expressed in a

meta-language

● All interesting metrics of execution

logged

● Workflows have the same test

coverage as any software system

Workflow Engine

operators

Workflow Engine

Page 29: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

● The workflow engine interacts with the

intent-based network management

infrastructure over transactional APIs

● Workflow intents are expressed at

the network-level, as changes to○ Topology

○ Config

○ Functional calls

Network intent

operators

Workflow API

“drain a link”

Workflow Engine

Page 30: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

● OpenConfig (www.openconfig.net) for

vendor-neutral configuration model○ YANG for data modeling, gRPC as transport

○ Both configuration and op-state models

○ BGP, MPLS, ISIS, L2, Optical-transport, ACL,

policy...

● “Unified Network Model” for

topology

○ Protocol Buffer based Google internal

schema

○ Describes all layer-0/1/2/3 abstractions

Network Models

config / topology models

Update Network model

Topology Config

base model

X vendor modifications

local modifications

extended model

Page 31: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

● Compose full config (vendor-neutral

and vendor-specific) from

topology/config intent update

● Provides secure transport of full config

to network elements

(OpenConfig+gRPC)

● Enforce Operational Policies○ Rate limiting

○ Blast radius containment

○ Minimum survivable topology

Network Management Services

Network Management Layer

configuration, commands

Topology Config

Page 32: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Streaming Telemetrynetwork state changes observed by analyzing comprehensive time-series data stream

● Common schema for operational state data in OpenConfig

● stream data continuously -- with incremental updates

● Efficient, secure transport protocol, gRPC

Page 33: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Workflow Safety

● Ability to automatically check the safety

of operations

● Ability to repeatedly validate the

network state against the stated intent

● Ability to recognize “bad” network

behavior

● Ability to roll back to the original state

Page 34: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Lessons learned from a decade of high-availability network design

34

Do not treat a change to the network as an exceptional event

Page 35: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Changes are common

Page 36: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Changes are common↓

Make it safe to evolve the network daily

Page 37: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Changes are common↓

Make it safe to evolve the network daily↓

Scale just-in-time, scale often

Page 38: The Zero Touch Network CNSM 2016 For Google Technical ... · Bikash. Confidential + Proprietary The workflow engine executes a goal-seeking workflow graph Workflows are expressed

Confidential + Proprietary

Changes are common↓

Make it safe to evolve the network daily↓

Scale just-in-time, scale often↓

Evolve into a Zero Touch Network