Slide 1

Slide 1 text

Verda LINE

Slide 2

Slide 2 text

• Verda % (2019-10 ~ ) "% • $! • (2017-04 ~ 2019-10) "#& &%

Slide 3

Slide 3 text

Agenda • LINE • •

Slide 4

Slide 4 text

Agenda • LINE • •

Slide 5

Slide 5 text

LINE L3 Server ToR Leaf Spine External l Full-L3 BGP CLOS l Whitebox Switch(Mellanox) + Linux base NOS(Cumulus Linux)

Slide 6

Slide 6 text

Agenda • LINE • •

Slide 7

Slide 7 text

Switch ZTP Server Ansible Server l : Zero Touch Provisioning (ZTP) l : Ansible

Slide 8

Slide 8 text

Switch ZTP Server Ansible Server l : Zero Touch Provisioning (ZTP) l : Ansible ZTP & (OS , )

Slide 9

Slide 9 text

Switch ZTP Server Ansible Server l : Zero Touch Provisioning (ZTP) l : Ansible Ansible (Interface, Routing, … )

Slide 10

Slide 10 text

Switch ZTP Server Ansible Server l : Zero Touch Provisioning (ZTP) l : Ansible

Slide 11

Slide 11 text

l $# l $# " l ToR $ ! l $ ToR Server A Server B 10.1.1.1/32 10.1.1.1/32

Slide 12

Slide 12 text

l + %*& ,. A :: .C A3 0 :A 2: . A :: X P O - SL P O T AI 0I I I / : 1A1 !" (#$' { “Switch-A”:[“serverX”,…] } A , ) !" “serverX” → “Switch-A”

Slide 13

Slide 13 text

1. Private Cloud7 H,+@A6 l *E; %'F1C/9<5: l )B H,+@ ?:( $0>/3) l 7 H,2 l -I $0>/3: 3(G: VMBGP -I.D)8( l QoS4:: "#&!= H,QoS0>4:

Slide 14

Slide 14 text

2. 8,(*4Ansible%-% l 3,(2000,02 (2020/08%1) l 7"+',( (% l )/7"-%… l $!:. l )/569 (1. ; )

Slide 15

Slide 15 text

3. !'&/OS "4# l )1Mellanox + Cumulus Linux1.9 l -6$753+ 4/ 2( l " 4# … l -6$*0"%,*8

Slide 16

Slide 16 text

Agenda • LINE • •

Slide 17

Slide 17 text

1. Private CloudCR0/JMB → API1O/.@IN3 54? 2. &PE>A) LAnsible;5:-H:-( → @IN35Agent (Sync Agent)+ KF 3. $/./OS!# %D' → NAPALM

Slide 18

Slide 18 text

: Region A Region B ZTP Server API Server Switch etcd Sync Agent Switch etcd Sync Agent

Slide 19

Slide 19 text

: ZTP Region A Region B ZTP Server API Server Switch etcd Sync Agent Switch etcd Sync Agent OS Install Deploy Agent

Slide 20

Slide 20 text

: ZTP ZTP Server Switch Sync Agent DHCP Server ZTP ScriptURL ZTP Script ZTP Script Ansible - Sync Agent -

Slide 21

Slide 21 text

: ZTP ZTP Server Switch Sync Agent DHCP Server ) ZTP ScriptURL" * ZTP Script" + ZTP Script , - Ansible - Sync Agent - Ansible (% 1. ZTP Script$( # 2. Ansible '& ((!) • Agentupdate • …

Slide 22

Slide 22 text

: Region A Region B ZTP Server API Server Switch etcd Switch etcd Sync Agent watch switch data Service Sync Agent watch switch status

Slide 23

Slide 23 text

: Region A Region B ZTP Server API Server Switch etcd Switch etcd Sync Agent Service Request Update switch data Configure switch Sync Agent API Fetch switch data Covert switch data NAPALM base data model

Slide 24

Slide 24 text

: Region A Region B ZTP Server API Server Switch etcd Switch etcd Sync Agent Service Request Update switch data Configure switch Sync Agent API Fetch switch data Covert switch data Cumulus Ansible Data model Ansible Inventory

Slide 25

Slide 25 text

API Server Switch1 etcd Server Controller Sync Agent Switch2 Sync Agent

Slide 26

Slide 26 text

API Server Switch1 etcd Sync Agent ServerA Switch2 Sync Agent Server Controller API Request 10.0.0.1/32 { “hostname”: “ServerA”, “address”: “10.0.0.1/32”, “ip_version”: 4, } if1

Slide 27

Slide 27 text

API Server Switch1 etcd Sync Agent ServerA Switch2 Sync Agent Server Controller 10.0.0.1/32 Key: “/servers/config/ServerA” { “hostname”: “ServerA”, “prefixes”: [“10.0.0.1/32”], } if1

Slide 28

Slide 28 text

API Server Switch1 etcd Sync Agent ServerA Switch2 Sync Agent Server Controller 10.0.0.1/32 LLDP Watch LLDP database if1

Slide 29

Slide 29 text

API Server Switch1 etcd Sync Agent ServerA Switch2 Sync Agent Server Controller 10.0.0.1/32 LLDP Fetch Server information Key: “/servers/config/ServerA” Key: “/servers/config/ServerA” { “hostname”: “ServerA”, “prefixes”: [“10.0.0.1/32”], } if1

Slide 30

Slide 30 text

API Server Switch1 etcd Sync Agent ServerA Switch2 Sync Agent Server Controller 10.0.0.1/32 if1 Update prefix filter (Ansible) ip prefix-list filter-if1-in permit 10.0.0.1/32

Slide 31

Slide 31 text

1. Private CloudCR0/JMB → API1O/.@IN3 54? 2. &PE>A) LAnsible;5:-H:-( → @IN35Agent (Sync Agent)+ KF 3. $/./OS!# %D' → NAPALM

Slide 32

Slide 32 text

l LINE"!')@3;* 6, l 47 l ZTPAnsible3;* l 3;*.+9 l 0247 l "!'!&%( l ? "!'#A/ "!'385<>1 $-=: