SlideShare uma empresa Scribd logo
1 de 29
Baixar para ler offline
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
We’re ready. Are you?
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Introducing Cloud
Development with Mantl
Brian Hicks (Mantl Core Committer)
Ryan Eschinger (Mantl Core Committer)
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
•  Introduction
•  Mesos
•  Frameworks
•  Docker
•  Consul
•  Mantl
Agenda
3
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Introduction
4
Brian Hicks Ryan Eschinger
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Mesos
What is it?
Program against your
datacenter like it’s a single
pool of resources
Apache Mesos abstracts CPU, memory, storage,
and other compute resources away from machines
(physical or virtual), enabling fault-tolerant and
elastic distributed systems to easily be built and
run effectively.
5
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Mesos
2-Tier Scheduler
Frameworks:
•  Receive resources offered by the
master nodes
•  Schedule work on offered
resources
•  Are notified if workloads fail via
internal and external mechanisms
6
Mesos:
•  Determines resources available
on nodes in the cluster
•  Offers those resources to
frameworks
•  Keep track of node status (online,
offline, remaining resources)
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Mesos
Architecture
Slaves (Agents in 1.0):
•  Tell the masters which resources
are available
•  Run tasks on claimed resources
7
Masters:
•  Communicate with Schedulers
•  Keep track of Agents
•  Provide a UI for Ops / DevOps
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Mesos
Architecture
Executor:
•  A binary or script that runs on the
slave to perform work
•  Runs in an isolated environment
(can use Docker)
8
Framework (Scheduler):
•  Schedules work based on offers
received
•  Domain specific
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Framework Demos
9
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Marathon
What is it?
1
0
A cluster-wide init and
control system for services
in cgroups and Docker
containers
Marathon is an Apache Mesos framework for long-
running applications. Given that you have Mesos
running as the kernel for your datacenter, Marathon
is the init or upstart daemon.
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Marathon
Overview
1
1
•  Developed by Mesosphere
•  Controls app resources, ports,
environment variables, and
scaling
•  Runs “long-running” tasks
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Cassandra
What is it?
Distributed database
designed for scalability and
high availability
Apache Cassandra is an open source distributed
database management system designed to handle
large amounts of data across many commodity
servers, providing high availability with no single
point of failure.
1
2
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Cassandra
Overview
1
3
•  Designed to handle big data workloads across multiple nodes (ring) with no
single point of failure
•  Data is distributed among all nodes in the cluster
•  Uses the Gossip protocol for peer-to-peer communication
•  Eventually consistent (C): prioritizes Availability and Partitioning tolerance
(AP)
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Cassandra
Mesos Framework
1
4
•  Automates bootstrapping and operations of Cassandra
clusters
•  Bootstraps initial seed nodes and expands cluster to
desired number of nodes
•  Runs periodic operational tasks
•  Restart, remove, and replace nodes on failure
•  Self-contained: does not require specialized software
installed on agent nodes
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Spark
What is it?
A fast and general engine for
large-scale data processing
Apache Spark is an open source, high performance
big data processing framework. It provides high-level
APIs in Java, Scala, Python, and R. Spark includes
higher-level libraries, including support for SQL
queries, streaming data, machine learning and graph
processing.
1
5
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Spark
Overview
1
6
•  Originally developed at UC Berkeley in 2009
•  Up to 100x faster than Hadoop for large scale data processing
•  Execution engine works both in-memory and on-disk
•  Architecture
•  Data storage: supports Hadoop-compatible data sources like HDFS,
HBase, Cassandra, etc.
•  API: Scala, Java, Python, and R.
•  Resource Management: standalone, Mesos, Yarn
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Spark
on Mesos
1
7
•  Runs as a framework
•  Supports the Docker containerizer
•  2-level scheduling: Spark can make decisions about the
offers it receives from Mesos
•  Enables sophisticated scheduling scenarios
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Spark
Run Modes
1
8
•  Coarse-grained
•  Runs long-running Spark executors on every node
•  Fast startup, better for interactive sessions, but can
be inefficient
•  Fine Grained
•  Launches a Spark executor per task
•  Slower startup but can utilize resources better
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Docker
What is it?
A shipping container
system for applications
A container virtualization platform that abstracts
underlying Linux resource isolation technologies like
cgroups and kernel namespaces. Allows developers
to build, package, and ship applications that can run
anywhere*.
*anywhere that runs a 3.10+ Linux kernel
1
9
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Docker
Overview
2
0
•  Compared to virtual machines, containers are smaller, lighter weight, more
portable, and easier to deploy
•  Package an application, along with all of its dependencies, in a single
artifact
•  Use the same artifact throughout development, testing, and production
•  Reduces concerns about the compatibility in different environments
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Consul
2
1
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Consul
Discovery (HTTP)
2
2
curl localhost:8500/v1/catalog/service/marathon
[{
"Address": "10.0.113.214",
"Node": "mantl-control-01",
"ServiceAddress": "",
"ServiceID": "marathon",
"ServiceName": "marathon",
"ServicePort": 18080,
"ServiceTags": ["marathon"]
}]
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Consul
Discovery (DNS)
2
3
dig +short marathon.service.consul
10.0.113.214
10.0.220.54
10.0.131.25
dig +short marathon.service.consul SRV
1 1 18080 mantl-control-02.node.mantl.consul
1 1 18080 mantl-control-01.node.mantl.consul
1 1 18080 mantl-control-03.node.mantl-consul
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Consul
Key/Value Store
2
4
curl -X PUT -d world http://localhost:8500/v1/kv/hello
true
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Consul
Key/Value Store
2
5
curl -X GET http://localhost:8500/v1/kv/hello
[{
"CreateIndex": 223,
"Flags": 0,
"Key": "hello",
"LockIndex": 0,
"ModifyIndex": 223,
"Value": "d29ybGQ="
}]
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Consul
consul-template
2
6
global
maxconn {{or (key "service/haproxy/maxconn") 256}}
debug
{{range services}}
frontend {{.Name}}
bind *:{{key (printf "ports/%s" .Name)}}
{{range service .Name}}
server {{.Node}} {{.Address}}:{{.Port}}{{end}}
{{end}}
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Mantl
2
7
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID
Thank you
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID 28
© 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

