Why Does CA Platform Use OpenShift?

Similar documents
DevOps. Josh Preston Solutions Architect Stardate

Data Centers and Cloud Computing. Data Centers

Data Centers and Cloud Computing. Data Centers. MGHPCC Data Center. Inside a Data Center

OpenShift on you own cloud. Troy Dawson OpenShift Engineer, Red Hat November 1, 2013

Build & Manage Clouds with Red Hat Cloud Infrastructure Products. TONI WILLBERG Solution Architect Red Hat toni@redhat.com

Platform Architecture & Integration with OpenShift

OpenShift on OpenStack

Computer Science. About PaaS Security. Donghoon Kim Henry E. Schaffer Mladen A. Vouk

Building Docker Cloud Services with Virtuozzo

Sacha Dubois RED HAT TRENDS AND TECHNOLOGY PATH TO AN OPEN HYBRID CLOUD AND DEVELOPER AGILITY. Solution Architect Infrastructure

How To Get The Most Out Of Redhat.Com

OpenShift Enterprise PaaS by Red Hat. Andrey Markelov RHCA Red Hat, Presales Solution Architect

openshift enterprise whitepaper Gordon Haff

Stackato PaaS Architecture: How it works and why.

Do Containers fully 'contain' security issues? A closer look at Docker and Warden. By Farshad Abasi,

Data Centers and Cloud Computing

Cloud Computing. Chapter 1 Introducing Cloud Computing

The Road To enterprise paas

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

RED HAT CONTAINER STRATEGY

Cloud Management Platform

Operating Systems Virtualization mechanisms

Oracle Cloud Computing Strategy

Cloud Computing. Chapter 1 Introducing Cloud Computing

Cloud Models and Platforms

JAVA IN THE CLOUD PAAS PLATFORM IN COMPARISON

Virtualization Strategy with Oracle VM and Oracle Linux. Bjorn Naessens

Oracle s Cloud Computing Strategy

OpenShift. OpenShift platform features. Benefits Document. openshift. Feature Benefit OpenShift. Enterprise

STRATEGIC WHITE PAPER. The next step in server virtualization: How containers are changing the cloud and application landscape

A Complete Open Cloud Storage, Virt, IaaS, PaaS. Dave Neary Open Source and Standards, Red Hat

CLOUD COMPUTING. When It's smarter to rent than to buy

Cloud-based Services: To Move or Not To Move. Seminar Internet Economics Cristian Anastasiu & Taya Goubran

Agenda. Success Stories with OpenShift. 11:15-11:45 am. OpenShift Tech Overview 9:40-10:30 am. Red Hat Mobile on OpenShift 10:45-11:15 am

Red Hat Enterprise Linux The original cloud operating system

WHITEPAPER. Beyond Infrastructure Virtualization Platform Virtualization, PaaS and DevOps

Use Cases for Docker in Enterprise Linux Environment CloudOpen North America, 2014 Linda Wang Sr. Software Engineering Manager Red Hat, Inc.

Migration and Disaster Recovery Underground in the NEC / Iron Mountain National Data Center with the RackWare Management Module

Best Practices for Python in the Cloud: Lessons

RED HAT CLOUD SUITE FOR APPLICATIONS

Red Hat Cloud and Virtualization How to Sell. Karl Stevens Senior Solution Architect

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Docker : devops, shared registries, HPC and emerging use cases. François Moreews & Olivier Sallou

Performance Management for Cloudbased STC 2012

Migration and Building of Data Centers in IBM SoftLayer with the RackWare Management Module

Options in Open Source Virtualization and Cloud Computing. Andrew Hadinyoto Republic Polytechnic

Next Generation Now: Red Hat Enterprise Linux 6 Virtualization A Unique Cloud Approach. Jeff Ruby Channel Manager jruby@redhat.com

Parallels Virtuozzo Containers

Lecture 02a Cloud Computing I

The path to the cloud training

vcloud Virtual Private Cloud Fulfilling the promise of cloud computing A Resource Pool of Compute, Storage and a Host of Network Capabilities

Enterprise-Class Virtualization with Open Source Technologies

SDN/Virtualization and Cloud Computing

HIGH-SPEED BRIDGE TO CLOUD STORAGE

Linstantiation of applications. Docker accelerate

REDEFINING THE ENTERPRISE OS RED HAT ENTERPRISE LINUX 7

The Software Container pattern

Cloud Computing an introduction

Mobile Cloud Computing T Open Source IaaS

<Insert Picture Here> Oracle VM and Cloud Computing

KVM, OpenStack, and the Open Cloud

2013 ovh.com. All rights reserved

Hybrid Cloud Architecture: How to Streamline Hybrid Cloud Migration

Public Clouds. Krishnan Subramanian Analyst & Researcher Krishworld.com. A whitepaper sponsored by Trend Micro Inc.

The Virtualization Practice

Commercial Software Licensing

