Understanding The Value of Containers in a World of DevOps. Advice that empowers. Technology that enables.

Size: px
Start display at page:

Download "Understanding The Value of Containers in a World of DevOps. Advice that empowers. Technology that enables."

Transcription

1 Understanding The Value of Containers in a World of DevOps Advice that empowers. Technology that enables.

2 Bradley Brodkin - Some Background Founder & CEO of HighVail Systems, Toronto CANADA 31+ year industry vet Established HighVail in May 2003 Origins in UNIX (Sun/Solaris), Storage & High Availability Oracle Acquisition of Sun announced in late 2009 (50%+ of business) Signed on as a Red Hat Partner in 2009 & begun journey to the CLOUD Revenue decline in 2011 & 2012 Margin % growth Today, Hybrid Cloud, DevOps, Big Data & Analytics Focus 30 Staff, $40M + revenue (CDN$) 2X+ growth since 2014 Over 100 certifications spanning various Open Source Partners Red Hat Premier Partner since 2011 Canadian Partner of the Year in 2016 Only Docker Certified Consultant and Training Partner in Canada

3 Agenda for today Defining Containers History Lessons Definition and Role Portability Container Platforms DevOps Mission Enablers The Three Ways of DevOps The Business Opportunity (as I see it) for Partners Final Word Q & A

4 Defining Containers

5 History Lesson: One Application on One Physical Server Application Limitations: Slow deployment times Huge costs Wasted resources Operating System Difficult to scale Difficult to migrate Vendor lock in Physical Server

6 History Lesson: Hypervisor-Based Virtualization Virtual Machine Application Guest Operating System Virtual Machine Application Guest Operating System Hypervisor Physical Server Virtual Machine Application Guest Operating System Benefits: Better resource pooling One physical machine divided into multiple virtual machines Easier to scale VMs in the cloud Rapid elasticity Pay as you go model Limitations: Each VM stills requires: CPU allocation Storage RAM An entire guest operating system Full guest OS means wasted resources Application portability not guaranteed

7 Containers Defined Standardized packaging for software and dependencies Isolate apps from each other Share the same OS kernel Containers are an app level construct Works with all major OS s (Linux, Windows, MacOS, System Z, etc.)

8 Role of containers in Digital Transformation Storage efficient. Faster uptime s. Modularity. Standard OCI format. Security.

9 Portability: A Shipping Container for Applications Multiplicity of Stacks Static website An engine that enables any payload to be encapsulated as a lightweight, portable, selfsufficient container User DB Web frontend Queue Analytics DB Do services and apps interact appropriately? Multiplicity of hardware environments that can be manipulated using standard operations and run consistently on virtually any hardware platform Can I migrate smoothly and quickly Development VM QA server Customer Data Center Public Cloud Production Cluster Contributor s laptop

