+ All Categories
Home > Technology > Clocker: Docker in the Cloud

Clocker: Docker in the Cloud

Date post: 14-Jun-2015
Category:
Upload: andrew-kennedy
View: 303 times
Download: 0 times
Share this document with a friend
Description:
'Clocker: Docker in the Cloud' talk give at Edinburgh Docker Meetup in July 2014
Popular Tags:
21
Clocker: Docker in the Cloud +
Transcript
Page 1: Clocker: Docker in the Cloud

Clocker:  Docker  in  the  Cloud  

+  

Page 2: Clocker: Docker in the Cloud

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

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

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

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

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

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

Architecture  

Copyright 2014 by Cloudsoft Corporation Limited

Page 9: Clocker: Docker in the Cloud

Simple  Architecture  

Copyright 2014 by Cloudsoft Corporation Limited

Page 10: Clocker: Docker in the Cloud

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

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

Demonstra)on  

Page 13: Clocker: Docker in the Cloud

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

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

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

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

Demonstra)on  

Page 18: Clocker: Docker in the Cloud

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

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

Ques>ons  

•  Thanks  For  Listening!  •  Ques)ons?  

Copyright 2014 by Cloudsoft Corporation Limited

Page 21: Clocker: Docker in the Cloud

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


Recommended