Weitere ähnliche Inhalte Ähnlich wie POV - Practical Containerization (20) Mehr von Robert Greiner (15) Kürzlich hochgeladen (20) POV - Practical Containerization1. 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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 © 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