10 Container Platforms - Competitive Landscape Docker Red Hat Commercially-backed Kubernetes Distros PaaS Cloud Container Services Product Docker Enterprise Edition Red Hat OpenShift Rancher, Canonical, CoreOS Pivotal CF, Red Hat OpenShift Amazon ECS/ACS, GKE, Bluemix Complete Solution Technology Lock-in Single Vendor for Support Container Engine + Orchestration + Registry + Lifecycle Management all integrated with each other Batteries included, but swappable Single, integrated solution with option to leverage preferred alternatives Overweight and solution that includes PaaS capabilities; requires separate vendor relationship between engine and orchestration Target a full Red Hat stack that runs only on RHEL; includes Red Hat tools unrelated to containers and container management (eg. Ansible and JBoss) Separate vendors between container and orchestration = misaligned releases, features not being supported, fractured support Opinionated stack promotes specific style of apps and services Black box for ops Apps difficult to move once in this specific format, relies heavily on PaaS-specific services Both opinionated and requires multiple vendors, depending on what engine and orchestration tool used ECS: Fully proprietary solution ACS/GKE: Leverages K8s but all services in the cloud only, difficult to re-platform Native Workflow API/CLI consistent across all infrastructure and editions FrankenDocker Forked off Docker project and leverages Kubectl Kubectl separate and own CLI, does not directly support docker-compose Completely different set of tooling above the container engine ECS: Fully proprietary solution ACS/GKE: Leverages Kubectl Workload Coverage Run Anywhere Windows, Linux, mainframe, AWS, Azure, VMs, bare metal Requires RHEL 7 Atomic Host or above (no other Linux distros) on x86 Kubernetes: Alpha support for Windows, lacks important networking and cluster must include Linux nodes Can deploy in multiple platforms but is resource intensive (eg. Pivotal CF takes 39 EC2 instances) Limited to specific IaaS implementation (no portability between IaaS providers) Secure by Default Usable security Trusted delivery Portable Forked version introduces unique security risks Secrets loosely managed (plaintext vs. TLS/encryption, lack of access control, open to all hosts) Secrets loosely managed (plaintext vs. TLS/encryption, lack of access control, open to all hosts) ACS/GKE: Secrets loosely managed (plaintext vs. TLS/encryption, lack of access control, open to all hosts)

11 DevOps

12 Really Cool (and scary) DevOps Tools Slide. Devops Periodic Table

13 DevOps Continuum

14 Mission As a whole, the goal of DevOps is to empower product teams to support: FREQUENT AND FAST CHANGE Responding to emerging customer and market demands rapidly AUTOMATED RELEASE MANAGEMENT SCALABLE & ELASTIC INFRASTRUCTURE Providing infrastructure services that allow applications to adapt to dynamic needs INFRASTRUCTURE AGNOSTIC DEPLOYMENTS Reducing the lead time associated with releasing solutions while maintaining audit and regulatory compliance Abstracting infrastructure implementations away from the enabling technology A NEW TYPE OF IT DEVELOPMENT & OPERATIONS ORGANIZATION Changing the way products are operated and supported, closing the gap between application and operations teams

15 Enablers The DevOps mission is enabled through a number of technologies and processes: Technology CONTINUOUS INTEGRATION AND DELIVERY (CI/CD) Provide automated application delivery pipelines to integrate, build, test, package and deploy application code CLOUD TECHNOLOGIES (CaaS, IaaS, PaaS, xpaas) Enable automated application deployments to the private and public cloud and provide tools to manage and monitor the application Process VALIDATED LEARNING Enable product teams with architecture and software development best practices to to deliver high value to the customer

16 The Three Ways of DevOps The First Way Systems Thinking = understanding the System as an end-to-end complete value stream The Second Way Amplify Feedback Loops = amplify and shorten feedback loops such that corrections can be made fast and continuously The Third Way Continuous Learning = ties the first two through and rigorous implementation and learning process

17 MTA Project - Major Global Life Insurer Wanted to modernize one of their legacy java applications running in their datacenter so they could reduce costs and establish a common governance model for all their applications Priorities going into the Engagement TCO reduction Common governance model Security Self-service platform Standard deployment model Time from Commit to Deploy Infrastructure Utilization MTTR for Security Patches Average Time To Scale Before 7 Days 4 Servers 7 Days 7 Days After 5 Mins 2 Servers 2 Hours 5 Mins 99% Faster 50% Decrease 84x Decrease in MTTR 99% Decrease

18 Final Word(s) Containers open up a world of possibilities and therefore a multitude of business opportunities Digital Transformation Cloud Native Applications Enabling DevOps to Modernize Traditional Applications Transforming the Data Center (replace traditional infrastructure) Public and Hybrid Cloud (enable free movement of applications) Process Automation, etc.. It s the in thing Retain existing & attract new talent Integral to your customers business strategy Real savings through higher densities and efficiencies Infrastructure as code Write it on a MacBook, deploy it on any machine or any edge device Software truly is eating the world!

19 Thank You / Q&A bbrodkin@highvail.com /