Webinar: OpenStack Benefits for VMware
Webinar: OpenStack Benefits for VMwareWebinar: OpenStack Benefits for VMware
Webinar: OpenStack Benefits for VMware
 
KURMA - A Containerized Container Platform - KubeCon 2016
KURMA - A Containerized Container Platform - KubeCon 2016KURMA - A Containerized Container Platform - KubeCon 2016
KURMA - A Containerized Container Platform - KubeCon 2016
 
Introduction to Orchestration and DevOps with OpenStack
Introduction to Orchestration and DevOps with OpenStackIntroduction to Orchestration and DevOps with OpenStack
Introduction to Orchestration and DevOps with OpenStack
 
Real World Example of Orchestrating Docker, Node JS, NFV on OpenStack
Real World Example of Orchestrating Docker, Node JS, NFV on OpenStackReal World Example of Orchestrating Docker, Node JS, NFV on OpenStack
Real World Example of Orchestrating Docker, Node JS, NFV on OpenStack
 
OpenStack 101 Presentation
OpenStack 101 PresentationOpenStack 101 Presentation
OpenStack 101 Presentation
 
Openstack Benelux Conference 2014 Red Hat Keynote
Openstack Benelux Conference 2014  Red Hat KeynoteOpenstack Benelux Conference 2014  Red Hat Keynote
Openstack Benelux Conference 2014 Red Hat Keynote
 
