SlideShare a Scribd company logo
1 of 18
Download to read offline
Niu, Jibin
Running Legacy Applications
with Containers
(2)
Evolution of Distributed Computing
Time
TechnologyProgression
Cluster
Computing
Server
Virtualization
Containers
Client
Server
(3)
Docker Benefits
Virtual Machine vs Docker Container Empowers Developers
Smaller Footprint
High Performance
Designedfor Fastest Growing
Workload Types
“Good Enough” Isolation
Docker Adoption Growth
Sample of 10,000 companies tracking real usage (Ref: https://www.datadoghq.com/docker-adoption/)
90% is still
not
“Dockerized”
85% has still
not adopted
(5)
Challenges
Legacy Applications in Containers
•Static IP address requirement
•Hostname/MAC address dependent
Network dependencies
•Persistent data on local file system
Storage dependencies
•Data security across tenants
Security dependencies
Legacy Linux kernel requirements
Other OS, e.g. Windows
VM is still ideal to
run legacy
applications
Introducing SkyForm
VMs
Physical
Server
Auto-
scaling
Storage
VPC Firewall Networks
VDisks
Clusters Hosts Storage Network
Image
Mgmt
App Store
Applicati
on
Layout
Container
Mgmt
Releasing
Service
Discovery
Auto-
scaling
Load
Balancing
Monitoring
Logs
Dept Mgmt
User
Mgmt
Tenant
Mgmt
Quota
Mgmt
Logs
Reporting
Images
Repository
Flow
Configura-
tion
IaaS
SkyForm ECP
HA
SkyForm CMP
Authentication
(7)
Server
Linux OS with KVM
Server
Model 1:
Fine Grain Shared Docker & VM Management
Container
SkyFormDockerEngine
Server
Running VM inside container
Limitations : Lack support for migration, snapshotting, etc.
Linux OS with KVMLinux OS with KVM
VM
Container
Modern
app
Container
VM
Container
Modern
app
Container
VM
Container
Modern
app
DockerEngine Docker Engine
LegacyApps Container ready Apps
(8)
The customer wants to keep their existing VM management framework, in particular, assume the existing VM
environment is managed by OpenStack using KVM
• Objective becomes how to improve utilization and QoS in a shared infrastructure
Architecture
• OpenStack itself is deployed and managed as one SkyFormECP application where the OpenStack services run in
docker containers
• SkyFormECP allocates whole physical servers to OpenStack
• VMs are managed by OpenStack, and SkyFormECP is not aware of VMs – VMs run on the hypervisor, not in
containers
Model 2:
Course Grain Shared Docker & VM Management:
Linux with kvm
Server Server Server Server
Containers
VM
SkyFormDocker
Engine
Server Server Server
Openstack services run in containers
VM VM VM VM VM
Docker
Engine
Docker
Engine
Docker
Engine
Linux with kvm Linux with kvm Linux with kvm Linux with kvm Linux with kvm Linux with kvm
Docker
Engine
Docker
Engine
Docker
Engine
(9)
• HPC job could be serial or parallel. Parallel
job could run across multiple hosts
• HPC cluster is typically used by multiple
users.
• A supercomputing center may run jobs by
multiple tenants. They share the same
bare metal cluster environment
• The job management consists of
– Job queues
– Resourceallocation policies
– Job submission,monitoring and control
A Use Case: HPC Cluster
Server Server Server
Batch system: OpenLava
Job
Job
Job
Job
Job
OS OS OS
VMs: Tenant D
TensorFlow: Tenant C
Spark: Tenant B
(10)
Server Server
Docker-enabled HPC Cluster
J
o
b
WLM
J
o
b
Job
WLM
Server Server
WLM
J
o
b
WLM
Job
Server Server Server
HPC Batch Jobs: Tenant A
Job
Job HPC batch job process
WLM HPC batch service
Job HPC batch job container
Traditional HPC Cluster
HPC batch service &
jobs run in processes
Docker-enabled HPC Cluster
• Dockerized HPC compute
nodes
• Run job from user supplied
Docker image
• Run traditional “a.out” jobs
Benefits
• Application portability
• Isolation
• Compatibility
Expansion of HPC Cluster
• Big Data, ML, VM (legacy)
• Multi-tenant
• All workloads run in containers
Benefits
• Increased demand for HPC infrastructure
• Higher utilization
• Reduced IT costs
WLM HPC batch service run as a container
(11)
Course Grain HPC Batch Sharing: Method 1
Job HPC batch job process
WLM HPC batch service daemon process
Job HPC batch job container SparkTensorFlow VM in container
Server Server
S
p
a
r
k
S
p
a
r
k
Server
V
M
V
M
S
p
a
r
k
T
F
T
F
T
F
Server
J
o
b
WLM
Docker
Engine
Docker
Engine
Docker
Engine
Server
Batch
Service
Master
Batch
Failover
Master
(slave)
J
o
b
Server Server
S
p
a
r
k
Server
V
M
T
F
T
F
Server
J
o
b
WLM
Docker
Engine
Docker
Engine
Docker
Engine
Server
Batch
Service
Master
Batch
Failover
Master
(slave)
J
o
b
WLM
J
o
b
J
o
bBatch
scale out
Batch
scale in
Sharing at thephysical host boundary
Batchjobs that arenot provided as a containerimagearerun inside a container createdby thesystem
Pros
• Evolutionaryextension of existing HPC cluster architecture
• Physical isolation betweenHPC batchtenant and non-HPC
Cons
• Lower utilization
• Dedicatedmaster hosts
• Longer time toscale out – entirehost must be vacatedbeforeproviding to new tenant
WLM HPC batch service run as a container
(12)
Course Grain HPC Batch Sharing: Method 2
Job HPC batch job process
WLM HPC batch service process
Job HPC batch job container SparkTensorflow VM in container
Server
S
p
a
r
k
S
p
a
r
k
Server
V
M
V
M
S
p
a
r
k
T
F
T
F
T
F
Server
J
o
b
WLM
Docker
Engine
Docker
Engine
Docker
Engine
Batch
Master
&
Slave
J
o
b
Server
S
p
a
r
k
Server
V
M
T
F
T
F
Server
J
o
b
WLM
Docker
Engine
Docker
Engine
Docker
Engine
J
o
b
WLM
J
o
b
J
o
bBatch
scale out
Batch
scale in
Run Master & slave ina container
LeveragesECP for master HA
Pro
• Remove dedicatedhosts
• ImprovedutilizationcomparedwithModel 1
• Can support multiple HPCBatch Service tenants
Con
• Utilizationisnot optimal due to sharing at the physical host boundary
WLM HPC batch service run as a container
Docker
Engine
Server
J
o
b
Batch
Master
&
Slave
Docker
Engine
Server
J
o
b
(13)
Fine Grain HPC Cluster Sharing Architecture
Server Server
S
p
a
r
k
S
p
a
r
k
Server
V
M
J
o
b
S
p
a
r
k
J
o
b
V
M
S
p
a
r
k
T
F
T
F
J
o
b
Sky
Form
T
F
HPC Batch
Queue
Definitions
SparkTensorFlow VM in container
Job HPC batch job container
Each of HPC Batch Service, Spark, TensorFlow,all VMs
in aggregateis a separatetenant
SampleResourcePlan (Algorithm) forBatch Service
tenant
• Own:50 CPUs, 100 GB memory
• Borrow:As manyCPUs/memoryas availablewith
the understandingthata job runningon
borrowedresources mustfinishedwithin ½ hour
• Lend: Lend up to 20 CPUs, 50 GB memorywith
the understandingthatthe loan resourceswill be
returned bywithin 15 minutes after a reclaim
requestis made
• The numberofpendingjobs and the job
characteristics / historicalpatterns areused to
trigger scaleup (reclaim,borrow),scaledown
(lend, return borrowed resources)
Built-in HPC Batch Service
• Optimal utilization
• Lowest TCO
• Fastest scaling out / in
(14)
OpenLava Compute Server
Server
Linux OS
Docker
“Best Effort” mode
Statefulset
Run as “host network”,
no need to set up DNS
lim:
root
Res:
root
Sbd:
root
JobA
UserAJobB
UserB
JobD
Docker job
UserD
JobC
Docker job
UserC
Shared file system (e.g.,
gluster, NFS)
Mount
LIMreports the resource
metrics of the physical host
On Docker startup, connectto
existing LDAP,Mount filesystems,
start up OL daemons, runlsaddhost
to add slaveto OpenLava cluster Support binary-based (process)
jobs and Docker based jobs
(15)
SkyForm ECP (Enterprise Container Platform) leverages Kubernetes to manage
container clusters
Challenge: How to share resources to ensure QoS among multiple tenants when
there is contention for resources (i.e., all resources all used/reserved)?
Solution: Leverage traditional HPC job scheduling algorithm for scheduling
containers
Using Kubernetes
(16)
Scheduling Policies and QoS
Policies
Priority
Fairshare/Round Robin
Preemption
Ownership (private cloud)
• Higher QoS users get
• High priority
• Moreshares
• Being able to preemptlow
priorityusers’containers
• Morephysicalresource
ownership
• Lower QoS users get
• Low priority
• Less shares
• Containers could be
preempted
• Less or zero physicalresource
ownership
(17)
SkyForm Future Development
Workload
Assurance
IoT, Big Data, HPC, ML
Infrastructure
Optimization
Multi-Tenant
Sharing
IntegratedDocker & VM Management
Algorithmic IT (AI) Enabled VM/Docker Cluster Manager
HighLow Infrastructure
Utilization
Low
High
OPTIMAL
Time
MULTI-TENANTFAIRSHARE
THANK YOU
18

More Related Content

What's hot

Is there still room for innovation in container orchestration and scheduling
Is there still room for innovation in container orchestration and scheduling Is there still room for innovation in container orchestration and scheduling
Is there still room for innovation in container orchestration and scheduling LinuxCon ContainerCon CloudOpen China
 
IP Virtual Server(IPVS) 101
IP Virtual Server(IPVS) 101IP Virtual Server(IPVS) 101
IP Virtual Server(IPVS) 101HungWei Chiu
 
See what happened with real time kvm when building real time cloud pezhang@re...
See what happened with real time kvm when building real time cloud pezhang@re...See what happened with real time kvm when building real time cloud pezhang@re...
See what happened with real time kvm when building real time cloud pezhang@re...LinuxCon ContainerCon CloudOpen China
 
Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...
Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...
Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...OPNFV
 
Load Balancing 101
Load Balancing 101Load Balancing 101
Load Balancing 101HungWei Chiu
 
Dockerizing OpenStack for High Availability
Dockerizing OpenStack for High AvailabilityDockerizing OpenStack for High Availability
Dockerizing OpenStack for High AvailabilityDaniel Krook
 
iptables and Kubernetes
iptables and Kubernetesiptables and Kubernetes
iptables and KubernetesHungWei Chiu
 
IPTABLES Introduction
IPTABLES IntroductionIPTABLES Introduction
IPTABLES IntroductionHungWei Chiu
 
Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6Opcito Technologies
 
Network plugins for kubernetes
Network plugins for kubernetesNetwork plugins for kubernetes
Network plugins for kubernetesinwin stack
 

What's hot (20)

Is there still room for innovation in container orchestration and scheduling
Is there still room for innovation in container orchestration and scheduling Is there still room for innovation in container orchestration and scheduling
Is there still room for innovation in container orchestration and scheduling
 
Get a Taste of 1 k+ Nodes by a Handful of Servers
Get a Taste of 1 k+ Nodes by a Handful of Servers Get a Taste of 1 k+ Nodes by a Handful of Servers
Get a Taste of 1 k+ Nodes by a Handful of Servers
 
64-bit ARM Unikernels on uKVM
64-bit ARM Unikernels on uKVM64-bit ARM Unikernels on uKVM
64-bit ARM Unikernels on uKVM
 
The Open vSwitch and OVN Projects
The Open vSwitch and OVN ProjectsThe Open vSwitch and OVN Projects
The Open vSwitch and OVN Projects
 
Simplify Networking for Containers
Simplify Networking for ContainersSimplify Networking for Containers
Simplify Networking for Containers
 
IP Virtual Server(IPVS) 101
IP Virtual Server(IPVS) 101IP Virtual Server(IPVS) 101
IP Virtual Server(IPVS) 101
 
Releasing a Distribution in the Age of DevOps.
Releasing a Distribution in the Age of DevOps. Releasing a Distribution in the Age of DevOps.
Releasing a Distribution in the Age of DevOps.
 
OpenStack on AArch64
OpenStack on AArch64OpenStack on AArch64
OpenStack on AArch64
 
See what happened with real time kvm when building real time cloud pezhang@re...
See what happened with real time kvm when building real time cloud pezhang@re...See what happened with real time kvm when building real time cloud pezhang@re...
See what happened with real time kvm when building real time cloud pezhang@re...
 
Linux Kernel Development
Linux Kernel DevelopmentLinux Kernel Development
Linux Kernel Development
 
Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...
Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...
Testing, CI Gating & Community Fast Feedback: The Challenge of Integration Pr...
 
Linuxcon secureefficientcontainerimagemanagementharbor
Linuxcon secureefficientcontainerimagemanagementharborLinuxcon secureefficientcontainerimagemanagementharbor
Linuxcon secureefficientcontainerimagemanagementharbor
 
Load Balancing 101
Load Balancing 101Load Balancing 101
Load Balancing 101
 
Dockerizing OpenStack for High Availability
Dockerizing OpenStack for High AvailabilityDockerizing OpenStack for High Availability
Dockerizing OpenStack for High Availability
 
UEFI HTTP/HTTPS Boot
UEFI HTTP/HTTPS BootUEFI HTTP/HTTPS Boot
UEFI HTTP/HTTPS Boot
 
Zephyr: Creating a Best-of-Breed, Secure RTOS for IoT
Zephyr: Creating a Best-of-Breed, Secure RTOS for IoTZephyr: Creating a Best-of-Breed, Secure RTOS for IoT
Zephyr: Creating a Best-of-Breed, Secure RTOS for IoT
 
iptables and Kubernetes
iptables and Kubernetesiptables and Kubernetes
iptables and Kubernetes
 
IPTABLES Introduction
IPTABLES IntroductionIPTABLES Introduction
IPTABLES Introduction
 
Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6Kubernetes Introduction & Whats new in Kubernetes 1.6
Kubernetes Introduction & Whats new in Kubernetes 1.6
 
Network plugins for kubernetes
Network plugins for kubernetesNetwork plugins for kubernetes
Network plugins for kubernetes
 

Viewers also liked

High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...
High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...
High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...LinuxCon ContainerCon CloudOpen China
 
点融网区块链即服务实践 - The Practice of Blockchain as a Service in Dianrong
点融网区块链即服务实践 - The Practice of Blockchain as a Service in Dianrong点融网区块链即服务实践 - The Practice of Blockchain as a Service in Dianrong
点融网区块链即服务实践 - The Practice of Blockchain as a Service in DianrongLinuxCon ContainerCon CloudOpen China
 

Viewers also liked (14)

Practical CNI
Practical CNIPractical CNI
Practical CNI
 
High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...
High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...
High Performance Linux Virtual Machine on Microsoft Azure: SR-IOV Networking ...
 
kdump: usage and_internals
kdump: usage and_internalskdump: usage and_internals
kdump: usage and_internals
 
点融网区块链即服务实践 - The Practice of Blockchain as a Service in Dianrong
点融网区块链即服务实践 - The Practice of Blockchain as a Service in Dianrong点融网区块链即服务实践 - The Practice of Blockchain as a Service in Dianrong
点融网区块链即服务实践 - The Practice of Blockchain as a Service in Dianrong
 
Fully automated kubernetes deployment and management
Fully automated kubernetes deployment and managementFully automated kubernetes deployment and management
Fully automated kubernetes deployment and management
 
Container Security
Container SecurityContainer Security
Container Security
 
There is NO Open Source Business Model
There is NO Open Source Business ModelThere is NO Open Source Business Model
There is NO Open Source Business Model
 
Build Robust Blockchain Services with Hyperledger and Containers
Build Robust Blockchain Services with Hyperledger and ContainersBuild Robust Blockchain Services with Hyperledger and Containers
Build Robust Blockchain Services with Hyperledger and Containers
 
Quickly Debug VM Failures in OpenStack
Quickly Debug VM Failures in OpenStackQuickly Debug VM Failures in OpenStack
Quickly Debug VM Failures in OpenStack
 
How Open Source Communities do Standardization
How Open Source Communities do StandardizationHow Open Source Communities do Standardization
How Open Source Communities do Standardization
 
SecurityPI - Hardening your IoT endpoints in Home.
SecurityPI - Hardening your IoT endpoints in Home. SecurityPI - Hardening your IoT endpoints in Home.
SecurityPI - Hardening your IoT endpoints in Home.
 
Open Source Software Business Models Redux
Open Source Software Business Models ReduxOpen Source Software Business Models Redux
Open Source Software Business Models Redux
 
From Resilient to Antifragile Chaos Engineering Primer
From Resilient to Antifragile Chaos Engineering PrimerFrom Resilient to Antifragile Chaos Engineering Primer
From Resilient to Antifragile Chaos Engineering Primer
 
Make Accelerator Pluggable for Container Engine
Make Accelerator Pluggable for Container EngineMake Accelerator Pluggable for Container Engine
Make Accelerator Pluggable for Container Engine
 

Similar to Running Legacy Applications with Containers

Building high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftBuilding high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftRX-M Enterprises LLC
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetesDongwon Kim
 
Introduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSSteve Wong
 
Private Cloud with Open Stack, Docker
Private Cloud with Open Stack, DockerPrivate Cloud with Open Stack, Docker
Private Cloud with Open Stack, DockerDavinder Kohli
 
Hacking apache cloud stack
Hacking apache cloud stackHacking apache cloud stack
Hacking apache cloud stackNitin Mehta
 
Orchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresOrchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresDocker, Inc.
 
An Introduction to Kubernetes and Continuous Delivery Fundamentals
An Introduction to Kubernetes and Continuous Delivery FundamentalsAn Introduction to Kubernetes and Continuous Delivery Fundamentals
An Introduction to Kubernetes and Continuous Delivery FundamentalsAll Things Open
 
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
 The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ... The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...Josef Adersberger
 
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...QAware GmbH
 
Vault Digital Transformation
Vault Digital TransformationVault Digital Transformation
Vault Digital TransformationStenio Ferreira
 
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...confluent
 
Openstack days sv building highly available services using kubernetes (preso)
Openstack days sv   building highly available services using kubernetes (preso)Openstack days sv   building highly available services using kubernetes (preso)
Openstack days sv building highly available services using kubernetes (preso)Allan Naim
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...Yong Feng
 
Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications OpenEBS
 
Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...
Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...
Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...Tobias Schneck
 
How to Migrate 100 Clusters from On-Prem to Google Cloud Without Downtime
How to Migrate 100 Clusters from On-Prem to Google Cloud Without DowntimeHow to Migrate 100 Clusters from On-Prem to Google Cloud Without Downtime
How to Migrate 100 Clusters from On-Prem to Google Cloud Without Downtimeloodse
 
Meetup 12-12-2017 - Application Isolation on Kubernetes
Meetup 12-12-2017 - Application Isolation on KubernetesMeetup 12-12-2017 - Application Isolation on Kubernetes
Meetup 12-12-2017 - Application Isolation on Kubernetesdtoledo67
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...Frank Munz
 
(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep DiveAmazon Web Services
 
Webinar: Enabling Microservices with Containers, Orchestration, and MongoDB
Webinar: Enabling Microservices with Containers, Orchestration, and MongoDBWebinar: Enabling Microservices with Containers, Orchestration, and MongoDB
Webinar: Enabling Microservices with Containers, Orchestration, and MongoDBMongoDB
 

Similar to Running Legacy Applications with Containers (20)

Building high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache ThriftBuilding high performance microservices in finance with Apache Thrift
Building high performance microservices in finance with Apache Thrift
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
 
Introduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OSIntroduction to Apache Mesos and DC/OS
Introduction to Apache Mesos and DC/OS
 
Private Cloud with Open Stack, Docker
Private Cloud with Open Stack, DockerPrivate Cloud with Open Stack, Docker
Private Cloud with Open Stack, Docker
 
Hacking apache cloud stack
Hacking apache cloud stackHacking apache cloud stack
Hacking apache cloud stack
 
Orchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failuresOrchestrating Linux Containers while tolerating failures
Orchestrating Linux Containers while tolerating failures
 
An Introduction to Kubernetes and Continuous Delivery Fundamentals
An Introduction to Kubernetes and Continuous Delivery FundamentalsAn Introduction to Kubernetes and Continuous Delivery Fundamentals
An Introduction to Kubernetes and Continuous Delivery Fundamentals
 
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
 The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ... The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
The Good, the Bad and the Ugly of Migrating Hundreds of Legacy Applications ...
 
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
Migrating Hundreds of Legacy Applications to Kubernetes - The Good, the Bad, ...
 
Vault Digital Transformation
Vault Digital TransformationVault Digital Transformation
Vault Digital Transformation
 
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...
Modern Cloud-Native Streaming Platforms: Event Streaming Microservices with A...
 
Openstack days sv building highly available services using kubernetes (preso)
Openstack days sv   building highly available services using kubernetes (preso)Openstack days sv   building highly available services using kubernetes (preso)
Openstack days sv building highly available services using kubernetes (preso)
 
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
Edge 2016 Session 1886  Building your own docker container cloud on ibm power...Edge 2016 Session 1886  Building your own docker container cloud on ibm power...
Edge 2016 Session 1886 Building your own docker container cloud on ibm power...
 
Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications Latest (storage IO) patterns for cloud-native applications
Latest (storage IO) patterns for cloud-native applications
 
Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...
Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...
Kubermatic How to Migrate 100 Clusters from On-Prem to Google Cloud Without D...
 
How to Migrate 100 Clusters from On-Prem to Google Cloud Without Downtime
How to Migrate 100 Clusters from On-Prem to Google Cloud Without DowntimeHow to Migrate 100 Clusters from On-Prem to Google Cloud Without Downtime
How to Migrate 100 Clusters from On-Prem to Google Cloud Without Downtime
 
Meetup 12-12-2017 - Application Isolation on Kubernetes
Meetup 12-12-2017 - Application Isolation on KubernetesMeetup 12-12-2017 - Application Isolation on Kubernetes
Meetup 12-12-2017 - Application Isolation on Kubernetes
 
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...What You Should Know About WebLogic Server 12c (12.2.1.2)  #oow2015 #otntour2...
What You Should Know About WebLogic Server 12c (12.2.1.2) #oow2015 #otntour2...
 
(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive(CMP402) Amazon EC2 Instances Deep Dive
(CMP402) Amazon EC2 Instances Deep Dive
 
Webinar: Enabling Microservices with Containers, Orchestration, and MongoDB
Webinar: Enabling Microservices with Containers, Orchestration, and MongoDBWebinar: Enabling Microservices with Containers, Orchestration, and MongoDB
Webinar: Enabling Microservices with Containers, Orchestration, and MongoDB
 

More from LinuxCon ContainerCon CloudOpen China (6)

Building a Better Thermostat
Building a Better ThermostatBuilding a Better Thermostat
Building a Better Thermostat
 
Flowchain: A case study on building a Blockchain for the IoT
Flowchain: A case study on building a Blockchain for the IoTFlowchain: A case study on building a Blockchain for the IoT
Flowchain: A case study on building a Blockchain for the IoT
 
OCI Support in Mesos
OCI Support in MesosOCI Support in Mesos
OCI Support in Mesos
 
Libvirt API Certification
Libvirt API CertificationLibvirt API Certification
Libvirt API Certification
 
OpenDaylight OpenStack Integration
OpenDaylight OpenStack IntegrationOpenDaylight OpenStack Integration
OpenDaylight OpenStack Integration
 
Obstacles & Solutions for Livepatch Support on ARM64 Architecture
Obstacles & Solutions for Livepatch Support on ARM64 ArchitectureObstacles & Solutions for Livepatch Support on ARM64 Architecture
Obstacles & Solutions for Livepatch Support on ARM64 Architecture
 

Recently uploaded

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 

Recently uploaded (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 

Running Legacy Applications with Containers

  • 1. Niu, Jibin Running Legacy Applications with Containers
  • 2. (2) Evolution of Distributed Computing Time TechnologyProgression Cluster Computing Server Virtualization Containers Client Server
  • 3. (3) Docker Benefits Virtual Machine vs Docker Container Empowers Developers Smaller Footprint High Performance Designedfor Fastest Growing Workload Types “Good Enough” Isolation
  • 4. Docker Adoption Growth Sample of 10,000 companies tracking real usage (Ref: https://www.datadoghq.com/docker-adoption/) 90% is still not “Dockerized” 85% has still not adopted
  • 5. (5) Challenges Legacy Applications in Containers •Static IP address requirement •Hostname/MAC address dependent Network dependencies •Persistent data on local file system Storage dependencies •Data security across tenants Security dependencies Legacy Linux kernel requirements Other OS, e.g. Windows VM is still ideal to run legacy applications
  • 6. Introducing SkyForm VMs Physical Server Auto- scaling Storage VPC Firewall Networks VDisks Clusters Hosts Storage Network Image Mgmt App Store Applicati on Layout Container Mgmt Releasing Service Discovery Auto- scaling Load Balancing Monitoring Logs Dept Mgmt User Mgmt Tenant Mgmt Quota Mgmt Logs Reporting Images Repository Flow Configura- tion IaaS SkyForm ECP HA SkyForm CMP Authentication
  • 7. (7) Server Linux OS with KVM Server Model 1: Fine Grain Shared Docker & VM Management Container SkyFormDockerEngine Server Running VM inside container Limitations : Lack support for migration, snapshotting, etc. Linux OS with KVMLinux OS with KVM VM Container Modern app Container VM Container Modern app Container VM Container Modern app DockerEngine Docker Engine LegacyApps Container ready Apps
  • 8. (8) The customer wants to keep their existing VM management framework, in particular, assume the existing VM environment is managed by OpenStack using KVM • Objective becomes how to improve utilization and QoS in a shared infrastructure Architecture • OpenStack itself is deployed and managed as one SkyFormECP application where the OpenStack services run in docker containers • SkyFormECP allocates whole physical servers to OpenStack • VMs are managed by OpenStack, and SkyFormECP is not aware of VMs – VMs run on the hypervisor, not in containers Model 2: Course Grain Shared Docker & VM Management: Linux with kvm Server Server Server Server Containers VM SkyFormDocker Engine Server Server Server Openstack services run in containers VM VM VM VM VM Docker Engine Docker Engine Docker Engine Linux with kvm Linux with kvm Linux with kvm Linux with kvm Linux with kvm Linux with kvm Docker Engine Docker Engine Docker Engine
  • 9. (9) • HPC job could be serial or parallel. Parallel job could run across multiple hosts • HPC cluster is typically used by multiple users. • A supercomputing center may run jobs by multiple tenants. They share the same bare metal cluster environment • The job management consists of – Job queues – Resourceallocation policies – Job submission,monitoring and control A Use Case: HPC Cluster Server Server Server Batch system: OpenLava Job Job Job Job Job OS OS OS
  • 10. VMs: Tenant D TensorFlow: Tenant C Spark: Tenant B (10) Server Server Docker-enabled HPC Cluster J o b WLM J o b Job WLM Server Server WLM J o b WLM Job Server Server Server HPC Batch Jobs: Tenant A Job Job HPC batch job process WLM HPC batch service Job HPC batch job container Traditional HPC Cluster HPC batch service & jobs run in processes Docker-enabled HPC Cluster • Dockerized HPC compute nodes • Run job from user supplied Docker image • Run traditional “a.out” jobs Benefits • Application portability • Isolation • Compatibility Expansion of HPC Cluster • Big Data, ML, VM (legacy) • Multi-tenant • All workloads run in containers Benefits • Increased demand for HPC infrastructure • Higher utilization • Reduced IT costs WLM HPC batch service run as a container
  • 11. (11) Course Grain HPC Batch Sharing: Method 1 Job HPC batch job process WLM HPC batch service daemon process Job HPC batch job container SparkTensorFlow VM in container Server Server S p a r k S p a r k Server V M V M S p a r k T F T F T F Server J o b WLM Docker Engine Docker Engine Docker Engine Server Batch Service Master Batch Failover Master (slave) J o b Server Server S p a r k Server V M T F T F Server J o b WLM Docker Engine Docker Engine Docker Engine Server Batch Service Master Batch Failover Master (slave) J o b WLM J o b J o bBatch scale out Batch scale in Sharing at thephysical host boundary Batchjobs that arenot provided as a containerimagearerun inside a container createdby thesystem Pros • Evolutionaryextension of existing HPC cluster architecture • Physical isolation betweenHPC batchtenant and non-HPC Cons • Lower utilization • Dedicatedmaster hosts • Longer time toscale out – entirehost must be vacatedbeforeproviding to new tenant WLM HPC batch service run as a container
  • 12. (12) Course Grain HPC Batch Sharing: Method 2 Job HPC batch job process WLM HPC batch service process Job HPC batch job container SparkTensorflow VM in container Server S p a r k S p a r k Server V M V M S p a r k T F T F T F Server J o b WLM Docker Engine Docker Engine Docker Engine Batch Master & Slave J o b Server S p a r k Server V M T F T F Server J o b WLM Docker Engine Docker Engine Docker Engine J o b WLM J o b J o bBatch scale out Batch scale in Run Master & slave ina container LeveragesECP for master HA Pro • Remove dedicatedhosts • ImprovedutilizationcomparedwithModel 1 • Can support multiple HPCBatch Service tenants Con • Utilizationisnot optimal due to sharing at the physical host boundary WLM HPC batch service run as a container Docker Engine Server J o b Batch Master & Slave Docker Engine Server J o b
  • 13. (13) Fine Grain HPC Cluster Sharing Architecture Server Server S p a r k S p a r k Server V M J o b S p a r k J o b V M S p a r k T F T F J o b Sky Form T F HPC Batch Queue Definitions SparkTensorFlow VM in container Job HPC batch job container Each of HPC Batch Service, Spark, TensorFlow,all VMs in aggregateis a separatetenant SampleResourcePlan (Algorithm) forBatch Service tenant • Own:50 CPUs, 100 GB memory • Borrow:As manyCPUs/memoryas availablewith the understandingthata job runningon borrowedresources mustfinishedwithin ½ hour • Lend: Lend up to 20 CPUs, 50 GB memorywith the understandingthatthe loan resourceswill be returned bywithin 15 minutes after a reclaim requestis made • The numberofpendingjobs and the job characteristics / historicalpatterns areused to trigger scaleup (reclaim,borrow),scaledown (lend, return borrowed resources) Built-in HPC Batch Service • Optimal utilization • Lowest TCO • Fastest scaling out / in
  • 14. (14) OpenLava Compute Server Server Linux OS Docker “Best Effort” mode Statefulset Run as “host network”, no need to set up DNS lim: root Res: root Sbd: root JobA UserAJobB UserB JobD Docker job UserD JobC Docker job UserC Shared file system (e.g., gluster, NFS) Mount LIMreports the resource metrics of the physical host On Docker startup, connectto existing LDAP,Mount filesystems, start up OL daemons, runlsaddhost to add slaveto OpenLava cluster Support binary-based (process) jobs and Docker based jobs
  • 15. (15) SkyForm ECP (Enterprise Container Platform) leverages Kubernetes to manage container clusters Challenge: How to share resources to ensure QoS among multiple tenants when there is contention for resources (i.e., all resources all used/reserved)? Solution: Leverage traditional HPC job scheduling algorithm for scheduling containers Using Kubernetes
  • 16. (16) Scheduling Policies and QoS Policies Priority Fairshare/Round Robin Preemption Ownership (private cloud) • Higher QoS users get • High priority • Moreshares • Being able to preemptlow priorityusers’containers • Morephysicalresource ownership • Lower QoS users get • Low priority • Less shares • Containers could be preempted • Less or zero physicalresource ownership
  • 17. (17) SkyForm Future Development Workload Assurance IoT, Big Data, HPC, ML Infrastructure Optimization Multi-Tenant Sharing IntegratedDocker & VM Management Algorithmic IT (AI) Enabled VM/Docker Cluster Manager HighLow Infrastructure Utilization Low High OPTIMAL Time MULTI-TENANTFAIRSHARE