More Related Content Similar to DEVNET-1127 Unifying Application Logic with Datacenter Automation (20) More from Cisco DevNet (20) DEVNET-1127 Unifying Application Logic with Datacenter Automation3. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
• Apps & Infrastructure
• Where we are today
• Black Box Swamp
• How did we get here?
• Clear Box Solution
• How can we escape?
• Examples
Agenda
3
4. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Apps and Infrastructure (v1)
In the beginning...
4
Physical Network
New App
Infinite bandwidth Zero latency 100% reliable
Physical Stack
5. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Apps and Infrastructure (v2)
Virtualized compute, storage and network
5
Physical Network
New App
Infinite bandwidth Zero latency 100% reliable
Virtualised Stack (SDC, SDS, SDM, SDN, NFV)
6. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Apps and Infrastructure
The devops view...
6
Network
Stack
AppDev
Java, HTML, CSS, Javascript
Chef, Puppet, Juju
APIC-EM, VIRL, OpenSDN Controller
Ops
7. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Conway's Law
7
that this task will fall to others, probably affects some
design choices which the individual designer is cailed upon
to make. Most design activity requires continually making
choices. Many of these choices may be more than design
decisions; they may also be personal decisions the designer
makes about his own future. As we shall see later, the
incentives which exist in a conventional management en-
vironment can motivate choices which subvert the intent of
the sponsor.!
stages of design
The initial stages .of a design effort are concerned more
with structuring of the design activity than with the system
itsel£.2 The full-blown design activity cannot proceed until
certain preliminary milestones are passed. These include:
1. Understanding of the boun9aries, both on the design
activity and on the system to be designed, placed by
the sponsor and by the worltl's realities.
2. Achievement of a preliminary notion of the system's
organization so that design task groups can be mean-
ingfully assigned.
We shall see in detail later that the very act of organiz-
1 A related, but much more comprehensive discussion of the behavior of
system-designing organizations is found in John Kenneth Galbraith's,
The New Industrial State (Boston, Houghton Mifflin, 1967). See especially
Chapter VI, "The Technostructur<!."
2 For o discussion of the problems which may arise when the design
activity takes the form of o project in a functional environment, see C. J.
Middleton, "How to Set Up o Project Organization," Harvard Business
Review, March-April, 1967, p. 73.
28
4. Coordination among delegated tasks.
5. Consolidation of subdesigns into a single design.
It is possible that a given design activity will not pro-
ceed straight through this list. It might conceivably reorga-
nize upon discovery of a new, and obviously superior,
design concept; but such an appearance of uncertainty is
unflattering, and the very act of voluntarily abandoning a
creation is painful and expensive. Of course, from the
Dr. Conway is manager, pe-
ripheral systems research, at
Sperry Rand's Univac Div.,
where he is working on recog-
nition of continuous speech. He
has previously been a research
associate at Case Western Re-
serve Univ., and a software
consultant. .He has an MS in
physics from CaiTech and a
PhD in math from Case.
:C»ATAMATION
"Any organization that designs a
system will produce a design
whose structure is a copy of the
organization's communication
structure".
8. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Apps and Infrastructure
The CEO View
8
Communications Network
App #1
App #2
New App
App #5
App #6
App #7
App #8
My Business
9. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Microservices
Divide and conquer...
9
Communications Network
Stack
Component
Stack
Component
Stack
Component
Stack
Component
App #1
App #2
10. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Microservices
10
Communications Network
Service
App #1
App #2
Service Service Service
If I change
this service,
what breaks?
Is orchestration
done in here?
Do these services
have a choreography
between them?
11. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Black Boxes
• Internal behaviour is opaque
• External behaviour cannot be predicted
11
Communications Network
Service Service Service Service
Level of
communication
12. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Black Box Choreography
12
Service B
Service A
Service C Service D
1
2
3
4
5
6
Can you answer three questions...?
13. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
The Black Box Swamp
Kills agility. Kills flexibility. Maximizes conduct risk
13
Black Box Swamp
14. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Internet of Things
• Internal behaviour is opaque
• External behaviour cannot be predicted
• We're trapped in datacenters and slow negotiated partnerships
• We have black box swamp on the scale of billions
14
Internet
Thing
Component Component
Thing Thing Thing
Level of
communication
15. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Clear Boxes
15
16. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Microservices
Divide and conquer...
16
Network (e.g. MQ)
Stack
Component
Stack
Component
Stack
Component
Stack
Component
App #1
App #2
We saw this
slide earlier...
17. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Microservices
17
Communications Network
Service
App #1
App #2
Service Service Service
If I change
this service,
what breaks?
Is orchestration
done in here?
Do these services
have a choreography
between them?
We saw this
slide earlier...
18. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Clear Box
Visible configuration replaces opaque orchestration code.
18
SPARKL Sequencing Engine
Stack
Component
Stack
Component
Stack
Component
Stack
Component
App #2
App #1
SPARKL
Configuration
Tree
19. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Example: Simplest Possible Clear Box
19
20. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Demo:
"Javascript say cheez"
20
21. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Example - Roundtrip Clear Box
Implements a REST proxy for a websocket service implemented in Javascript
21
22. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Example Configuration
22
23. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Example Service
23
24. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Provisioning with Reason
24
25. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Unification of Flow with Automation
• SPARKL Configuration Tree expresses
• Intents
• External events and desired results
• Capabilities
• Operations available on services
• Services
• Provision and control with reason
• SPARKL Sequencing Engine
• Determines sequence
• Drives the flow of events
• Writes audit log of everything
25
Meta such as topologies, links, paths (jurisdiction, priority, cost)
Abstract such as APIC-EM, OpenSDN Controller
Virtual such as NFV, Docker, Lambda
Physical such as ASR-1000, ISR-G2
really important!
26. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Demo:
Unifying logic with automation
26
27. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
• Orchestrates these black boxes:
• Motors (left, right, forward, back)
• Sensors (light sensor, bumpers)
• Compute (compare L/R brightness etc)
• Result
• Compute service starts automatically
• Car drives towards the light!
Clear Box config drives a Robot Car
27
28. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Clear Box config does Complex Transactions
Unifying App Logic, Service Provisioning and SDN Topology
28
SPARKL clear box configuration that processes payments and receipts of money.
Works across 6 distributed black-box systems including sales.
Implements two-phase commit with rollback across 3 ledgers with journal.
Drives OpenSDN-capable topology constrained by jurisdiction, priority, cost.
Provisions services at runtime with reason.
29. © 2015 SPARKL and Cisco and/or its affiliates. All rights reserved. Cisco PublicDevZone 0058 – Unifying Application Logic with Datacenter Automation
Video:
Bringing machines closer together
29
31. Thank you
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID 31