Clocker, the Docker Cloud Maker - Andrea Turli - Codemotion Rome 2015
Clocker: Docker in the Cloud
-
Upload
andrew-kennedy -
Category
Technology
-
view
309 -
download
0
description
Transcript of Clocker: Docker in the Cloud
![Page 1: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/1.jpg)
Clocker: Docker in the Cloud
+
![Page 2: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/2.jpg)
Clocker: Docker in the Cloud
Andrew Kennedy; Cloudso0 Corpora3on Edinburgh Docker Meetup, 10 July 2014
http://github.com/grkvlt/ @grkvlt
Copyright 2014 by Cloudsoft Corporation Limited
![Page 3: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/3.jpg)
http://clocker.io/
• Introduc)on • Clocker
– Apache Brooklyn – Apache Jclouds – Docker
• Demonstra)ons
Copyright 2014 by Cloudsoft Corporation Limited
![Page 4: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/4.jpg)
Disclaimer
Copyright 2014 by Cloudsoft Corporation Limited
Apache Brooklyn is an effort undergoing incuba3on at The Apache So0ware Founda3on (ASF), sponsored by Chip Childers. Incuba3on is required of all newly accepted projects un3l a further review indicates that the infrastructure, communica3ons, and decision making process have stabilized in a manner consistent with other successful ASF projects. While incuba3on status is not necessarily a reflec3on of the completeness or stability of the code, it does indicate that the project has yet to be fully endorsed by the ASF.
![Page 5: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/5.jpg)
Apache Brooklyn and Jclouds
• Open Source – GitHub – Apache Incubator
• Autonomic Compu)ng – Control Plane – Applica)on Management
• Cloud Library – Provider/API Agnos)c – Virtual Machines – SSH API
Copyright 2014 by Cloudsoft Corporation Limited
![Page 6: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/6.jpg)
Virtual Containers
• Jclouds Driver – Virtual Machine – Nodes – Access over SSH
• Any Underlying Provider • Add SSH Service • Docker Host Access
– Command Line – REST API
Copyright 2014 by Cloudsoft Corporation Limited
![Page 7: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/7.jpg)
Infrastructure
• Brooklyn En)ty • Docker Cloud • Resizable Clusters
– Hosts – Containers
• Installs Docker • Creates Loca)on • Intercep)on • Forwards Ports
Copyright 2014 by Cloudsoft Corporation Limited
![Page 8: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/8.jpg)
Architecture
Copyright 2014 by Cloudsoft Corporation Limited
![Page 9: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/9.jpg)
Simple Architecture
Copyright 2014 by Cloudsoft Corporation Limited
![Page 10: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/10.jpg)
Applica>on
• Brooklyn Blueprints – YAML – Java Classes
• En)ty Tree • SSH Commands • No Changes Needed
– Dockerfiles – Docker Configura)on
• Automa)on
Copyright 2014 by Cloudsoft Corporation Limited
![Page 11: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/11.jpg)
Configura>on id: tomcat-‐application name: "Tomcat Web Application" locations: -‐ my-‐docker-‐cloud services: -‐ serviceType: brooklyn.entity.webapp.tomcat.TomcatServer brooklyn.config: docker.dockerfile.url: "https://s3-‐eu-‐west-‐1.amazonaws.com/brooklyn-‐clocker/UsesJavaDockerfile" wars.root: "https://s3-‐eu-‐west-‐1.amazonaws.com/brooklyn-‐clocker/hello-‐world.war" version: "7.0.53" jmx.enabled: true jmx.agent.mode: "JMXMP" jmx.direct.port: "30000+"
Copyright 2014 by Cloudsoft Corporation Limited
![Page 12: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/12.jpg)
Demonstra)on
![Page 13: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/13.jpg)
Complex Applica>ons • Service Composi)on • Mul)ple En))es • Linking via APributes • Clusters and Groups • Enrichers and Policies • Example
– Cassandra Mul)-‐Region Deployment – Global Three-‐Tier Webapp – Apache Usergrid – OpenGamma
Copyright 2014 by Cloudsoft Corporation Limited
![Page 14: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/14.jpg)
Demand: Policy
• Data Based – Autoscaling – High Availability
• En)ty Sensors • Cluster Aggregates
– Windowed Rolling Average – Too Hot or Cold – Fixed Limits
• Time Based – Follow The Sun
Copyright 2014 by Cloudsoft Corporation Limited
![Page 15: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/15.jpg)
Supply: Placement • Adding New Containers • Choose Hosts Intelligently • Placement Strategy • Availability Zone
– Docker Host • Choices
– Breadth First – Depth First – Minimum CPU Usage
• Affinity Rules – DSL or API
Copyright 2014 by Cloudsoft Corporation Limited
![Page 16: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/16.jpg)
Supply: Affinity Rules id: tomcat-‐solr-‐application locations: -‐ my-‐docker-‐cloud services: -‐ serviceType: brooklyn.entity.nosql.solr.SolrServer brooklyn.config: affinity.rules: APPLICATION -‐ serviceType: brooklyn.entity.webapp.tomcat.TomcatServer brooklyn.config: affinity.rules: | NOT TYPE TYPE brooklyn.entity.nosql.solr.SolrServer APPLICATION
Copyright 2014 by Cloudsoft Corporation Limited
![Page 17: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/17.jpg)
Demonstra)on
![Page 18: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/18.jpg)
Roadmap • Current Version 0.5.0
– Affinity Rules – CPU and Memory Shares – Volumes
• Next Version 0.6.0 – SoZware Defined Networking – Docker Hub Integra)on – Smart Import of Exis)ng Hosts
• Future… – Libswarm? – Kubernetes? – You tell us!
Copyright 2014 by Cloudsoft Corporation Limited
![Page 19: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/19.jpg)
Summary
• What is Clocker? • Brooklyn Docker Integra)on • Cloud Agnos)c • CAMP Applica)on Blueprints • Intelligent Placement • Automated Orchestra)on
Copyright 2014 by Cloudsoft Corporation Limited
![Page 20: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/20.jpg)
Ques>ons
• Thanks For Listening! • Ques)ons?
Copyright 2014 by Cloudsoft Corporation Limited
![Page 21: Clocker: Docker in the Cloud](https://reader033.fdocuments.net/reader033/viewer/2022052600/557d8f73d8b42ab00f8b4c29/html5/thumbnails/21.jpg)
Web Resources http://clocker.io/
https://github.com/brooklyncentral/clocker/releases/v0.5.0/ https://github.com/brooklyncentral/clocker/fork
http://www.cloudsoftcorp.com/blog/2014/06/clocker-‐creating-‐a-‐docker-‐
cloud-‐with-‐apache-‐brooklyn/
http://abstractvisitorpattern.blogspot.co.uk/
http://github.com/apache/incubating-‐brooklyn/
http://twitter.com/grkvlt
http://brooklyn.io/
Copyright 2014 by Cloudsoft Corporation Limited