Professional Documents
Culture Documents
How
1. Find this session in the Cisco Live Mobile App
2. Click “Join the Discussion”
3. Install Spark or go directly to the space
4. Enter messages/questions in the space
cs.co/ciscolivebot#BRKNMS-2530
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Agenda
Service
NSO
Service Manager Models
Script API
CDB
Mapping
Templates
Package Logic
AAA Core Engine
Manager
Develope Fast Map
r
Device
API
Alarm Manager Notification Receiver Device Manager Models
• VNFM
• Controller Apps
• EMS and NMS
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 9
Solution: Reconciliation on NSO
• Device configurations are source of truth.
• Service configurations are discovered from devices
using a custom-built reconciliation code.
• Service input parameters are identified to match
the YANG service model.
• Service instances are created “only” on NSO
(FastMap).
• Consumed resources are registered to NSO’s
resource manager (Reactive FastMap).
• Orphan services are removed from NSO.
• Fully automated.
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 10
An NSO Service Use Case
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet
description “a siteswitch service”
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet
description “a siteswitch service”
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
i/f i/f i/f i/f
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet
description “a siteswitch service”
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
i/f i/f i/f i/f
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet
description “a siteswitch service”
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
i/f i/f i/f i/f
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet
description “a siteswitch service”
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
i/f i/f i/f i/f
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet
description “a siteswitch service”
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
i/f i/f i/f i/f
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet
description “a siteswitch service”
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
i/f i/f i/f i/f
!
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet service
description “a siteswitch service” instance
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
! interface GigE 0/0/1
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
NSO Service: L2 site switch service
interface GigabitEthernet0/0/1
service instance 3 ethernet service
description “a siteswitch service” instance
encapsulation dot1q 100
rewrite ingress tag pop 1 symmetric
! interface GigE 0/0/1
bridge-domain 100
member GigabitEthernet0/0/1 service-instance 3
!
bridge-domain 100
Service Parameters:
DEVICE <- Operator
ASR903 site switch
INTERFACE-TYPE <- Operator
INTERFACE-INDEX <- Operator
From Northbound
VLAN_ID <- Operator
DESCRIPTION <- Operator
*EVC_ID <- NSO
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 12
Service Intent:
• device
What do I need in my NSO service? • interface-type
• interface-index
• vlan-id
• Service YANG model • description
• Service config template
• Resource allocation
• Service create logic id pools:
pool-{device}-{interface}
create id no allocate
idRequest()
service allocated? id
apply
template
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 21
Service Intent:
• device
Let's orchestrate the service! • interface-type
• interface-index
• vlan-id
• description
CLI,GUI,REST fail(Reason)
NSO redeploy
id pools:
pool-{device}-{interface}
Service Action
CHECK0
pre-validation new create id no allocate
idRequest()
checks service allocated? id
CHECK1
CHECK2
yes CHECK4 CHECK5
existing CHECK3
Description apply
Change template
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 22
Service Intent:
• device
• interface-type
siteswitch_multipoint action • interface-index
• vlan-id
• description
CLI,GUI,REST fail(Reason)
NSO redeploy
id pools:
pool-{device}-{interface}
Service Action
CHECK0
pre-validation new create id no allocate
idRequest()
checks service allocated? id
CHECK1
CHECK2
yes CHECK4 CHECK5
existing CHECK3
Description apply
Change template
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 23
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
/ncs:services:
siteswitch_multipoint_bridging
id-pool: pool-{device}-{interface}
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters
/ncs:services:
siteswitch_multipoint_bridging
id-pool: pool-{device}-{interface}
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters
/ncs:services:
siteswitch_multipoint_bridging
id-pool: pool-{device}-{interface}
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging
id-pool: pool-{device}-{interface}
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
does service idRequest or validation
have evc_id? idRequest(evc_id)
check on evc_id
id-pool: pool-{device}-{interface}
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
does service idRequest or validation
have evc_id? idRequest(evc_id)
check on evc_id
id-pool: pool-{device}-{interface} id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
does service idRequest or validation
have evc_id? idRequest(evc_id)
check on evc_id
id-pool: pool-{device}-{interface} id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or validation …
have evc_id? idRequest(evc_id)
check on evc_id
id-pool: pool-{device}-{interface} id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or validation …
have evc_id? idRequest(evc_id)
check on evc_id
id-pool: pool-{device}-{interface} id id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or validation …
have evc_id? idRequest(evc_id)
check on evc_id
id-pool: pool-{device}-{interface} id id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks on parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or validation …
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks onid-allocation
parameters create service
instance
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or validation …
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks onid-allocation
parameters create service services
instance created?
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or validation …
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks onid-allocation
parameters create service services
instance created?
validation=true
state=id-allocation
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or validation …
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks onid-allocation
parameters create service services create service
instance created? instance
validation=true validation=false
state=id-allocation state=commit-device
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or novalidation
validation …
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks onid-allocation
parameters create service services create service
instance created? instance
validation=true validation=false
state=id-allocation state=commit-device
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or novalidation
validation …
apply template
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
config
service1
service2
…
serviceN
id-pool: pool-{device}-{interface} id id id exit
write mem
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks onid-allocation
parameters create service services create service
commit-device
instance created? instance
validation=true validation=false
state=id-allocation state=commit-device
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or novalidation
validation …
apply template
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
config
service1
service2
…
serviceN
id-pool: pool-{device}-{interface} id id id exit
write mem
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
admin@ncs> request siteswitch-multipoint-action create-…
Service Action Flow
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitch_multipoint(device,interface,vlan_id,description)
…
siteswitch_multipoint(device,interface,vlan_id,description)
siteswitchAction
checks onid-allocation
parameters create service services create service delete invalid
commit-device
instance created? instance services
validation=true validation=false
state=id-allocation state=commit-device
/ncs:services:
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or novalidation
validation …
apply template
have evc_id? idRequest(evc_id)
check on evc_id siteswitch_multipoint_bridging{}
config
service1
service2
…
serviceN
id-pool: pool-{device}-{interface} id id id exit
write mem
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 24
Service Instances Configured!
interface Port-channel1 service instance 5 ethernet
service instance 3 ethernet description WEVO_3
description DSLAM Management encapsulation dot1q 3
encapsulation dot1q 4087 rewrite ingress tag pop 1 symmetric
rewrite ingress tag pop 1 symmetric !
! !
service instance 4 ethernet
description WEVO_2 bridge-domain 2
encapsulation dot1q 2 member Port-channel1 service-instance 4
rewrite ingress tag pop 1 symmetric member Port-channel2 service-instance 4
! !
service instance 5 ethernet bridge-domain 3
description WEVO_3 member Port-channel1 service-instance 5
encapsulation dot1q 3 member Port-channel2 service-instance 5
rewrite ingress tag pop 1 symmetric !
! bridge-domain 4087
! member Port-channel1 service-instance 3
interface Port-channel2 member Port-channel2 service-instance 3
service instance 3 ethernet !
description DSLAM Management
encapsulation dot1q 4087
rewrite ingress tag pop 1 symmetric
!
service instance 4 ethernet
description WEVO_2
encapsulation dot1q 2
rewrite ingress tag pop 1 symmetric
!
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 42
Reconciliation
Reconciliation
NSO *redeploy
Service Intent:
• device id pools:
pool-{device}-{interface}
• interface-name
• vlan-id
• description new
create id no allocate
Find New Services id
idRequest()
service allocated?
id
yes
Delete Orphan Services
apply
sync-from template
Site Switch
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 44
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
Site Switch
reconcilesitewsitchAction
/ncs:services
siteswitch_multipoint_bridging siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
Site Switch
reconcilesitewsitchAction
sync-from
/ncs:services
siteswitch_multipoint_bridging siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
...
bridge-domain ...
member interface ...
...
reconcilesitewsitchAction
sync-from
/ncs:services
siteswitch_multipoint_bridging siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
...
bridge-domain ...
member interface ...
...
reconcilesitewsitchAction
sync-from service exists
on device?
/ncs:services
siteswitch_multipoint_bridging siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
...
bridge-domain ...
member interface ...
...
reconcilesitewsitchAction
sync-from service exists delete service
on device? instance
/ncs:services
siteswitch_multipoint_bridging siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
...
bridge-domain ...
member interface ...
...
reconcilesitewsitchAction
sync-from service exists delete service
on device? instance
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
...
bridge-domain ...
member interface ...
...
reconcilesitewsitchAction
sync-from service exists delete service
delete orphan
on device?services instance
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance service
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance service
create
services
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance service
create
services
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
…
siteswitch_multipoint_bridging{}
id-pool: pool-{device}-{interface} id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance service
create
services
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or
idRequest(evc_id) …
have evc_id?
siteswitch_multipoint_bridging{}
evc_id
id-pool: pool-{device}-{interface} id id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance service
create
services
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or
idRequest(evc_id) …
have evc_id?
siteswitch_multipoint_bridging{}
evc_id
id-pool: pool-{device}-{interface} id id
id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance service
create
services
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or
idRequest(evc_id) …
have evc_id?
siteswitch_multipoint_bridging{}
evc_id evc_id
id-pool: pool-{device}-{interface} id id
id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance service
create
services
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or
idRequest(evc_id) …
have evc_id?
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
evc_id evc_id
id-pool: pool-{device}-{interface} id id
id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction
sync-from service exists delete service discover
delete orphan
on device?services instance reconcileservices
service
create
parameters
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or
idRequest(evc_id) …
have evc_id?
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
evc_id evc_id
id-pool: pool-{device}-{interface} id id
id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction un-deploy re-deploy
sync-from service exists delete service discover no-networking no-networking
delete orphan
on device?services instance reconcileservices
service
create
ignore- no-out-of-
parameters refcount sync-check
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or
idRequest(evc_id) …
have evc_id?
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
evc_id evc_id
id-pool: pool-{device}-{interface} id id
id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
admin@ncs> request reconcile_siteswitch_multipoint_bridging device CE0 Reconciliation Action Flow
/ncs:devices
device CE0
config
...
Site Switch
interface
service instance ...
... check
check
bridge-domain ... service
pool?
member interface ... existing
...
reconcilesitewsitchAction un-deploy re-deploy
sync-from service exists delete service discover no-networking no-networking
delete orphan
on device?services instance reconcileservices
service
create adjust-refcounts
ignore- no-out-of-
parameters refcount sync-check
/ncs:services
siteswitch_multipoint_bridging
siteswitch_multipoint_bridging{}
does service idRequest or
idRequest(evc_id) …
have evc_id?
siteswitch_multipoint_bridging{}
siteswitch_multipoint_bridging{}
evc_id evc_id
id-pool: pool-{device}-{interface} id id
id
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 45
Demo
What we will demo
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 63
NSO Development in CICD
Continuous Integration Platform
Update
Binaries
Continuous Artifacts Repository
Integration
System
Automated
Project Mgmt. Central Build & Test
Fetch
& Bug Source Code Quality Check
Tracking Repo.
Development
Request
Manage Tasks
Feedback
Collab.
Developers
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 66
NSO at Cisco Live Design Clinics
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 67
Cisco Spark
Questions?
Use Cisco Spark to communicate
with the speaker after the session
How
1. Find this session in the Cisco Live Mobile App
2. Click “Join the Discussion”
3. Install Spark or go directly to the space
4. Enter messages/questions in the space
cs.co/ciscolivebot#BRKNMS-2530
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
• Please complete your Online Complete Your Online
Session Evaluations after each
session
Session Evaluation
• Complete 4 Session Evaluations
& the Overall Conference
Evaluation (available from
Thursday) to receive your Cisco
Live T-shirt
• All surveys can be completed via
the Cisco Live Mobile App or the
Communication Stations
Don’t forget: Cisco Live sessions will be available
for viewing on-demand after the event at
www.ciscolive.com/global/on-demand-library/.
© 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public
Continue Your Education
• Demos in the Cisco campus
• Walk-in Self-Paced Labs
• Tech Circle
• Meet the Engineer 1:1 meetings
• Related sessions
BRKNMS-2530 © 2018 Cisco and/or its affiliates. All rights reserved. Cisco Public 70
Thank you