Application Virtualization Concepts
Download
Report
Transcript Application Virtualization Concepts
TMurgent Technologies
APPLICATION VIRTUALIZATION
CONCEPTS AND PLATFORMS
Tim Mangan
TMurgent Technologies
Microsoft MVP for Application Virtualization
Virtualization
Encapsulation
TMurgent Technologies
Use as if in original environment
Isolation
Application Virtualization?
Server Virtualization
Server Consolidation
Share hardware
resources
Application Virtualization
App Compatibility
Central App
Management
Application Package
Primary
Partition
Virtual Machine A
Virtual Machine B
Virtual Machine C
Guest OS
Services and
Applications
Guest OS
Services and
Applications
Guest OS
Services and
Applications
Guest OS
Guest OS
Guest OS
Application
Application
Application
Application Virtualization Agent
Hypervisor
Host Hardware
TMurgent Technologies
Operating System
Application
Application Virtualization!
Eliminate conflict between applications
DLL Hell
Need different versions of required component (e.g.:
Java)
Different versions of same application
Customize app to the task
TMurgent Technologies
Centralized Management
Install and configure once (offline)
Monitor application usage
Enforce vendor license agreements
Portability / Flexibility
Dynamic IT!
Components of AppVirt
Encapsulation
Publication
Delivery
TMurgent Technologies
Execution
All Vendors
Encapsulation
Offline process
Sequencing, Profiling, etc…
“Clean PC” (Virtual PCs!)
Install and configure application
Create a portable package
TMurgent Technologies
May/may not include virtualization client
Test
What Is An Application?
Files
Executable Components
Configuration
Data
Registry
Machine/OS Related
App Related
User Related
TMurgent Technologies
Integrations
With OS/Machine
With Other Applications
Encapsulation
Packaging Effort
Process
Take “clean” PC
Minimum common image
Install App
Run App (license etc…)
Customize App
Documentation
TMurgent Technologies
Have “App Expert” verify
Delivery
File Transfer
Network share
Thumb drive / CD
MSIs
TMurgent Technologies
Streaming
On demand delivery
Three levels:
Package: All bits must arrive before execution
File: Entire file must arrive before use
Block: Parts of file needed before use
Block Level Streaming
Feature
Feature
Block
Block1
Feature Block 2
Feature Block 2
1
TMurgent Technologies
File AppRun.exe
Average 10 – 30% needed to start
Less than 50% ever used
Publishing
Access and authorization
Shortcuts
Start Menu “All Programs”
Desktop
Quick Launch Bar
TMurgent Technologies
Shell Integrations
File Type Associations
.DOC msword.exe
Icon Representations
“Send To”
“New File”
Publishing (continued)
Per machine or per user?
Consider Terminal Server use
TMurgent Technologies
Non-company owned equipment
Execution
Redirection Style Isolation
Only virtual app can “see” files/registry
Virtualization
More complete isolation
Protection of App/OS components
TMurgent Technologies
Layered integration
Ultimate Goal
TMurgent Technologies
State Separation Presentation
App Virtualizaiton Example
Windows
Registry
Non virtualized
Applications,
Services, dlls, and
COM
components
X
Virtual
Application
TMurgent Technologies
Files (Data)
User Profile
Virtualization
Settings
Package
Virtualization
Settings
Virtual App Execution
Software Vendor Code
Other Library
Win32 Library
.Net Interface Library
Function()
RegQueryValueEx()
Microsoft:Win32:Registry:GetValueName()
Theore
ti
cally
Read Registry Value Name
“UserName”
Kernel32.dll
Injection
User Mode Hook
TMurgent Technologies
NtRegQueryValueEx()
User Mode/Space
Kernel Mode/Space
ZwRegQueryValueEx()
Injection
Kernel Mode Hook or Filter
Vendors
Microsoft App-V (formerly SoftGrid)
Citrix XenApp App Streaming (formerly AIE)
VMware ThinApp (formerly Thinstall)
Symantec (Altiris SVS/AppStream)
InstallFree
TMurgent Technologies
Xenocode
EndeavorsTechnology
Vendor: Microsoft
Microsoft App-V
Purchased Softricity SoftGrid 2006
Version 4.5 – release Sept 8 2008
Oldest, most feature complete
Client based – full virtualization
TMurgent Technologies
Publishing per user or per device
Streaming, Pseudo-Streaming, or MSI
Reporting and License Compliance
Vendor: Citrix
Citrix XenApp App Streaming (formerly AIE)
Developed in-house
First Release ~2005
Client based nearly full virtualization
Publish per-user (same as non-virtual)
TMurgent Technologies
Desktop or TS scripted choice
Pseudo Streaming
Integrated reporting if TS
Vendor: VMware
VMware ThinApp (formerly Thinstall)
Purchased Thinstall 2008
First Release?
Clientless
No publishing today
TMurgent Technologies
File copy delivery
Vendor: Symantec
Symantec Workspace Virtualization (Altiris
SVS/AppStream)
Purchased multiple companies
AppStream:
Client Based
Isolation
Streaming
SVS
Publishing
Reporting
TMurgent Technologies
Best Potential to compete, but slow in integrating
components…
See
http://eval.symantec.com/mktginfo/enterprise/fact_sheets/bdatasheet_endpoint_virtualization_suite_02-2009.en-us.pdf
Vendor: InstallFree
Formed 2006 – First product April 2008
Thinstall clone called “Bridge”
Some Central Publishing
TMurgent Technologies
Block level streaming – but user mode
Vendor: Xenocode (Code Systems)
Founded 2002 – but focused elsewhere
Announced switch to App Virt in June 2008
OEM deal with Novell
TMurgent Technologies
Virtual Application Studio – in Beta
Vendor: Others
StreamTheory/Tadpole/Endeavors/Arcsael
“Ceedo Enterprise” (www.ceedo.com)
FastScale Composer (www.fastscale.com)
Greenborder
RingCube MojoPac (www.ringcube.com)
TMurgent Technologies
Trigence AE (www.trigence.com)
Trustware (www.trustware.com)
TMurgent Technologies
Factors to consider
Client or Clientless
Centralized Delivery and Management
Copy or Streaming Delivery
Desktop / Terminal Server OS support
32 bit / 64 bit support
VirtApp Isolation (avoid conflicts)
VirtApp Cooperation (avoid over isolation)
What can’t be virtualized?
Vendor Matrix
Microsoft
VMware
Symantec
InstallFree
XenoCode
Client
Clientless
Clientless
Client(less)
Client
Client
Centralized
Streaming
Terminal
Server
?
?
64 bit
TMurgent Technologies
Citrix
Clientless
Isolation level
?
Cooperation
?
Publishing
???
???
What Can’t?
Device drivers
Dd, Services,
.net
?
??
TMurgent Technologies
Matrix – another view
http://www.virtuall.nl/articles/applicationanddesktopdelivery/ApplicationVirtualizationSolutionsOverviewandFeatureMatrix.pdf