[OpenStack Day in Korea 2015] Keynote 2 - Leveraging OpenStack to Realize the...
[OpenStack Day in Korea 2015] Keynote 2 - Leveraging OpenStack to Realize the...[OpenStack Day in Korea 2015] Keynote 2 - Leveraging OpenStack to Realize the...
[OpenStack Day in Korea 2015] Keynote 2 - Leveraging OpenStack to Realize the...
 
Open Source & The Internet of Things
Open Source & The Internet of ThingsOpen Source & The Internet of Things
Open Source & The Internet of Things
 
OpenStack in Action 4! Franz Meyer - What Use Case does Red Hat Enterprise ...
OpenStack in Action 4!   Franz Meyer - What Use Case does Red Hat Enterprise ...OpenStack in Action 4!   Franz Meyer - What Use Case does Red Hat Enterprise ...
OpenStack in Action 4! Franz Meyer - What Use Case does Red Hat Enterprise ...
 
Introduction To OpenStack
Introduction To OpenStackIntroduction To OpenStack
Introduction To OpenStack
 
The Future of SDN in CloudStack by Chiradeep Vittal
The Future of SDN in CloudStack by Chiradeep VittalThe Future of SDN in CloudStack by Chiradeep Vittal
The Future of SDN in CloudStack by Chiradeep Vittal
 
Open stack + Containers + Hyper-V
Open stack + Containers + Hyper-VOpen stack + Containers + Hyper-V
Open stack + Containers + Hyper-V
 
Introducing Cloud Development with Mantl
Introducing Cloud Development with MantlIntroducing Cloud Development with Mantl
Introducing Cloud Development with Mantl
 
Getting started with OpenStack
Getting started with OpenStackGetting started with OpenStack
Getting started with OpenStack
 
OpenStack Explained: Learn OpenStack architecture and the secret of a success...
OpenStack Explained: Learn OpenStack architecture and the secret of a success...OpenStack Explained: Learn OpenStack architecture and the secret of a success...
OpenStack Explained: Learn OpenStack architecture and the secret of a success...
 
Rightscale Webinar: Designing Private & Hybrid Clouds (Hosted by Citrix)
Rightscale Webinar: Designing Private & Hybrid Clouds (Hosted by Citrix)Rightscale Webinar: Designing Private & Hybrid Clouds (Hosted by Citrix)
Rightscale Webinar: Designing Private & Hybrid Clouds (Hosted by Citrix)
 
Openstackoverview-DEC2013
Openstackoverview-DEC2013Openstackoverview-DEC2013
Openstackoverview-DEC2013
 
Enterprise Ready OpenStack, Wiekus Beukes, Oracle
Enterprise Ready OpenStack,  Wiekus Beukes, OracleEnterprise Ready OpenStack,  Wiekus Beukes, Oracle
Enterprise Ready OpenStack, Wiekus Beukes, Oracle
 
Designing OpenStack Architectures
Designing OpenStack ArchitecturesDesigning OpenStack Architectures
Designing OpenStack Architectures
 
Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
 

Destaque

Destaque (14)

DEVNET-1008 Private or Public or Hybrid ? Which Cloud Should I choose?
DEVNET-1008 Private or Public or Hybrid ? Which Cloud Should I choose?DEVNET-1008 Private or Public or Hybrid ? Which Cloud Should I choose?
DEVNET-1008 Private or Public or Hybrid ? Which Cloud Should I choose?
 
Getting started with Mantl
Getting started with MantlGetting started with Mantl
Getting started with Mantl
 
Comparing Cloud-Based Infrastructure Services
Comparing Cloud-Based Infrastructure ServicesComparing Cloud-Based Infrastructure Services
Comparing Cloud-Based Infrastructure Services
 
Cloud Application Development Lifecycle
Cloud Application Development LifecycleCloud Application Development Lifecycle
Cloud Application Development Lifecycle
 
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLCDevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
DevOps and Cloud Tips and Techniques to Revolutionize Your SDLC
 
CoreOS Overview and Current Status
CoreOS Overview and Current StatusCoreOS Overview and Current Status
CoreOS Overview and Current Status
 
