Upgrade to Pro — share decks privately, control downloads, hide ads and more …

[Igor Dvoretskyi] The Cloud Convergence- OpenStack and Kubernetes

[Igor Dvoretskyi] The Cloud Convergence- OpenStack and Kubernetes

Presentation from GDG DevFest Ukraine 2015 - the biggest Google related event in the country. October 23-24, Lviv. Learn more at http://devfest.gdg.org.ua/

Google Developers Group Lviv

October 24, 2015
Tweet

More Decks by Google Developers Group Lviv

Other Decks in Programming

Transcript

  1. #dfua Agenda • What the OpenStack is, why it might

    be called as the perfect solution for building clouds? • Murano as a special tool for application management in OpenStack • Containers and the benefits of application containerization • An awesome tool for managing container clusters - Kubernetes • Demo • Q&A
  2. What is OpenStack? And why it might be called as

    the best solution for building clouds?
  3. #dfua What is OpenStack? • OpenStack is a free and

    open-source cloud-computing software platform • OpenStack is a complex set of tools that provides possibility for anyone to build a ready-to-use cloud environment • OpenStack is the most popular open source cloud project in the world* *according to a survey of more than 550 respondents conducted by Linux.com and The New Stack
  4. #dfua Murano: An OpenStack App Management Tool • The Application

    catalog - a single-point to publish different ready- to-use applications • The Murano Project introduces an application catalog to OpenStack, enabling application developers and cloud administrators to publish various cloud-ready applications in a browsable categorized catalog. • Murano ready-to-use applications are being published on Community App Catalog - http://apps.openstack.org • Murano provides possibility to to be abstract from underlying IaaS resources • Murano supports multiple OS options (Linux & Windows)
  5. #dfua Containers: benefits of usage • Container - is a

    lightweight isolation technology that allows users to launch applications in an isolated environment on Linux • Containers usage is a totally different way of application management • Containers have the huge benefits, that should be the perfect reasons to prefer them over the rest technologies: ◦ Performance ◦ Repeatability ◦ Isolation ◦ Portability
  6. #dfua Containers - are not VMs Containers VMs Primary use

    case Containers are build for managing applications, not for the infrastructure VM management solution has capabilities for managing the infrastructure (network, compute, storage etc.) Guest OS support For production environments only Linux might be used natively Any common operating system Security and isolation Containers are using the shared kernel - that’s not a full isolation VMs are fully isolated, any kind of failure will not affect other VM Performance Containers do not incur performance overhead VMs incur performance overhead Application management Containers are managed as a code and do need specific management software (e.g. Kubernetes) VMs are managed as the fully- loaded machines
  7. #dfua Kubernetes as a container cluster orchestration tool • Originally

    developed as the “Borg” container orchestration tool by Google, Kubernetes has been open sourced and is available for everyone and runs everywhere • Kubernetes is a container orchestrator that runs Docker containers and supports various underlying environments • Kubernetes consists of the following core components: ◦ Pod - a colocated group of applications, running the same context (e.g. - Webserver) ◦ Controller - a loop that drives current state towards expected state (e.g. - replication controller) ◦ Service - a set of running pods that run together (e.g. - load-balanced backends) ◦ Layers - identifying metadata attached to their objects (dev vs prod) ◦ and the Docker containers themselves
  8. #dfua Kubernetes with Docker and OpenStack Murano: what do they

    provide? • Docker provides: ◦ The benefits of containers usage • Kubernetes provides: ◦ Portability, isolation from the underlying layers (infrastructure) ◦ Container management, service discovery, load balancing • Murano provides: ◦ Ready-to-install applications ◦ Cluster management ◦ Infrastructure automation and autoscaling options ◦ Application catalogue • OpenStack provides: ◦ Infrastructure as a Service for everything above