Enabling Application Portability with the Greatest of Ease!
Get the Show on the Road – Application Centric
MicroservicesKen Owens, CTO Cisco Intercloud@kenowens12; @projectshipped;
@usemantl
The world’s largest taxi company owns
no vehicles.
The world’s most popular media
company creates no content.
The world’s most valuable retailer has no inventory.
The world’s largest accommodation
provider owns no real estate.
The Digital Disruption Era
30MNew devices connected every week
78%Workloads processed
in Cloud DCsby 2018
5TB+of data per person
by 2020
180BMobile apps downloaded
in 2015
277XData created by IoE devices
v. end-user
Digital Disruption On a Massive Scale
SaaS
PaaS IaaS
A Broader Perspective Is Required…
Cisco Confidential
Data Center Cloud Edge / IoT
Cisco ConfidentialSecurity Everywhere
…to Balance New and Existing Requirements
SaaS
PaaS IaaS
TraditionalApplications
ERP, Financial, Client/Server, CRM, Email
Cloud NativeApplicationsIoT, Big Data, Analytics,
Gaming
Cisco Confidential
Data Center Cloud Edge/IoT
Cisco Confidential
What are enterprise developers telling us….
6
Cloud Native Analytics
Enterprise IT
What are enterprise developers telling us….
7
Continuous DeliveryMobile First
MicroservicesMultiple Languages
Streaming DataUnstructured Data
Multiple Data SourcesMachine Learning
GovernanceSecurityCloud
DevopsOSSBSS
• Software is part of systems that require integration to specific backend so• It take weeks to create a development environment? Too much cost, red tape, politics
• Tests aren’t always accurate
• Developers can’t get easy access to backend services (databases, security, etc.)
• Non-prod environments are so different than prod?
• It takes weeks to get the first like of code deployed to production• It takes weeks to get 1 line of code (feature/bug/enhancement) deployed to prod
• Versioning, updates are way too difficult
• Hard it is to build new and innovative apps at #dayjob?
Did you ever noticed how modern development needs a boost – just about everywhere you look…
Digital Disruption Era Developer Challenges
Develop
• Run multiple services from multiple sources.
• Multiple language /technology stack.
• Run multiple storage backend.
Build
• Software Development Life Cycle (SDLC) admin control Continuous Integration (CI) flow bottleneck.
• Flexible/dynamic build slaves.
• Consistent packaging and version.
Deploy
• Increased deployment complexity.
• Traditional ops to Devops.
• Distributed systems.
• Service discovery.
• Internal load balancing
• Multiple tech stack.
10
The Cloud will enable this transformation right…..?
11
Cloud was suppose to make this easy because• Immediate availability of Infrastructure resources (Programmatic Infrastructure)
• API’s to consume, create, or integrate the services required
• Easy to develop, test, integrate, deploy, repeat continuously
• No/Limited dependencies on Internal OSS and BSS
• The organization will embrace this new model!
• Existing Processes will map to Cloud right?
12
Get the Show on the Road – Application Centric
Microservices
13
End to End User Experience for the Digital Disruption Era of Software Development and Considers Change, Opensource, and Innovation will
always be Constant for Business Success
Ask: Give us 35 minutes to get you up an running today
Shipped
ProjectManagement
ContinuousIntegration
Shipped Enhances the Existing SDLC Process and Enables Transformation
SourceControl
ContinuousDeployment
ApplicationOrchestration
DeveloperTools
ServiceAssurance
ConsulElasticsearch
IssueManagement
MesosConsulTerraformDroneGitHubGitHub
Collaboration
Spark
Build PacksEclipseVagrantDocker Compose GitHub
Build your application theWay you always haveWith the tools you alwaysuse
Deploy your application acrossA variety of internal, private, andPublic clouds, developer, Business Choice – No Lock-InMantl.io
Run your application across multiple deploymentLocations in a CI/CD &Application Intent Framework
17
• Software architecture style• complex applications are
composed of small, independent processes communicating with each other using language-agnostic APIs.
• Application services are small, highly decoupled and focus on doing a small task.
Microservices Definition
18
Microservice Advantages (Top of Mind) Scalability Resilience / fault isolation Individual service deployment Small code base with well defined boundaries. Flexibility to choose best languages and technologies Independent development, build and deployment cycle of each Microservice Enables faster features iteration Less resistance path to adopt newer technology in future
Mantl v0.3
Mantl Multi Datacenter/Cloud
MicroService-1MicroService-1MicroService-1
(Github repo)
MicroService-1MicroService-1MicroService-2
(Github repo)
MicroService-1MicroService-1Dependency-1
(Marketplace App)
MicroService-1MicroService-1Dependency-2
(Marketplace App)
Deploy Env. (Prod2)
Microservices Deployment Layout
MicroService-1(Github repo)
MicroService-2(Github repo)
Dependency-1(Marketplace App)
Dependency-2(Marketplace App)
Project
MicroService-1MicroService-1MicroService-1
(Github repo)
MicroService-1MicroService-1MicroService-2
(Github repo)
MicroService-1MicroService-1Dependency-1
(Marketplace App)
MicroService-1MicroService-1Dependency-2
(Marketplace App)
Deploy Env. (Prod1)
MicroService-1MicroService-1MicroService-1
(Github repo)
MicroService-1MicroService-1MicroService-2
(Github repo)
MicroService-1MicroService-1Dependency-1
(Marketplace App)
MicroService-1MicroService-1Dependency-2
(Marketplace App)
Deploy Env. (Staging)
Support Namespace aware ( Secure Isolation )• Deployments• Service Discovery and Wiring. • Load-Balancing
Docker containers Mesos – Marathon (MS-Infra)
Release[ Build Tag +
Config Snapshot ]
Service Discovery & Load Balancer
MicroService-1MicroService-1MicroService-1
(Github repo)
MicroService-1MicroService-1MicroService-2
(Github repo)
MicroService-1MicroService-1Dependency-1
(Marketplace App)
MicroService-1MicroService-1Dependency-2
(Marketplace App)
Docker containers Mesos – Marathon (MS-infra)
Deploy Env. (Staging)
(MS-Infra)
(MS-Infra)
ConsulTemplate
HAProxy
Consul (DNS)
Registrator
1. Registrator monitors Docker events
2. Registrator adds docker instances host:port to service-name mapping to consul.
3. Consul exposes information via inbuilt DNS
4. Consult templates watches changes in Consul
5. HAProxy configuration is updated based on changes in consul
6. Namespace naming convention environment.project.service.shipped.com
• Intense focus on application and developer centric Service Design
• Exciting new community projects – Build with us: Project Shipped microservices-infrastructure Container networking OpenStack Congress Application Intent (Policy)
It’s NOT just about where Cisco is going. - It’s a movement
• Partnering with leading DevOps tool providers:• HashiCorp• Mesosphere• OpenShift
PoC and Contribute:• Shipped-cisco.com
• Mantl.io
• developer.cisco.com/Shipped
26
Why? Alignment to Customer Value (Business Outcomes)Services vs LegosProduct Alignment vs Project AlignmentFail ForwardOrganizational AspectsDigital Disruption Era
27
Demo
Cisco CMX (Connected Mobility Experience)
Cisco CMX: MSE API
CMX API : Shipped development
Shipped
GitHub DroneBuild
CCS
MicroserviceInfrastructure
ShippedDeployDev
Laptop
Sandbox
Devnet Lab
CMX
Customer DC
CMX
35
Conclusion/Questions
Thank you
36© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID