O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Intro to Docker Containers and Microservices

1.101 visualizações

Publicada em

Presented at IBM InterConnect 2017 by Chris Rosen & Rick Osowski.

Looking for an introduction to the Docker craze? If you've heard about Docker containers and microservices, but do not have a strong understanding of what they mean, how to use them, or how to move forward, this is the session for you. This session will provide an introduction to these capabilities and give guidance on using these new capabilities to unlock your company's innovation.

Publicada em: Tecnologia
  • Seja o primeiro a comentar

Intro to Docker Containers and Microservices

  1. 1. InterConnect 2017 Introduction to Docker Containers and Microservices Chris Rosen Senior Technical Offering Manager Container Services IBM Cloud Platform Rick Osowski Senior Technical Staff Member Microservices Adoption Leader IBM Cloud Architecture & Solution Engineering 1 3/27/17
  2. 2. 2 3/27/17 Please note IBM’s statements regarding its plans, directions, and intent are subject to change or withdrawal without notice at IBM’s sole discretion. Information regarding potential future products is intended to outline our general product direction and it should not be relied on in making a purchasing decision. The information mentioned regarding potential future products is not a commitment, promise, or legal obligation to deliver any material, code or functionality. Information about potential future products may not be incorporated into any contract. The development, release, and timing of any future features or functionality described for our products remains at our sole discretion. Performance is based on measurements and projections using standard IBM benchmarks in a controlled environment. The actual throughput or performance that any user will experience will vary depending upon many factors, including considerations such as the amount of multiprogramming in the user’s job stream, the I/O configuration, the storage configuration, and the workload processed. Therefore, no assurance can be given that an individual user will achieve results similar to those stated here.
  3. 3. Everybody loves containers
  4. 4. A standard way to package an application and all its dependencies so that it can be moved between environments and run without changes. Containers work by isolating the differences between applications inside the container so that everything outside the container can be standardized. Containers IBM Bluemix Container Service | IBM Confidential | ©2017 IBM Corporation
  5. 5. IBM Bluemix Container Service Unix/chroot BSD 1982 2000 Today2008200720062005 FreeBSD jails/Solaris zones OpenVZ Parallels Cgroups/Process Containers IBM/Google AIX Wpars IBM LXC Container History Lesson
  6. 6. Introduction to Docker • Open Software – Launched March 2013 – 2.0+ billion downloads of Docker images • Open Contribution – 2000+ contributors – #2 most popular project – 185 community meet-up groups in 58 countries • Open Design – Contributors include IBM, Red Hat, Google, Microsoft, VMware, AWS, Rackspace, and others • Open Governance – 12 member governance advisory board selected by the community Enabling application development efficiency, making deployment more efficient, eliminating vendor ‘lock-in’ with true portability
  7. 7. Docker Mission Docker is an open platform for building distributed applications for developers and system administrators. Build Ship Run Anywhere Any App
  8. 8. Docker Basics – A Shipping Container for Code Image • A read-only snapshot of a container stored in Docker Hub to be used as a template for building containers Container • The standard unit in which the application service resides or transported Docker Hub/Registry • Available in SaaS or Enterprise to deploy anywhere you choose • Stores, distributes and shares container images Docker Engine • A program that creates, ships and runs application containers • Runs on any physical and virtual machine or server locally, in private or public cloud • Client communicates with Engine to execute commands SaaS Enterprise
  9. 9. Docker Containers A technical view into the shared and layered file systems technology • Docker uses a copy-on-write (union) filesystem • New files(& edits) are only visible to current/above layers • Layers allow for reuse • More containers per host • Faster start-up/download time – base layers are "cached" • Images • Tarball of layers (each layer is a tarball) Filesystem Base OS / Kernel Fedora Ubuntu tomcat tomcatliberty CNTR1 CNTR2 CNTR3 CNTR4 app1 app2 app4app3 Layer Layer Layer
  10. 10. text Why Customers are Interested in Containers Ship More Software App Portability Resource Efficiency Accelerate development, CI and CD pipelines by eliminating headaches of setting up environments and dealing with differences between environments. On average, Docker users ship software 7X more frequently1. Lightweight containers run on a single machine and share the same OS kernel while images are layered file systems sharing common files to make efficient use of RAM and disk and start instantly. Isolated containers package the application, dependencies and configurations together. These containers can then seamlessly move across environments and infrastructures. Containers are a critical foundation for distributed apps in Hybrid Clouds 1. Docker internal research of 800 respondents.
  11. 11. IBM and Business Partners Only Container Orchestration Physical InfrastructureLayer 1 Raw Compute, Storage, Network Virtual InfrastructureLayer 2 vSphere, EC2, GCP, Azure, OpenStack Operating SystemLayer 3 Ubuntu, RHEL, CoreOS, Unikernels Container EngineLayer 4 Docker, rkt, runC (OCI), Osv, LXC, LXD Orchestration/Scheduling Service Model Layer 5 Kubernetes, Docker Swarm, Marathon/Mesos, Nomad, Diego Development Workflow Opinionated Containers Layer 6 OpenShift, Cloud Foundry, Docker Cloud, Deis, Apcera, Apprenda
  12. 12. Container Orchestration Responsibilities
  13. 13. More to Containers than just Docker Container Engine Container Orchestration PaaS Serverless Swarm/ Swarm Mode
  14. 14. Everyone’s container journey starts with one container…. IBM Bluemix Container Service
  15. 15. At first the growth is easy to handle…. IBM Bluemix Container Service
  16. 16. But soon it is overwhelming… chaos reins IBM Bluemix Container Service
  17. 17. Regain control with Kubernetes IBM Bluemix Container Service
  18. 18. IBM and Business Partners Only What is Kubernetes? • Container orchestrator • Runs and manages containers • Supports multiple cloud and bare-metal environments • Inspired and informed by Google's experiences and internal systems • 100% Open source, written in Go • Manage applications, not machines • Rich ecosystem of plug-ins for scheduling, storage, networking
  19. 19. Beta available now. Combining Docker and Kubernetes to deliver powerful tools, an intuitive user experience, and built-in security and isolation to enable rapid delivery of applications - all while leveraging IBM Cloud Services including cognitive capabilities from Watson. www.ibm.com/cloud-computing/bluemix/containers IBM Bluemix Container Service
  20. 20. Kubernetes Capabilities
  21. 21. Intelligent Scheduling Self-healing Horizontal scaling Service discovery & load balancing Automated rollouts and rollbacks Secret and configuration management IBM Bluemix Container Service
  22. 22. Cluster Management Capabilities
  23. 23. Simplified Cluster Management Container Security & Privacy Design Your Own Cluster Leverages IBM Cloud & Watson Native Kubernetes Experience Integrated Operational Tools IBM Bluemix Container Service
  24. 24. Microservices
  25. 25. The genesis of the Enterprise Monolith… Browser IBM HTTP Server DB2 Database WebSphere ND WAR Store UI Catalog Service Cart Service Search Service Orders Service DB2 Database
  26. 26. Scale, speed, & strength begot microservices… RDBMS Accounts Service RDBMS Store User Interface Recommendation Service Graph DB Search Service Product Details Service Doc/NoSQL Orders Service Hadoop Shopping Analytics Cached Calls
  27. 27. How Teams Work How Apps are Built How Apps are Delivered
  28. 28. Microservices Cloud Native Containers
  29. 29. An engineering approach focused on decomposing an application into single-function modules with well defined interfaces which are independently deployed and operated by small teams who own the entire lifecycle of the service. Microservices accelerate delivery by minimizing communication and coordination between people while reducing the scope and risk of change. Microservices
  30. 30. An application architecture designed to leverage the strengths and accommodate the challenges of a standardized cloud environment, including concepts such as elastic scaling, immutable deployment, disposable instances, and less predictable infrastructure. Cloud Native
  31. 31. A standard way to package an application and all its dependencies so that it can be moved between environments and run without change. Containers work by hiding the differences between applications inside the container so that everything outside the container can be standardized. Containers
  32. 32. More Microservices Resources… microservicesTV developer.ibm.com/tv/microservices GameON gameontext.org
  33. 33. Traditional Enterprise IT High end compute infrastructure Assumes component availability Mostly centralized Consistent data Transactional Larger Codebases Easy to understand dependencies Centralized governance Network connected And so on… Comparing our journey…
  34. 34. Microservices Utility compute Infrastructure Assumes component failure Highly Distributed Eventual consistency Compensation flows Smaller Codebases Difficult to visualise Component autonomy Network complexity And so forth… Traditional Enterprise IT High end compute infrastructure Assumes component availability Mostly centralized Consistent data Transactional Larger Codebases Easy to understand dependencies Centralized governance Network connected And so on… Comparing our journey…
  35. 35. Microservices architecture Monolithic application Silo Microservices application Microservice (component) Microservice (component) Microservice (component) • Agility • Scalability • Resilience …in a nutshell
  36. 36. What are microservices?!? How do I do microservices? • Microservices compose complex distributed applications using • “small” • independent (autonomous) • replaceable • processes • that communicate via • language-agnostic APIs • which enable • agility • reliability • scalability Microservice MicroserviceMicroservice Microservice Microservices application Microservice Subscribe REST /HTTP Microservice Microservice broker API Microservice Publish API REST /HTTP Publish Service Discovery
  37. 37. 3 7 IBM Cloud Platform Domain Services Mobile Cognitive IoT Block Chain Health Video SecurityandCompliance Methods&Services Developer Services Data & Analytics Integration App Services DevOps Tooling Containers Cloud Foundry Event-Driven Infrastructure Services Compute Storage Network http://bluemix.net
  38. 38. https://github.com/istio Community Content-based routing and failure injection for polyglot microservices High performance service proxy Istio Rate limiting Request Tracing Secure Communication Circuit Breakers Evolving Microservices into a Service Mesh
  39. 39. 39IBM Bluemix Container Service | IBM Confidential | ©2017 IBM Corporation Questions???
  40. 40. 40 3/27/17 Notices and disclaimers Copyright © 2017 by International Business Machines Corporation (IBM). No part of this document may be reproduced or transmitted in any form without written permission from IBM. U.S. Government Users Restricted Rights — use, duplication or disclosure restricted by GSA ADP Schedule Contract with IBM. Information in these presentations (including information relating to products that have not yet been announced by IBM) has been reviewed for accuracy as of the date of initial publication and could include unintentional technical or typographical errors. IBM shall have no responsibility to update this information. This document is distributed “as is” without any warranty, either express or implied. In no event shall IBM be liable for any damage arising from the use of this information, including but not limited to, loss of data, business interruption, loss of profit or loss of opportunity. IBM products and services are warranted according to the terms and conditions of the agreements under which they are provided. IBM products are manufactured from new parts or new and used parts. In some cases, a product may not be new and may have been previously installed. Regardless, our warranty terms apply.” Any statements regarding IBM's future direction, intent or product plans are subject to change or withdrawal without notice. Performance data contained herein was generally obtained in a controlled, isolated environments. Customer examples are presented as illustrations of how those customers have used IBM products and the results they may have achieved. Actual performance, cost, savings or other results in other operating environments may vary. References in this document to IBM products, programs, or services does not imply that IBM intends to make such products, programs or services available in all countries in which IBM operates or does business. Workshops, sessions and associated materials may have been prepared by independent session speakers, and do not necessarily reflect the views of IBM. All materials and discussions are provided for informational purposes only, and are neither intended to, nor shall constitute legal or other guidance or advice to any individual participant or their specific situation. It is the customer’s responsibility to insure its own compliance with legal requirements and to obtain advice of competent legal counsel as to the identification and interpretation of any relevant laws and regulatory requirements that may affect the customer’s business and any actions the customer may need to take to comply with such laws. IBM does not provide legal advice or represent or warrant that its services or products will ensure that the customer is in compliance with any law.
  41. 41. 41 3/27/17 Notices and disclaimers continued Information concerning non-IBM products was obtained from the suppliers of those products, their published announcements or other publicly available sources. IBM has not tested those products in connection with this publication and cannot confirm the accuracy of performance, compatibility or any other claims related to non-IBM products. Questions on the capabilities of non-IBM products should be addressed to the suppliers of those products. IBM does not warrant the quality of any third-party products, or the ability of any such third-party products to interoperate with IBM’s products. IBM expressly disclaims all warranties, expressed or implied, including but not limited to, the implied warranties of merchantability and fitness for a particular, purpose. The provision of the information contained herein is not intended to, and does not, grant any right or license under any IBM patents, copyrights, trademarks or other intellectual property right. IBM, the IBM logo, ibm.com, Aspera®, Bluemix, Blueworks Live, CICS, Clearcase, Cognos®, DOORS®, Emptoris®, Enterprise Document Management System™, FASP®, FileNet®, Global Business Services®, Global Technology Services®, IBM ExperienceOne™, IBM SmartCloud®, IBM Social Business®, Information on Demand, ILOG, Maximo®, MQIntegrator®, MQSeries®, Netcool®, OMEGAMON, OpenPower, PureAnalytics™, PureApplication®, pureCluster™, PureCoverage®, PureData®, PureExperience®, PureFlex®, pureQuery®, pureScale®, PureSystems®, QRadar®, Rational®, Rhapsody®, Smarter Commerce®, SoDA, SPSS, Sterling Commerce®, StoredIQ, Tealeaf®, Tivoli® Trusteer®, Unica®, urban{code}®, Watson, WebSphere®, Worklight®, X-Force® and System z® Z/OS, are trademarks of International Business Machines Corporation, registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on the Web at "Copyright and trademark information" at: www.ibm.com/legal/copytrade.shtml.
  42. 42. InterConnect 2017 Thank you! 42 3/27/17 Chris Rosen crosen@us.ibm.com @ChrisRosen188 Rick Osowski osowski@us.ibm.com @rosowski