Service Discovery using etcd, Consul and Kubernetes
Service Discovery using etcd, Consul and KubernetesService Discovery using etcd, Consul and Kubernetes
Service Discovery using etcd, Consul and Kubernetes
 
Creating and managing a non-profit ( A Presentation By Ebele Mogo, DrPH)
Creating and managing a non-profit ( A Presentation By Ebele Mogo, DrPH)Creating and managing a non-profit ( A Presentation By Ebele Mogo, DrPH)
Creating and managing a non-profit ( A Presentation By Ebele Mogo, DrPH)
 
Basis Data
Basis DataBasis Data
Basis Data
 
3 d printing doc
3 d printing doc3 d printing doc
3 d printing doc
 
DEVNET-1190 Targeted Threat (APT) Defense for Hosted Applications
DEVNET-1190	Targeted Threat (APT) Defense for Hosted ApplicationsDEVNET-1190	Targeted Threat (APT) Defense for Hosted Applications
DEVNET-1190 Targeted Threat (APT) Defense for Hosted Applications
 
A Global Education ( A Presentation By Ebele Mogo, DrPH)
A Global Education ( A Presentation By Ebele Mogo, DrPH)A Global Education ( A Presentation By Ebele Mogo, DrPH)
A Global Education ( A Presentation By Ebele Mogo, DrPH)
 
Lookbook Fullah Sugah AW 14/15 - The October Issue
Lookbook Fullah Sugah AW 14/15 - The October IssueLookbook Fullah Sugah AW 14/15 - The October Issue
Lookbook Fullah Sugah AW 14/15 - The October Issue
 
World Population Day
World Population DayWorld Population Day
World Population Day
 

Semelhante a Introducing Cloud Development with Project Shipped and Mantl: a deep dive

OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
ragss
 
BRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdf
BRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdfBRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdf
BRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdf
ssuserc6aaff
 
Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...
Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...
Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...
Nati Shalom
 

Semelhante a Introducing Cloud Development with Project Shipped and Mantl: a deep dive (20)

Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
Oracle CloudWorld 2023 - A Practical Guide to Implementing DevOps with IaC fo...
 
OpenStack & MySQL
OpenStack & MySQLOpenStack & MySQL
OpenStack & MySQL
 
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston MeetupOpenStack + Cloud Foundry for the OpenStack Boston Meetup
OpenStack + Cloud Foundry for the OpenStack Boston Meetup
 
BRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdf
BRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdfBRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdf
BRKVIR-2601 Architecting an OpenStack Based Cloud with Cisco Infrastructure.pdf
 
OpenStack: Everything You Need to Know To Get Started
OpenStack: Everything You Need to Know To Get StartedOpenStack: Everything You Need to Know To Get Started
OpenStack: Everything You Need to Know To Get Started
 
Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018Oracle - Continuous Delivery NYC meetup, June 07, 2018
Oracle - Continuous Delivery NYC meetup, June 07, 2018
 
Opensource tools for OpenStack IAAS
Opensource tools for OpenStack IAASOpensource tools for OpenStack IAAS
Opensource tools for OpenStack IAAS
 
OpenStack: Everything You Need To Know to Get Started (ATO2014)
OpenStack: Everything You Need To Know to Get Started (ATO2014)OpenStack: Everything You Need To Know to Get Started (ATO2014)
OpenStack: Everything You Need To Know to Get Started (ATO2014)
 
BRKSDN-2115
BRKSDN-2115 BRKSDN-2115
BRKSDN-2115
 
CISCO - Presentation at Hortonworks Booth - Strata 2014
CISCO - Presentation at Hortonworks Booth - Strata 2014CISCO - Presentation at Hortonworks Booth - Strata 2014
CISCO - Presentation at Hortonworks Booth - Strata 2014
 
Openstack 101
Openstack 101Openstack 101
Openstack 101
 
