Professional Documents
Culture Documents
VDesktop, Docker, Kubernetes, Serverless Computing - Tagged
VDesktop, Docker, Kubernetes, Serverless Computing - Tagged
VDesktop, Docker, Kubernetes, Serverless Computing - Tagged
VIRTUALIZATION OF DESKTOP,
APP & DOCKER CONTAINERS
Dr. Khaled Salah
Hardware
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 2
DESKTOP VIRTUALIZATION
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 4
Desktop Virtualization
Desktop Virtualization
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 5
Benefits of Desktop Virtualization
• Enablement of thin clients
• Improved data security
• Simplified data backup
• Simplified PC maintenance
• Flexibility of access
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 6
Desktop Virtualization Techniques
• Technique 1: Remote Desktop Services(RDS)
• Technique 2: Virtual Desktop Infrastructure (VDI)
• Desktop virtualization techniques provide the ability to centrally
host and manage desktop environments
Deliver them remotely to the user’s endpoint devices
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 7
Remote Desktop Services
• RDS is traditionally known as
terminal services
• Supported by a multi-user OS
• A terminal service runs on top of a
Windows installation
Provides individual sessions to
client systems
Clients receive visuals of the
desktop
Resource consumption takes place
on the server
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 8
Virtual Desktop Infrastructure(VDI)
• VDI involves hosting desktop which
runs as VM on the server in the
VDC
Each desktop has its own OS and
applications installed
• User has full access to resources of
virtualized desktop
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 9
VDI: Components
• Endpoint devices Endpoint devices
VM execution
server
• VM hosting/execution
servers
• Connection Broker
Connection
broker Shared
Storage
PCs,
notebooks
thin clients
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 10
VM Hosting Servers
• VM hosting servers are responsible for hosting the desktop VMs
Remotely delivered to the endpoint devices
• Each VM can be dedicated to a specific user or allocated in a
pool
A VM pool shares VMs for concurrent use by many users
• When provisioning a VM, a template or image may be used as a
basis for the creation of the VM, settings, and disk
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 11
Connection Broker
• It is responsible for Connection Broker
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 12
User State Virtualization
• User state includes user’s data as User State Virtualization
well as application and OS
configuration settings
• System/OS checkpoint
• User state virtualization stores user’s User PC Server
data and settings in a central location Central copy of
user data and settings
• User state virtualization benefits:
Easier migration of user state during User State User State
Operating System refresh/migration Local Storage Central Storage
Users are free to roam, and their
data and settings follow them.
Mitigate productivity loss of PC
replacement
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 13
APP VIRTUALIZATION
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 15
Popular Examples – BC Platforms
• BTC
• EVM
• HL Docker Containers
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 16
Copyright © 2011 EMC Corporation. All Rights Reserved.
Copyright © 2011 EMC Corporation. All Rights Reserved.
Application Virtualization
Application Virtualization
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 19
Application Virtualization: Deployment
Methods
• Application Encapsulation most popular
Application is converted into a self-contained package
Does not rely on software installation or underlying OS
Standalone executables
Application packages may run from USB, CD-ROM, or local disk
Built-in features within the package for auto updates and versioning
• Application Streaming
Application specific data/resources are transmitted to the client
device when the application is executed
Minimum amount of data (commonly between 10%-30% of the
total application) is delivered to the client
Additional application features are delivered on demand
Locally installed stream agents are required
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 20
Application Virtualization: Benefits
• Simplified application deployment/retirement
No worry about OS issues
• Simplified operating system image management
Applications are completely separate from OS
OS patches and upgrades do not affect the applications
• Elimination of resource conflicts
Applications when running on the same OS
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 21
DOCKER CONTAINERS
Containers
Docker Containers
IBM Bluemix
Microsoft Azure
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 30
Play video …
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 31
Run any app on any OS?
All Linux-based apps can be dockerized and run
anywhere.
You can run any app on any OS as long as the base OS
supports the app
For example, MS Windows apps can be dockerized and may not
work on Linux of Mac OS, but can run on all Windows OS that
supports the app.
The same goes for “XCode” of Mac OS. XCode can be dockerized
for Mac base OSes, but not for Linux or Windows base OSes.
• If you have an “XCode” version that runs on Linux – then it can be
dockerized for all platforms!
Boot2docker transformation of OS APIs may not work, if some
APIs are not supported (can not be virtualized) by the base OS.
The basis of microservices (uS)
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 33
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application
Kubernetes
or K8s
Kubernetes
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 36
Architecture
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 37
System Components (master node)
• etcd stores configuration about the underlying cluster and its
state
• Scheduler maps pods to nodes, with continuous monitoring and
load balancing, to ensure high availability, QoS/SLA,
affinitization, data locality, etc.
• Controller Manager controls and manages the addition or
deletion of cluster resources
• API Server provides internal and external interfaces to K8s
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 38
System Components (slave node)
• Kubelet is responsible for the running state of each node,
ensuring that all containers on the node are healthy. It takes care
of starting, stopping, and maintaining application containers
organized into pods as directed by master.
• Pod is the basic scheduling unit. A pod consists of one or more
containers that are guaranteed to be co-located on the host
machine and can share resources. Each pod has a unique IP
address. Think of a pod as a single docker engine that manages
multiple containers.
Container resides inside a pod. The container is the lowest level of
a micro-service that holds the running application, libraries, and
their dependencies. Containers can be exposed to the world
through an external IP address.
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 39
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application
System Components (slave node)
• Kube-proxy is an implementation of a network proxy and a load
balancer. It is responsible for routing traffic to the appropriate
container.
• cAdvisor is an agent that monitors and gathers resource usage
and performance metrics such as CPU, memory, file and network
usage of containers on each node.
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 41
SERVERLESS COMPUTING
• https://www.youtube.com/watch?v=eOBq__h4OJ4
• https://www.youtube.com/watch?v=UsaiOEFdfs0
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application 51
Lab Exercise #9
Copyright © 2011 EMC Corporation. All Rights Reserved. Virtualized Data Center – Desktop and Application