containers as infrastructure for new gen apps

16
Containers as the Infrastructure for New Generation Applications Khalid Ahmed, STSM, Chief Architect - Infrastructure Software , IBM Spectrum Computing [email protected]

Upload: khalid-ahmed

Post on 16-Apr-2017

201 views

Category:

Software


9 download

TRANSCRIPT

Page 1: Containers as Infrastructure for New Gen Apps

Containers as the Infrastructure for New Generation ApplicationsKhalid Ahmed, STSM, Chief Architect - Infrastructure Software , IBM Spectrum [email protected]

Page 2: Containers as Infrastructure for New Gen Apps

IBM Systems

The Complex Apps and Infrastructure Challenge

| 2

Data Virtualization

ComputeVirtualization

Application Layer

Infrastructure Layer

• Microsoft Exchange• SQL Databases & Data

Warehouses• Virtual Desktops (VDI)

• Test / Dev Private Clouds

• Traditional server and storage systems

• Hypervisor environments

• Storage silos

• Hadoop• Spark• In-memory analytics• NoSQL Databases• Analytics Grids• Traditional HPC• Serverless (OpenWhisk)

• Cloud Native architectures• Container environments• Data Ocean architecture for

unstructured data storage and lifecycle management

Traditional New Gen

Page 3: Containers as Infrastructure for New Gen Apps

A standard way to package an application and all its dependencies so that it can be

moved between environments and run without changes.

Containers work by isolating the differences between applications inside

the container so that everything outside the container can be standardized.

Containers

3

Page 4: Containers as Infrastructure for New Gen Apps

IBM Systems

Containers and VMs Solve Different ProblemsContainers are lighter and perform better:

• Portability: VM (Gigabytes) vs. Container (Megabytes), VMs are constraint to Hypervisor and hardware-emulation

• Performance: Containers can boot and restart in seconds, compared to minutes for virtual machines. And no extra overhead of a hypervisor and guest OS makes containers consume less CPU and memory.

• Management cost: Each VM requires a full functional operating system, and then extra management for them.

Great advantage to use containers in:• DevOps• Batch computing• Lightweight PaaS• Microservices

Host Server

Host Operating System

Hypervisor

OS

Bins/Libs

App1

OS

Bins/Libs

App2

OS

Bins/Libs

App3

Host Server

Host Operating System

Container Engine

Bins/Libs

App1

Bins/Libs

App2

Bins/Libs

App3

Virtual Machines Containers

| 4

Page 5: Containers as Infrastructure for New Gen Apps

What are the Basic Functions of Docker?

DockerRegistry

Image Repository

Dockerfile for Application

Image N

Docker Engine (Build)

Server

Host OS

Docker Engine

Container A

Container B

Container N

Push new Image to

Repository

Describes steps to build container automatically

from source

Get N

…Run NBuild M

Source Code Repository

Build Store Run

DeveloperCreates App,

Builds Container And pushes to

Registry

OperatorDeploys

Containers

Page 6: Containers as Infrastructure for New Gen Apps

IBM Systems

Cloud Native Applications are being built with Microservices Using Containers

6

Cloud Native applications are characterized by the following:• DevOps and continuous integration /

continuous delivery methods• User experience centric principles• Use of microservice architecture, and

API-centric approach to applications• Multisource data collection mechanisms

from sources such as social media streams or IOT sensors.

• Built-in analytics capabilities intended to help inform/develop process

• Low-risk technology investments that avoid lock-in Source: Gartner

Page 7: Containers as Infrastructure for New Gen Apps

IBM Systems

Container Management Platforms are Emerging• Container Management Platforms (CMPs) are also known as container

managers, container orchestration engines, container orchestration platforms and containers-as-a-service (CaaS) platforms.

• They help enterprises address the challenges of deploying containers. These platforms let administrators monitor, manage, secure, and scale containers similar to how they treat existing servers and virtual machines.

Bare Metal / Virtualization EnvironmentOn-prem / off-prem

Auto-scaling / Upgrade

Image Management(App Catalog, registry)

ServiceRegistration & Discovery

Security / Compliance

Routing & Load Balancing