Tech Talk - Cloud Transformation in 2017
Tech Talk - Cloud Transformation in 2017Tech Talk - Cloud Transformation in 2017
Tech Talk - Cloud Transformation in 2017
 
D-DAY 2015 Paas ORACLE
D-DAY 2015 Paas ORACLED-DAY 2015 Paas ORACLE
D-DAY 2015 Paas ORACLE
 
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source TriumvirateCloud foundry Docker Openstack - Leading Open Source Triumvirate
Cloud foundry Docker Openstack - Leading Open Source Triumvirate
 
Shannon McFarland OpenStack/Cisco Intro
Shannon McFarland OpenStack/Cisco IntroShannon McFarland OpenStack/Cisco Intro
Shannon McFarland OpenStack/Cisco Intro
 
OpenStack for VMware Administrators
OpenStack for VMware AdministratorsOpenStack for VMware Administrators
OpenStack for VMware Administrators
 
What's New in Grizzly & Deploying OpenStack with Puppet
What's New in Grizzly & Deploying OpenStack with PuppetWhat's New in Grizzly & Deploying OpenStack with Puppet
What's New in Grizzly & Deploying OpenStack with Puppet
 
tack Deployment in the Enterprise
tack Deployment in the Enterprisetack Deployment in the Enterprise
tack Deployment in the Enterprise
 
Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...
Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...
Real World Application Orchestration Made Easy on VMware vCloud Air, vSphere ...
 
DevOps and BigData Analytics
DevOps and BigData Analytics DevOps and BigData Analytics
DevOps and BigData Analytics
 

Mais de Cisco DevNet

NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
Cisco DevNet
 

Mais de Cisco DevNet (20)

How to Contribute to Ansible
How to Contribute to AnsibleHow to Contribute to Ansible
How to Contribute to Ansible
 
Rome 2017: Building advanced voice assistants and chat bots
Rome 2017: Building advanced voice assistants and chat botsRome 2017: Building advanced voice assistants and chat bots
Rome 2017: Building advanced voice assistants and chat bots
 
How to Build Advanced Voice Assistants and Chatbots
How to Build Advanced Voice Assistants and ChatbotsHow to Build Advanced Voice Assistants and Chatbots
How to Build Advanced Voice Assistants and Chatbots
 
Cisco Spark and Tropo and the Programmable Web
Cisco Spark and Tropo and the Programmable WebCisco Spark and Tropo and the Programmable Web
Cisco Spark and Tropo and the Programmable Web
 
Device Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play SolutionDevice Programmability with Cisco Plug-n-Play Solution
Device Programmability with Cisco Plug-n-Play Solution
 
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap APIBuilding a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
Building a WiFi Hotspot with NodeJS: Cisco Meraki - ExCap API
 
Application Visibility and Experience through Flexible Netflow
Application Visibility and Experience through Flexible NetflowApplication Visibility and Experience through Flexible Netflow
Application Visibility and Experience through Flexible Netflow
 
WAN Automation Engine API Deep Dive
WAN Automation Engine API Deep DiveWAN Automation Engine API Deep Dive
WAN Automation Engine API Deep Dive
 
Cisco's Open Device Programmability Strategy: Open Discussion
Cisco's Open Device Programmability Strategy: Open DiscussionCisco's Open Device Programmability Strategy: Open Discussion
Cisco's Open Device Programmability Strategy: Open Discussion
 
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
Open Device Programmability: Hands-on Intro to RESTCONF (and a bit of NETCONF)
 
NETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network DevicesNETCONF & YANG Enablement of Network Devices
NETCONF & YANG Enablement of Network Devices
 
UCS Management APIs A Technical Deep Dive
UCS Management APIs A Technical Deep DiveUCS Management APIs A Technical Deep Dive
UCS Management APIs A Technical Deep Dive
 
OpenStack Enabling DevOps
OpenStack Enabling DevOpsOpenStack Enabling DevOps
OpenStack Enabling DevOps
 
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
NetDevOps for the Network Dude: How to get started with API's, Ansible and Py...
 
