Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

POV - Practical Containerization

24 views

Published on

A Point of View I created on the benefits of lightweight virtualization (containers/serverless) and how to apply effectively within the enterprise.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

POV - Practical Containerization

  1. 1. Practical Containerization Frameworks and Best Practices for Achieving the Benefits of Lightweight Virtualization Robert Greiner Principal (214) 986-0739 robert.greiner@parivedasolutions.com Pariveda Solutions, Inc. 2811 McKinney Ave Suite 220 Dallas TX, 75204
  2. 2. 2 © Pariveda Solutions. Confidential & Proprietary. Table of Contents § Background on Containers § Benefits & Business Opportunities § Adoption Challenges & Pariveda’s Container Framework § Pariveda’s Approach § Appendix
  3. 3. 3 © Pariveda Solutions. Confidential & Proprietary. Containerization is the next evolution in virtualization, consisting of a platform of tools, technical architecture, and processes Organizations must quickly begin adopting Containerization to enhance cloud adoption, decrease time to market, and reduce waste
  4. 4. 4 © Pariveda Solutions. Confidential & Proprietary. Organizations are struggling as they attempt to migrate to the cloud, maintain production systems, and build new functionality to meet market demands The Problem § Moving to the cloud is hard. Legacy applications were not built with the cloud in mind. As a result, components are tightly coupled and deployment footprints are too large/complex to make effective use of cloud services. § Applications are becoming more distributed. With ever increasing customer demands for performance and features, paired with recent advances in NoSQL and distributed processing technologies (caching, microservices, etc.), applications are becoming more disparate, introducing additional complexity as software is built and run. § Automation is expensive. Operations tasks now require expensive developer-level talent to automate routine tasks such as application deployments and Operating System patching – tying up valuable resources. § Today’s on-premises infrastructure configurations are inefficient. Every deployed application, whether it is run on a VM or physical hardware, requires a host of expensive – and redundant – resources (storage, OS, networking) that add minimal value to the application. The Solution § Organizations should adopt Containerization into their set of capabilities to alleviate pain in building, deploying, and running applications – both on- premises and in the cloud. § Pariveda has created several tools, frameworks, and processes to help any organization effectively gain the benefits of containers throughout the Enterprise § Pariveda excels at delivering emerging technology and architecture projects for our clients, increasing organizational capabilities along the way IncreasedEfficiency q Up to a 75% increase in CPU utilization over standard VMs q More deployments per server means you spend more time running your applications,not Windows. Cloud Ready q Containers can run anywhere: on-premises,in the cloud,or a hybrid cloud configuration q Applications and dependencies are packaged in a container, resulting in high portability Internet Scale q Containers help enable massive scale Reduce Waste q Containers reduce non-value- add tasks (e.g. patching OS) q Re-allocate developer resources to building new features
  5. 5. 5 © Pariveda Solutions. Confidential & Proprietary. Container technology is the next evolution in virtualization that enables significant improvements in how organizations build, deploy, and run applications § Containers are lightweightVirtual Machines § Standard “Hypervisor” is replaced with Container Engine § Application is wrapped into a complete file-system § Application runs the same, regardless of environment– deploy anywhere § Will run on any computer,any infrastructure, any cloud, and any OS Physical Servers Virtual Machines Containers • One application per machine • Months to provision • Lifespan = years • High license costs • High maintenance costs • Large physical space investment • One OS per machine • Low modularization • Difficult to scale • One application per OS • Days to provision • Lifespan = months • High license costs • High maintenance costs • Reduced physical space needs • Many OSs per machine • Some modularization • Enterprise scale • Many applications per OS • Seconds to provision • Lifespan = days / weeks • Lower license costs • Reduced maintenancecosts • Minimal physical space needs • Many containers per OS • High Modularization (Future Proof) • Internet scale Apps OS Idle Focus more of your infrastructure on running applications, not Windows Illustrative HardwareFootprint
  6. 6. 6 © Pariveda Solutions. Confidential & Proprietary. Containers provide a wide range of practical characteristics, which deliver value to an organization throughout the application lifecycle Modularization The modularized nature ofcontainers enables incremental modernization oflegacy applications Isolation Reduce production errors with minimal investmentin updating legacy codebase. Segregate legacy or COTS applications from other mission critical systems Agility Smaller more straightforward deployments means teams can push functionality to production faster and more frequently Portability Deploy everywhere:any OS, any datacenter, and any cloud Consistency All environments match production,eliminating “snowflake” systems and reducing errors when promoting functionality to new environments Efficiency More applications deployed per server means you spend more time running your applications,notWindows – more capacity for business work Modularization and Isolation Example Use Case Application Portfolio Isolate Application Containerize and Deploy Containerize and Deploy Incremental Modernization
  7. 7. 7 © Pariveda Solutions. Confidential & Proprietary. Table of Contents § Background on Containers § Benefits & Business Opportunities § Adoption Challenges & Pariveda’s Container Framework § Pariveda’s Approach § Appendix
  8. 8. 8 © Pariveda Solutions. Confidential & Proprietary. Containers provide several benefits across the organization and should be considered at each stage of the application lifecycle for maximum impact Plan Build Validate Release Operate App Lifecycle Management Code Management Quality Management Release Management Operations Management Defer Vendor Commitments Version Tracking Portable Environment Configuration Deploy to any Datacenter Enhance Cloud Adoption Faster Developer Onboarding Dependency Isolation Isolate “Problem” Containers Faster Deployments Multi-Datacenter (cloud / on-premises) Common Baseline Re-Usable Components Enable Predictable Integration Tests Simplify Migration Between Environments Increase Deployment Density Parallel Testing More Consistent Deployments Reduce Maintenance (patching, etc.) Consistent Environments More Effective Information Sharing Modular Development Approach Improved Debugging Accelerate DevOps & Continuous Integration Container Marketplace Mitigate Vendor Lock In
  9. 9. 9 © Pariveda Solutions. Confidential & Proprietary. Organizations should focus on achieving a specific set of benefits based on their individualized needs as they seek to serve their customers Plan Build Validate Release Operate App Lifecycle Management Code Management Quality Management Release Management Operations Management Defer Vendor Commitments Version Tracking Portable Environment Configuration Deploy to any Datacenter Enhance Cloud Adoption Faster Developer Onboarding Dependency Isolation Isolate “Problem” Containers Faster Deployments Multi-Datacenter (cloud / on-premises) Common Baseline Re-Usable Components Enable Predictable Integration Tests Simplify Migration Between Environments Increase Deployment Density Parallel Testing More Consistent Deployments Reduce Maintenance (patching, etc.) Consistent Environments More Effective Information Sharing Modular Development Approach Improved Debugging Accelerate DevOps & Continuous Integration Container Marketplace Mitigate Vendor Lock In Case study presented by Lyft at DockerCon 2015
  10. 10. 10 © Pariveda Solutions. Confidential & Proprietary. Organizations are continually finding unique and beneficial use cases for containers, solving a wide array of problems and driving more value to their customers Instant Scalability – Hybrid Cloud Ongoing project at GE Appliances Division to move applications to new public and private clouds. Goal is 1,000+ containers per “server blade”. Reduce Waste Large growth at PayPal caused server sprawl in all environments (1,000+ servers running CI tools @ < 5% utilization) – containers helped increase utilization Eliminate Production Errors Business Insider leveraged containers to segregate a portfolio of applications deployed from a monolithic codebase. Resource segregation reduced ops errors. Better 3rd Party Integration Orbitz converted a 2-tier web application into a suite of 500+ disparate applications and microservices to facilitate integration with 3rd party travel data Modernization CapitalOne is using containers to build a next-generation analytics platform using NoSQL and Big Data – smaller teams and deployment footprint, easier adoption
  11. 11. 11 © Pariveda Solutions. Confidential & Proprietary. In addition to typical benefits realized through container adoption, we see a potential for a higher value-add use case in enhancing cloud adoption 1. Analyze application portfolio and assess migration candidates 2. Break out application components into “horizontal” segments 3. Setup container configuration and secure networking tunnels 4. Setup and configure logging / monitoring and storage 5. Create container image for application 6. Add container image to container registry 7. Deploy containerized application to any datacenter Azure AWS On-Prem Hybrid Application Portfolio Container Registry Applications and Data Container Migration Workflow 1 3 4 5 6 72 Increased modularization of applications – enable multi-use services All major cloud providers are compatible with containers Applications can be deployed in any datacenter or cloud Effective “snapshot” of applications before moving to the cloud Lift-and-Shift application – automate and ”cloudify” later Leverage registry service to easily distribute images Container networking encrypts data “in flight” Approach Benefits Cloud Adoption Reference Architecture
  12. 12. 12 © Pariveda Solutions. Confidential & Proprietary. Table of Contents § Background on Containers § Benefits & Business Opportunities § Adoption Challenges & Pariveda’s Container Framework § Pariveda’s Approach § Appendix
  13. 13. 13 © Pariveda Solutions. Confidential & Proprietary. While container technology is still new; adoption is growing exponentially as available functionality, 3rd party tools, and enterprise-level maturity improves Platform Offerings Increased implementation of out-of-the- box solutions containingDocker as a first- class citizen for production deployments Infrastructure Providers Cloud providers are investing heavily in partnerships and container-as-a-service functionality aimed at enabling container adoption Internet Scale Widespread adoption of internet-scale organizations are already gainingbenefits from containers in their productionand cloud environments Over 1.2 Billion Container Engine Downloads Over 240,000 “containerized” applications Leading container engineDocker is Enterprise Ready – June 2014 Jun ‘14 Over 50,000 Github repositories usingcontainers Over 4,000,000developers using Docker
  14. 14. 14 © Pariveda Solutions. Confidential & Proprietary. The container landscape is constantly changing and organizations should partner with those who have proven experience implementing new technologies Container technology is worth investing resources in today. We recommend organizations begin by learning and implementing at the micro level so larger benefits can be more easily realized in the near future. Container Tools Assessment (Illustrative) Technology Stack Workload Assessment Org. Capabilities Containers share resources with Operating Systems, limiting isolation and server portability OS & Dependency Support Organizations are not yet equipped to handle building, deploying, andrunningcontainer apps Organizational Capabilities The fast paced and Open Source nature of container technology means frequentchange Fast Paced New Technology Container technology is not applicable for all work streams, and not ready for others Work Stream Suitability Technology Standardization Pariveda will help organizations standardize deploying applications arounda core OS to make container deployments more efficient. Skills Development Pariveda excels at partnering with clients to increase technical capabilities throughoutthe organization with training and project work. Navigating Change Be prepared for the container ecosystem to evolve. Pariveda can help assess the best tools andprocesses to implement with the future in mind. Where to Get Started Leverage Pariveda’s Workload Assessment tool to understand and prioritize container migration across a portfolio of applications Pitfalls Mitigation
  15. 15. 15 © Pariveda Solutions. Confidential & Proprietary. Maturity An organization’s ability to successfully gain the benefits of Containerization relies on understanding and improving on existing capabilities across the Enterprise Repeatable andwell documentedapproach to building,deploying,and running software applications. Processes are highly automatedandcontain advanced monitoring and error handling in order to handle potential issues. Large investments in automation, virtualization, andcloud initiatives – new development is cloud focused. Adding additional scale is highly automated,with heavy use of containers, andtakes minutes to hours. Repeatable andwell documentedapproach to building,deploying,and running software applications. Significant time is spent keepingthe process documentation updated andthe organizationunderstands andinvests in automation, virtualization, and cloud initiatives to continually realize benefits throughoutthe enterprise. Adding additional scale is highly automated andtakes hours or days. Basic, but well documented approachto building, deploying, andrunningsoftware applications. The “happy path” is covered well and few errors occur when directions are closely followed. Some disparate automation “scripts” are generated to help with concrete tasks and deployment work is somewhat predictable. Defect fixes are time consuming, but do not overwhelm the team. Addingadditional scale is straightforward and takes days or weeks. Approach to building,deploying,and runningsoftware applications has little organization or repeatability. Common processes are documented, but still error prone. Existing documentationbecomes quickly obsoleteas productionissues outweigh the needto generate repeatable processes. Development work is rarely planned well and is reactionary basedon the urgentvs. important. Addingadditional scale is complex and takes weeks. Adaptive Capable Nascent Disorganized approachto building, deploying, andrunningsoftware applications – both custom and COTS. No two deployments are the same, all work is manual in nature, groups frequently are doing disjoint and duplicatework. Troubleshooting andplanning are extremely difficult. Development work, even implementing small defect fixes, is error prone and painful due to thesprawl of infrastructure andcodingpractices. Adding additional scale is complex and takes weeks or months. Adhoc Effective
  16. 16. 16 © Pariveda Solutions. Confidential & Proprietary. Pariveda’s Enterprise Architecture Framework provides a holistic view of organizational capabilities in order to gain the maximum benefits from Containerization Pariveda Enterprise Architecture Framework Enterprise Focus Consider which applications needto change, how changes affect the infrastructure and cloud strategy Increase Maturity Consider structural changes within the organization, assessing existingskillsets, and focusing on buildingcapabilities External Impact Consider external impacts of Containerization on both ends of thevalue chain - Suppliers and Customers § While starting small is key, organizations should shiftto an Enterprise focus as they increase comfort with containers § Implementation of new technologies can have unforeseen effects on customers and suppliers § Assessing the current state of the organization and understanding the desired future state is key § The Pariveda Enterprise Architecture Framework has helped several ofour clients significantly improve capabilities while increasing the probability ofproject success Illustrative
  17. 17. 17 © Pariveda Solutions. Confidential & Proprietary. Table of Contents § Background on Containers § Benefits & Business Opportunities § Adoption Challenges & Pariveda’s Container Framework § Pariveda’s Approach § Appendix
  18. 18. 18 © Pariveda Solutions. Confidential & Proprietary. Pariveda has a proven track record of technical delivery and can help organizations implement Containerization throughout the Enterprise Assess Production workload inventory Workload readiness scorecard Organizational capabilities assessment Custom & COTS hosting assessment Vendor and cloud roadmap overview Strategize Plan Execute Narrow potential workload migration candidates Proof of Concept & Tool analysis Organizational Readiness Define team structure based on capabilities Vendor lock-in considerations Assess Modernization opportunities Prioritize workload migration Final tool selections Scope and deliverables Create timelines & obtain approvals Define training plan Continue to update workloadinventory Environment setup Execute plan – delivery & documentation Improve organizational capabilities Deployment & warranty period Project handoff Example Case of Pariveda’s Container Workload Assessment (Illustrative)
  19. 19. 19 © Pariveda Solutions. Confidential & Proprietary. Using our Assessment for implementation Organizations should begin gaining benefits from Containerization today. Pariveda is uniquely positioned to help organizations succeed with containerization through leveraging our frameworks, people, and experience in this space.
  20. 20. 20 © Pariveda Solutions. Confidential & Proprietary. Table of Contents § Background on Containers § Benefits & Business Opportunities § Adoption Challenges & Pariveda’s Container Framework § Pariveda’s Approach § Appendix
  21. 21. 21 © Pariveda Solutions. Confidential & Proprietary. References § https://www.cutter.com/article/containerization-boon-devops-within-organization- 470656 § https://www.docker.com/what-docker § Using Docker - http://shop.oreilly.com/product/0636920035671.do § https://www.docker.com/customers § http://www.teksystems.com/resources/research/featured-research/it-trends/annual-it-forecast-2014 § http://www2.deloitte.com/uk/en/pages/technol ogy/articles/cio-survey.html § https://blogs.technet.microsoft.com/kevinr emde/2011/04/03/saas-paas-and-iaas-oh-my-cloudy-april-part-3/ § https://en.wikipedia.org/wiki/Capability_Maturity_Model_Integration § http://thenewstack.i o/containers-disrupting- devops-infographic/?utm_content=22199868&utm_medium=social&utm_source=twitter § https://en.wikipedia.org/wiki/Diffusion_of_innovations § Windows Containers: What, Why, and How - https://www.youtube.com/watch?v=BR aEC1KKJsg § https://azure.microsoft.com/en-us/blog/contai ners-docker-windows-and-trends/ § http://www.networkcomputing.com/data-centers/docker-love-it-or-leave-it-6-things-to-consi der/d/d-id/1322787?_mc=RSS_NWC_EDT&image_number=1 § http://www.computerhistory.org/revolution/mai nframe-computers/7/intro § http://www.infoworld.com/article/2839284/application-virtualization/10-open-source-tools-to-make-docker-even-more-powerful.html § https://www.datadoghq.com/docker-adoption/ § http://www.slideshare.net/Docker/dockercon-sf-2015- getting-started-w-d § http://www.slideshare.net/Docker/dockercon-sf-2015- ben-golubs-keynote-day- 1 § https://blog.docker.com/2015/01/docker-project-2014-a-whirlwind-year-in-review/ § http://searchservervirtualization.techtarget.com/feature/Five-cons-of-container-technology § https://www.ctl.io/developers/blog/post/how-to-migrate-legacy-applications-into-docker-contai ners/ § http://www.informationweek.com/strategic-cio/it-strategy/containers-explained-9-essentials-you-need-to-know/a/d-id/1318961 § https://virtualizationreview.com/articles/2015/12/01/what-will-2016-bring-for-containers.aspx § http://blog.docker.com/2015/11/docker-hub-billion- pulls/ § https://www.docker.com/products/use-cases § https://www.docker.com/sites/default/files/UseCase/RA_CI%20with%20Docker _08.25.2015.pdf (Reference Architecture) § https://blog.docker.com/2015/07/dockercon-2015-videos-day-1- use-case/ § https://blog.docker.com/2015/07/dockercon-2015-videos-day-2- use-case/
  22. 22. 22 © Pariveda Solutions. Confidential & Proprietary. High Level Container Architecture Infrastructure Host OS Hypervisor Guest OS Guest OS Lib 1 App 1 Lib 2 App 2 Infrastructure Operating System Container Engine Lib 1 App 1 Virtual Machines Containers VM Container Guest OS Lib 2 (copy) App 3 Lib 2 (shared) App 2 App 3
  23. 23. 23 © Pariveda Solutions. Confidential & Proprietary. Container Responsibilities Matrix ServerlessContainersCloud IaaSVirtualPhysical Applications Data Runtime Middleware OS & Patch Virtualization Servers Storage Networking Applications Data Runtime Middleware OS & Patch Virtualization Servers Storage Networking Applications Data Runtime Middleware OS & Patch Virtualization Servers Storage Networking Applications Data Runtime Middleware OS & Patch Virtualization Servers Storage Networking Applications Data Runtime Middleware OS & Patch Virtualization Servers Storage Networking YouManage OthersManage Physical OptionalContainerEngine
  24. 24. 24 © Pariveda Solutions. Confidential & Proprietary. EnterpriseOps – The Confluence of Enterprise Automation, Platforms, and Messaging Automation (DevOps / CI) Messaging (APIs / microservices) Platform (Containers, Cloud) Enables faster, more lightweight, deployments with less redundancy across development and infrastructure teams Fully realize the benefits of building and deploying discrete, domain specific, suites of services to power the enterprise Deploy service domains in independent, isolated, fully- scalable containers using any technology. Potential for shift to lightweight teams to own entire product lifecycle
  25. 25. 25 © Pariveda Solutions. Confidential & Proprietary. Pariveda’s Container Workload Assessment Evaluate Further Examples 2-Tier Web Application Monolith API Services Legacy “Brownfield” Systems “Hybrid” Cloud Applications Best Candidates Examples Greenfield Development Microservices Distributed Systems Cloud Deployments Edge Cases Examples Intranet sites COTS Applications POC / Quick Win Examples Microsites 3rd Party Utilities Non-production environments “Offline” Processors Less Applicable Less Common Use Case / Challenging More Applicable ExcellentUse Case / Straightforward HighValue External/HighUsage LowValue Internal/LowUsage

×