Monitoring & Logging

Scheduling

HA / Backup & Restore

| 7

CMP Architectural Components

Page 8: Containers as Infrastructure for New Gen Apps

IBM Systems

Layer 1Infrastructure

Layer 2 Operating System

Layer 3 ContainerEngine

Layer 4 Orchestration

Layer 5 CMP

Tool Chain

| 8

Container Ecosystem

Page 9: Containers as Infrastructure for New Gen Apps

IBM Systems

What is Kubernetes?

• Container orchestrator• Runs and manages containers• Supports multiple cloud and bare-metal

environments• Inspired and informed by Google's

experiences and internal systems• 100% Open source, written in Go• Manage applications, not machines• Rich ecosystem of plug-ins for scheduling,

storage, networking

| 9

Page 10: Containers as Infrastructure for New Gen Apps

IBM Systems

Kubernetes Concepts

A group of co-located containers

|10

A service defines a set of pods anda means by which to access them,

such as single stable IP address andcorresponding DNS name.

A volume is a directory, possiblywith some data in it, which isaccessible to a Container as part ofits filesystem.

A label is a key/value pair that isattached to a resource, such as apod, to convey a user-definedidentifying attribute.

A replication controller ensures thata specified number of pod replicasare running at any one time.

Page 11: Containers as Infrastructure for New Gen Apps

IBM Systems

Kubernetes Architecture

Page 12: Containers as Infrastructure for New Gen Apps

IBM Systems

Cloud Native Docker Container Cloud – Client Use Case

12

• Supporting a new Cloud Native DevOps Docker model with a Scale Out Infrastructure

• Modernizing Hundreds of Websphere Apps on Power providing services both to internal employees and external clients

• Embracing Open Source Technologies like Docker, Mongo, Redis etc.

• Cooperatively Integrating Open Source Components to deliver a complete Container Cloud Service Power Compute Node Cloud

Approx 100’s of Systems

Container Management Service

WebApps

WebApps

WebApps

WebApps

WebApps

WebApps

WebApps

Open Source Tooling

and SW

MongoRedis

etc

SQLDB’s

Data Services

User Applications (Internal and External) Self Service Developer Portal to Get

Containers and Data Services

Docker Containers

RedHat 7.1 LE Linux O/S & KVM

SD

NR

egis

tryO

pera

tions

D

ashb

oard

Reg

istry

UI

Page 13: Containers as Infrastructure for New Gen Apps

IBM Systems

IBM Bluemix Container Service

Scheduler

Networking Volume Mgmt

Orchestration

Image Build Image Registry Vulnerability Scanning

Logging/Metrics

IBM Managed

User Managed

Load Balancing

Auto-Recovery

Auto-Scaling

Docker Images

Single Docker

Containers

DockerCompose

Files

Scalable Container Groups

Bare metal hosts

crawlers

IBM managed service delivered through Bluemix

Page 14: Containers as Infrastructure for New Gen Apps

IBM Systems

IBM Spectrum Conductor for Containers

Container orchestration• Resource management• Application life-cycle

management/schedule/deployment• Scaling, Rolling upgrade• Service Registry/Discovery

Container infrastructure• Load Balance• Multi-host Networking • Distribute storage management• Image/Software repository management• Configure management• Logs/Meters/Alert• User/Account management (Multiple tenancy &

RBAC)Ops management

• Installation/upgrade• Health check

Hypervisor

IBM Spectrum Conductor for Containers

Unified Web-based Interface

Resource Management

Pattern based cluster template

Private Registry

Monitoring and Reporting

Cloud Native Spark

Pattern based cluster template

Container Orchestration

Framework

x86

|14

Software stack for building on-prem customer-managed containers optimized for IBM Systems

Page 15: Containers as Infrastructure for New Gen Apps

IBM Systems

15© 2016 IBM Corporation

• Community Edition v0.2 (Tech Preview) available now!

• Free to download and use as you wish• We are looking for feedback for our

roadmap• Learn more and register on our

community page: http://ibm.biz/ConductorForContainers

IBM Conductor for Containers Community Edition

Page 16: Containers as Infrastructure for New Gen Apps

Thank You