Getting Started: Developing Tropo Applications
Getting Started: Developing Tropo ApplicationsGetting Started: Developing Tropo Applications
Getting Started: Developing Tropo Applications
 
Cisco Spark & Tropo API Workshop
Cisco Spark & Tropo API WorkshopCisco Spark & Tropo API Workshop
Cisco Spark & Tropo API Workshop
 
Coding 102 REST API Basics Using Spark
Coding 102 REST API Basics Using SparkCoding 102 REST API Basics Using Spark
Coding 102 REST API Basics Using Spark
 
Cisco APIs: An Interactive Assistant for the Web2Day Developer Conference
Cisco APIs: An Interactive Assistant for the Web2Day Developer ConferenceCisco APIs: An Interactive Assistant for the Web2Day Developer Conference
Cisco APIs: An Interactive Assistant for the Web2Day Developer Conference
 
DevNet Express - Spark & Tropo API - Lisbon May 2016
DevNet Express - Spark & Tropo API - Lisbon May 2016DevNet Express - Spark & Tropo API - Lisbon May 2016
DevNet Express - Spark & Tropo API - Lisbon May 2016
 
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
DevNet @TAG - Spark & Tropo APIs - Milan/Rome May 2016
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
WSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering DevelopersWSO2's API Vision: Unifying Control, Empowering Developers
WSO2's API Vision: Unifying Control, Empowering Developers
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 

