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