2972 Linux Options and Best Practices for Scaleup Virtualization

How To Use Arcgis For Free On A Gdb (For A Gis Server) For A Small Business

High-Performance Nested Virtualization With Hitachi Logical Partitioning Feature

OpenStack in the Enterprise: From Strategy to Real Life. Radhesh Balakrishnan General Manager OpenStack

The Cloud is Not Enough Why Hybrid Infrastructure is Shaping the Future of Cloud Computing

STeP-IN SUMMIT June 18 21, 2013 at Bangalore, INDIA. Performance Testing of an IAAS Cloud Software (A CloudStack Use Case)

Cloud computing - Architecting in the cloud

CHOOSING THE RIGHT RED HAT ENTERPRISE LINUX SUBSCRIPTION. Gerry Riveros Senior Manager Server Solutions, Red Hat May 6, 2011

Jfokus PaaS Hands-On Lab

Cloud Computing. Adam Barker

DISTRIBUTED COMPUTER SYSTEMS CLOUD COMPUTING INTRODUCTION

Overview. The Cloud. Characteristics and usage of the cloud Realities and risks of the cloud

Oracle Cloud Strategy. Sudip Datta Vice President of Product Management

Networks and Services

Use Case Brief BUILDING A PRIVATE CLOUD PROVIDING PUBLIC CLOUD FUNCTIONALITY WITHIN THE SAFETY OF YOUR ORGANIZATION

A Study of Infrastructure Clouds

VMware vcloud Powered Services

<Insert Picture Here> Enabling Cloud Deployments with Oracle Virtualization

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

Configuring and Managing a Private Cloud with Enterprise Manager 12c

A Comparison of Clouds: Amazon Web Services, Windows Azure, Google Cloud Platform, VMWare and Others (Fall 2012)

Openshift for Continuous Integration

The Incremental Advantage:

Windows Azure and private cloud

Azul pitches Docker as alternative to virtualization for heavy-duty Java applications

Datamation. 3 Ways to Move Application Development to the Cloud. Executive Brief. In This Paper

Red Hat Cloud Ecosystem

Introduction to OpenStack

Chapter 11 Cloud Application Development

Transcription:

Why Does CA Platform Use OpenShift?

The Problem Let s consider an application with a back-end web service. HTTP The service could be Tomcat serving HTML, Jetty serving OData, Node.js serving plain REST APIs, an instance of Ruby on Rails doesn t matter for this argument. How can we deploy this service? Service 2 2014 CA. All rights reserved.

The Problem Let s say 1 instance of that service can handle 100 users and requires 1 CPU core. And let s say we have 100 users. We could simply run 1 service on 1 physical server (or VM) with 1 core. No problem. Server (1 core) 100 users HTTP OS But what if we have 100,000 users? 3 2014 CA. All rights reserved.

The Problem With 100,000 users, we need 1,000 service instances, which need at least 1,000 cores. 100,000 users 1,000 How can we deploy an application with 1,000 Tomcats or 1,000 RoR instances? That s a complex problem, and good solutions must meet many criteria. But here are 4 key criteria for CA Platform. 4 2014 CA. All rights reserved.

Four Key Criteria Capex Opex We re going large-scale in the first place because we are delivering SaaS, and SaaS profitability calls for the most cost-efficient hardware, software, and operations labor that can do the job. Isolation Flexibility To achieve sufficient reliability, we need resource isolation between service instances we can t let one misbehaving instance take down hundreds of others. We need to efficiently add, remove, grow, and shrink services. In real life, that hypothetical set of 1,000 service instances isn t static, isn t uniform, and isn t the only set of services. So what are some approaches to this problem? 5 2014 CA. All rights reserved.

Bad Approach: Humongous Servers Putting all 1,000 services on a small number of very large servers is a nonstarter. Biggest problem in general: Large servers are dramatically less costeffective than small servers. Large servers only make sense for specialized workloads that can t run on small servers. 1000-core server OS 1,000 Capex Opex Isolatio n Flexibilit y Awful OK but doesn t matter Awful Awful 6 2014 CA. All rights reserved.

Bad Approach: Horde of Tiny Servers... 1,000 total Putting each service on its own just-big-enough server doesn t work either. Even if that server size happens to be cost-efficient in cores-per-dollar, opex and flexibility are unacceptable. Capex Opex Isolation Flexibility Bad. Cost-optimal server size is usually bigger than 1 service, and some of our cost (such as OS licensing) scales with the number of servers. Awful because we have 1,000 independent OS instances to manage. (The data center automation business from 10 years ago would love to help you try to fix this.) Good (actually, total overkill for web apps). Awful especially if our service outgrows our server! 7 2014 CA. All rights reserved.