Introducing Cloud Development with Project Shipped and Mantl: a deep dive

  • 1. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID We’re ready. Are you?
  • 2. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Introducing Cloud Development with Mantl Brian Hicks (Mantl Core Committer) Ryan Eschinger (Mantl Core Committer)
  • 3. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID •  Introduction •  Mesos •  Frameworks •  Docker •  Consul •  Mantl Agenda 3
  • 4. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Introduction 4 Brian Hicks Ryan Eschinger
  • 5. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Mesos What is it? Program against your datacenter like it’s a single pool of resources Apache Mesos abstracts CPU, memory, storage, and other compute resources away from machines (physical or virtual), enabling fault-tolerant and elastic distributed systems to easily be built and run effectively. 5
  • 6. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Mesos 2-Tier Scheduler Frameworks: •  Receive resources offered by the master nodes •  Schedule work on offered resources •  Are notified if workloads fail via internal and external mechanisms 6 Mesos: •  Determines resources available on nodes in the cluster •  Offers those resources to frameworks •  Keep track of node status (online, offline, remaining resources)
  • 7. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Mesos Architecture Slaves (Agents in 1.0): •  Tell the masters which resources are available •  Run tasks on claimed resources 7 Masters: •  Communicate with Schedulers •  Keep track of Agents •  Provide a UI for Ops / DevOps
  • 8. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Mesos Architecture Executor: •  A binary or script that runs on the slave to perform work •  Runs in an isolated environment (can use Docker) 8 Framework (Scheduler): •  Schedules work based on offers received •  Domain specific
  • 9. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Framework Demos 9
  • 10. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Marathon What is it? 1 0 A cluster-wide init and control system for services in cgroups and Docker containers Marathon is an Apache Mesos framework for long- running applications. Given that you have Mesos running as the kernel for your datacenter, Marathon is the init or upstart daemon.
  • 11. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Marathon Overview 1 1 •  Developed by Mesosphere •  Controls app resources, ports, environment variables, and scaling •  Runs “long-running” tasks
  • 12. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Cassandra What is it? Distributed database designed for scalability and high availability Apache Cassandra is an open source distributed database management system designed to handle large amounts of data across many commodity servers, providing high availability with no single point of failure. 1 2
  • 13. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Cassandra Overview 1 3 •  Designed to handle big data workloads across multiple nodes (ring) with no single point of failure •  Data is distributed among all nodes in the cluster •  Uses the Gossip protocol for peer-to-peer communication •  Eventually consistent (C): prioritizes Availability and Partitioning tolerance (AP)
  • 14. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Cassandra Mesos Framework 1 4 •  Automates bootstrapping and operations of Cassandra clusters •  Bootstraps initial seed nodes and expands cluster to desired number of nodes •  Runs periodic operational tasks •  Restart, remove, and replace nodes on failure •  Self-contained: does not require specialized software installed on agent nodes
  • 15. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Spark What is it? A fast and general engine for large-scale data processing Apache Spark is an open source, high performance big data processing framework. It provides high-level APIs in Java, Scala, Python, and R. Spark includes higher-level libraries, including support for SQL queries, streaming data, machine learning and graph processing. 1 5
  • 16. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Spark Overview 1 6 •  Originally developed at UC Berkeley in 2009 •  Up to 100x faster than Hadoop for large scale data processing •  Execution engine works both in-memory and on-disk •  Architecture •  Data storage: supports Hadoop-compatible data sources like HDFS, HBase, Cassandra, etc. •  API: Scala, Java, Python, and R. •  Resource Management: standalone, Mesos, Yarn
  • 17. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Spark on Mesos 1 7 •  Runs as a framework •  Supports the Docker containerizer •  2-level scheduling: Spark can make decisions about the offers it receives from Mesos •  Enables sophisticated scheduling scenarios
  • 18. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Spark Run Modes 1 8 •  Coarse-grained •  Runs long-running Spark executors on every node •  Fast startup, better for interactive sessions, but can be inefficient •  Fine Grained •  Launches a Spark executor per task •  Slower startup but can utilize resources better
  • 19. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Docker What is it? A shipping container system for applications A container virtualization platform that abstracts underlying Linux resource isolation technologies like cgroups and kernel namespaces. Allows developers to build, package, and ship applications that can run anywhere*. *anywhere that runs a 3.10+ Linux kernel 1 9
  • 20. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Docker Overview 2 0 •  Compared to virtual machines, containers are smaller, lighter weight, more portable, and easier to deploy •  Package an application, along with all of its dependencies, in a single artifact •  Use the same artifact throughout development, testing, and production •  Reduces concerns about the compatibility in different environments
  • 21. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Consul 2 1
  • 22. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Consul Discovery (HTTP) 2 2 curl localhost:8500/v1/catalog/service/marathon [{ "Address": "10.0.113.214", "Node": "mantl-control-01", "ServiceAddress": "", "ServiceID": "marathon", "ServiceName": "marathon", "ServicePort": 18080, "ServiceTags": ["marathon"] }]
  • 23. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Consul Discovery (DNS) 2 3 dig +short marathon.service.consul 10.0.113.214 10.0.220.54 10.0.131.25 dig +short marathon.service.consul SRV 1 1 18080 mantl-control-02.node.mantl.consul 1 1 18080 mantl-control-01.node.mantl.consul 1 1 18080 mantl-control-03.node.mantl-consul
  • 24. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Consul Key/Value Store 2 4 curl -X PUT -d world http://localhost:8500/v1/kv/hello true
  • 25. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Consul Key/Value Store 2 5 curl -X GET http://localhost:8500/v1/kv/hello [{ "CreateIndex": 223, "Flags": 0, "Key": "hello", "LockIndex": 0, "ModifyIndex": 223, "Value": "d29ybGQ=" }]
  • 26. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Consul consul-template 2 6 global maxconn {{or (key "service/haproxy/maxconn") 256}} debug {{range services}} frontend {{.Name}} bind *:{{key (printf "ports/%s" .Name)}} {{range service .Name}} server {{.Node}} {{.Address}}:{{.Port}}{{end}} {{end}}
  • 27. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Mantl 2 7
  • 28. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID Thank you © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID 28
  • 29. © 2015 Cisco and/or its affiliates. All rights reserved. Cisco PublicPresentation ID