2014 ATL Ruby Meetup - Remote Deployments with Panamax

E40e0d06ed05f17385dee72a56cfda48?s=47 Rupak Ganguly
November 13, 2014

2014 ATL Ruby Meetup - Remote Deployments with Panamax

Presentation covers intro to Panamax, discussion about new features and focus on Remote Deployments to Kubernetes and CoreOS/Fleet clusters.

Panamax is open-source product from CenturyLink. You can learn how to contribute and stay involved as new features are added.

E40e0d06ed05f17385dee72a56cfda48?s=128

Rupak Ganguly

November 13, 2014
Tweet

Transcript

  1. Panamax: Docker Management for Humans Develop locally, Deploy to remote

    clustered infrastructures 1 Rupak Ganguly Technical Director at CenturyLink Labs Atlanta Ruby Meetup, Nov. 12th, 2014 v0.2.7
  2. Rupak Ganguly Work at CenturyLink Labs, Panamax core team who

    am i 2 Past worked at HP Cloud Services. OpenStack enthusiast and contributor. Open-source advocate and contributor. Rubyist, API aficionado, cloud savvy. Fan of all things virtualization and containerization. Follow me @rupakg or find out more at about.me/rupakg
  3. 3 Recap: What is Docker? An open platform for building,

    shipping and running distributed applications inside containers. The platform consists of: The Docker Engine: a portable, lightweight runtime and packaging tool. It is the CLI that we interact with. The Docker Hub: A public/private registry for docker images, supporting sharing, and automatic builds. If it works on your machine, it will work anywhere. ensures repeatability removes dependency hell
  4. A containerized Docker application, with an intuitive UI, for orchestrating

    multi-container micro-service architected applications. What is Panamax? 4 100% open source project, by CenturyLink Panamax provides: a Development Workflow for orchestrating apps a Deployment plugin architecture to deploy remotely an easy-to-use, intuitive user interface drag-and-drop orchestration one-click deployment to remote clusters search integration with Private Registries an open-source Docker App Marketplace
  5. 5 Why Panamax? Docker might be the next generation of

    virtual machines, but right now they are very hard to adopt. Docker Management for Humans Eases end users into building containerized apps using Docker, by ‘transparently insulating’ them Enables saving applications as templates, and sharing them using GitHub repositories Allows quick prototyping of complex apps by linking various services One-click deployment of applications from templates to remote Kubernetes or CoreOS/Fleet clusters
  6. Portability Develop locally and deploy remotely to clustered platforms Loosely

    coupled Easy composition of micro-services based applications Collaboration Templates make it easy to share and collaborate Management Manage applications, services, images from a single UI Transparency Open-source code encourages contribution and involvement from the community Why do developers care? 6
  7. 7 Get Panamax Requirements VirtualBox 4.2 or higher Vagrant 1.6

    or higher Installation $ brew install http://download.panamax.io/installer/brew/panamax.rb $ panamax init
  8. 8 Panamax New Features Added management and search of Private

    Registries Added management of Remote Deployment Targets Added capability to deploy applications to Remote targets Revised Performance Metrics with cAdvisor Revamped Application Service Details UI Added display of ‘docker run’ command for services Added support for showing ‘docker inspect’ for services Added support for Mounting Volumes (—-volumes-from) Added support for updating Github token And lots of bug fixes! See the Changelog for more detailed information.
  9. 9 Application Template Marketplace Share containerized applications via Panamax templates.

    Recreate apps instantly using the official public templates shared by Panamax, or, by using the templates shared by your friends. http://locomotive_cms.ngrok.com/ http://localhost:9080/
  10. 10 Panamax Demo

  11. 11 Remote Deployment Manage Remote Deployment Targets Deploy applications to

    Remote clustered infrastructures Search for a Template and Deploy to a Remote Target directly Kubernetes and Fleet Orchestrators supported out-of-the-box
  12. 12 Remote Deployment Demo Drupal/MySql on Kubernetes on GCE Drupal/MySql

    on CoreOS/Fleet on GCE
  13. 13 A Bird's Eye View

  14. 14 A Peek Inside Panamax is a multi-container Docker application

  15. 15 Agent/Adapter Architecture The Kubernetes/Fleet adapter in combination with the

    Panamax Remote Agent enables the deployment of a Panamax template to a Kubernetes/Fleet cluster.
  16. 16 How we built it?

  17. 17 How we run it? docker run -it --name panamax-api

    -v /var/panamax/panamax-api:/var/app/panamax-api -v /var/run/docker.sock:/run/docker.sock -p 8888:3000 -e "FLEETCTL_ENDPOINT=http://172.17.42.1:4001" -e "JOURNAL_ENDPOINT=http://172.17.42.1:19531" panamax/ruby /bin/bash config.vm.network "private_network", ip: "x.x.x.x" config.vm.synced_folder "/local/path/panamax", "/var/panamax", id:"core", :nfs => true, :mount_options => [‘nolock,vers=3,udp'] config.vm.network :forwarded_port, guest: 8888, host: 8888 Vagrantfile
  18. We setup a UserVoice forum to solicit feedback. Users like

    you came in and suggested features. We huddled, took the challenge and delivered a dozen features. Your Voice is heard 18 feedback.panamax.io
  19. We want you to get involved to make Panamax better!

    We can’t do it alone. We want Devops, Rubyists, UX/UI Designers, Cloud/Virtualization enthusiasts, Docker enthusiasts, Panamax fans, and more… How to get involved? 19 Contribute to Panamax by: installing and testing Panamax against your use cases providing feedback, feature requests & raising issues participating & voicing opinions in community-wide discussions enhancing the documentation on the wiki submitting code and issuing a pull request
  20. Meet the CenturyLink Labs Team An R&D team within CenturyLink

    Blogs, tutorials, videos, podcasts related to Docker http://centurylinklabs.com Panamax: - 12 13 engineers - 9 months - 3200+ cups of coffee 20
  21. 21 What are others saying? “Panamax allows developers to go

    from zero to pre-packaged, multi-container docker environments in minutes. The web interface and overall user experience is impressive.” – Gabriel Monroy, Creator Of Deis “Panamax is an exciting improvement on the Docker user experience.” – Jonathan Rudenberg, Creator Of Flynn “We’re pleased to see Panamax launched! It’s an exciting project that shows the strength and diversity of the Docker ecosystem.” – James Turnbull, Vice President Of Docker “Docker containers are great, but you need more than just one to run your application. The Panamax solution brings application templates and a public repository to share and collaborate that is elegant and simple to use.” – Borja Burgos, Founder Of Tutum
  22. We will be at RubyConf 2014 22

  23. 23 http://youtu.be/xGjBZ0lZG5E What is Panamax? & How is it different

    than Docker?
  24. We can help! Web: http://panamax.io IRC: #panamax (freenode) Twitter: @panamax_io

    Blog: http://centurylinklabs.com Code: http://github.com/CenturyLinkLabs 24 Images: CenturyLink on Docker Hub
  25. 25 Backup

  26. 26 Containers vs. VMs • VMs include a full guest

    OS with its own memory management, device drivers, etc., while containers just have the app and its dependencies. • The containers run as an isolated process on the host OS, and share the kernel with other containers. • They are more portable and efficient than VMs. It’s like sending a zip file of your document and image files rather than sending those along with OS on your machine. Source: Docker