Common Approach: Virtualization Let s say the cost-optimal server has 8 cores enough raw capacity for 8 services (ignoring overhead). To isolate those 8 services from each other, we need some way to subdivide our physical servers. Enter virtualization. 8-core server 125...? Capex Opex Isolation Flexibilit y Just OK, because those 1,000 OS instances impose significant additional overhead we actually need way more than 125 servers. Still awful because we still have 1,000 independent OS instances to manage. (Plus an additional ton of virtualization software to buy and operate which is why VMware loves this approach.) Good (still overkill). OK. We can change deployment sizing virtually, though not dynamically. 8 2014 CA. All rights reserved.

Aside: Intro to OS Container Technology

OS Container Technology What if we could keep the flexibility of virtualization but remove the OS overhead? Especially for mostly-uniform workloads that don t need total isolation? This observation led to the development of lightweight virtualization where the VMs are partially isolated partitions of the same underlying OS. In full virtualization, one partition could be Windows, another Linux. With OS containers, both partitions expose the same OS instance. Virtualization is external to the guest OS. Containers are features provided by an OS. There is a diverse spectrum of technologies for containerization, including Solaris Zones, Parallels Virtuozzo, Linux LXC containers, and BSD jails, ranging from low overhead/low isolation to high overhead/high isolation. 10 2014 CA. All rights reserved.

OS Container Analogy Office Building Floor 3: Insurance Agency Cubicle Cubicle Cubicle Cubicle Physical Server VM 3: Solaris 10 OS instance Zone Zone Zone Zone Floor 2: Dentist s Office VM 2: Windows 2008 OS instance Floor 1: Restaurant VM 1: Linux OS instance Each floor is built out completely differently. The cubicles in the insurance agency are partially isolated different office chairs, same carpet. Each VM has a completely different OS. The containers in the Solaris instance are partially isolated different process tables, same kernel. 11 2014 CA. All rights reserved.

Back to the Main Story

Common Approach: OS Containers (E.g., Joyent) Container 8-core server OS with 8 containers Service 125 Capex Opex Good. Cost-optimal hardware. OS (and virtualization) overhead is at a minimum. OK. Reasonable number of OS instances to manage, but we haven t addressed how to manage thousands of services or how to route application traffic. Typically that s a ton of custom automation. Isolation Flexibility Good enough for web services. OK. Containers are easier to manage than full VMs, but they are still individually-configurable objects that must be externally automated or manually maintained. 13 2014 CA. All rights reserved.

Toward a Solution With OS containers, capex and isolation are good. How can we extend that solution to fully-automated container management with sufficient flexibility for complex large-scale SaaS applications? 14 2014 CA. All rights reserved.

Introducing OpenShift OpenShift is an open-source technology stack from Red Hat with several major features. For this discussion, we care about two big aspects of OpenShift: Ultra-lightweight containers OpenShift combines two standard Linux features (cgroups and SELinux) to define lightly-isolated containers, called gears, that impose essentially zero overhead versus running on the bare OS. Gears provide just enough isolation for web services. Distributed application model OpenShift allocates gears to applications from a pool of gears (running on a pool of OS instances). The number of gears assigned to an application can change dynamically in response to manual commands or automatic load-driven scaling decisions. And OpenShift automates a network of HTTP proxies so apps don t have to worry about which gears are running which services. 15 2014 CA. All rights reserved.

OpenShift-Based Approach to the Core Problem Capex Good. Cost-optimal hardware. OS (and virtualization) overhead is at a minimum. Opex Good. Reasonable number of uniform OS instances to manage, and OpenShift fully automates the containers, service deployment, and service traffic routing. Isolation Good enough for web services. Flexibilit y Good. All the dynamic large-scale complexity is software-defined and fully automated. Why does CA Platform use OpenShift? Because it is the only scalable application framework that fully delivers on all 4 key criteria. 16 2014 CA. All rights reserved.

How CA Platform Uses OpenShift Browser Mobile API Client CA Platform leverages market-leading CA security products, such as Layer 7 and CloudMinder, for enterprise-grade authentication, security, and multitenancy. CA Platform provides a highly standardized model for its applications (CA SaaS products). Applications model business logic as platform engines (separately-scalable tiers) built on a small number of platform-provided application frameworks. CA Platform is a PaaS that leverages OpenShift internally. CA Platform automation uses the OpenShift API to run an OpenShift application for each engine. OpenShift allocates gears and dynamically manages a network of HTTP proxies. Platform Security & Multitenancy (Authentication/SSO, tenancy model, firewall, reverse proxy) Platform Application Model Platform app 1 (CA SaaS product) Engine 1 (Java OData API) OpenShift Engine 2 (Node.js REST API) Platform app 2 Engine 1 (Java OData API) OpenShift maintains a pool of gears on standardized RHEL OS instances (running on cost-efficient underlying IaaS or virtualized hardware making CA Platform highly portable). RHEL OS OpenShift gear Application business logic Platform-standard framework Platform Database-as-a-Service 17 2014 CA. All rights reserved. VM MySQL Cassandr a

Q&A