230 likes | 245 Views
Explore the proven economic value and widespread applicability of containers in the world of technology. Learn how containerization improves resource efficiency, reduces downtime, and enables quick deployments. Discover the benefits of container orchestration and its impact on cost savings and customer experience. Synerzip is your partner in agile software product development.
E N D
Introduction About myself Our challenge as technologists
Why Containers? Maturity Widespread Applicability Proven Economic Value
From CEO’s Perspective Containers . . . Don’t appear to add any sort of features or functionality to the product. We’re operating fine without containers right now Is this just another technological fad? So how is this going to make or save me money?
But first a refresher on Virtualization . . . Servers became more and more powerful Machines could be emulated on other machines Possible to run multiple OSs on a single physical piece of hardware Made the cloud possible
Virtualization Virtual Machine #1 Virtual Machine #2 Virtual Machine #2 Hypervisor Virtual H/W Virtual H/W Virtual H/W Server Hardware
Virtualization Benefits Run multiple Virtual Machines on a single physical machine Boot up new VMs in minutes to accommodate customer demand Move a VM from one physical machine to another (sometimes even without stopping/rebooting the instance) Achieve true multi-tenancy of your physical resources Surged in popularity through 1990s
Containerization Particular type of virtualization (aka OS virtualization) Underlying OS is shared by many containers Each container’s resources and “view” is limited Libraries, Dependencies, Environment Variables, etc. are included Can work in conjunction with virtualization
Containerization Container N Container 4 Container Engine Container 1 Container 2 Container 3 . . . . . . . . . . . . . . . Server OS Server Hardware
How does this differ from just running an application? Containers limited allocated resources (memory, compute, storage, access to peripherals, etc.). From their perspective, these are all the resources that exist on the current machine and they’re the only application running. Furthermore, all dependencies are packaged with the application. The filesystem is namespaced and “fork on write” is used for App specific copies of OS files.
Comparing Containers & Virtual Machines Similarities Both improve isolation and security Both allow for quick portability Containers differ: Share the underlying operating system with one another. This cuts overhead and saves resources
Fad or Trend? Evolution of Software Paradigms 1960 – 1970 Mainframes Decouple use from the where the technology is developed 1980-90s Desktop Applications running on PCs Decouple the location of the user from where the application runs 1990s Basic Web Application (Client/ Server) over physical servers Decouple the OS from the hardware 2000s SaaS Applications Running on VMs Decouple the application (& dependencies) from OS 2010s Public Cloud / Containerization Each Decoupling Event Brings Greater Flexibility / Tend never to Give up that Flexibility
Containers and Microservices Compliment One Another An architectural approach to developing a single application as suite of small services Own their own Data Fault Isolated Easy to Monitor Microservices Small Autonomous Encapsulation Independently Deployable Aligned with Business Functionality
Microservices & Containerization Microservices - architectural design pattern Containers - deployment technology Natural, complementary fit . . . Smaller / less resource intensive processes Enforces loose coupling Independently deployable Business Benefits – Reduced Downtime, Less Technical Debt
Portability Decouples the Application from the OS Dependencies and Configuration Files are Included Move across environments Apply Updates to Servers without Impact Staging UAT PROD Other PROD DEV QA TEST Business Benefits – Improved Productivity, Time to Market, Easier Migrations
Isolation “Enforce upper boundaries on how much system resource (memory, storage, CPU, network bandwidth, and disk I/O) a container can consume so that a critical application isn't squeezed out by noisy neighbors.” Bottom Line: Containers running across the same OS don’t impact once another Improved Security Greater Reliability Maybe not quite as secure as VMs Business Benefits – Improved Security and Uptime
Speed & Smooth Horizontal Scaling Up and running in seconds (Compared to minutes with VMs) Dynamic Scaling / Up and Down Match you customer’s usage patterns Container Orchestration Container Engines Automated rollout / rollback Auto-scaling Declarative management Business Benefits – Cost Savings / Ability to Response to Unpredictable Usage
Resource Efficiency Much less overhead Many containers can be packed onto a single server Reduced hosting costs Moving Truck Analogy Business Benefits – Costs Savings
Business Advantages Improved Customer Experience Greater Productivity Reduced Costs Agile Response to Customer Demand Reduced Downtime Quicker Deployments Reduced Technical Debt Greater Resource Efficiency Easier Migration
Who is Synerzip Synerzip is your agile software product development partner 2X accelerate product roadmap 110+ product success stories Inc. 5000 awarded Inc 5000 6 years in a row 500+ strong team DNA a truly agile product development partner 10+ years in business 50% savings from optimized delivery Dual-Shore matured delivery model