Upload
cameroon45
View
516
Download
5
Tags:
Embed Size (px)
Citation preview
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 1
April 23-25, 2007
SoftGrid Advanced Sequencing
Michael Burke
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 3
What is Sequencing?• True virtualization of
– File system– Registry– INI– Environment variables– COM objects
• True isolation of applications
• Reorganization into a streaming format
• Done without modification of source code
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 4
“Suite-ing” Applications• Two or more applications that share the same virtual
environment• Application dependencies
– Java, ActiveX, etc.– API calls
• Required because of the nature of Softricity isolation
• Available external application access:– File associations– Local application access– Basic copy and paste (text and graphics)
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 5
The Concept of “The Bubble”
Operating System
App1 App3App2
XSuite A Suite B
X X
SystemGuardSystemGuard
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 6
Sequencing Phases• Planning/Preparation• Sequence Process• User Acceptance Testing• Remediation• Deployment• Support/Update• Retire
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 7
To Sequence or Not to Sequence
• Sequencing may not be applicable in all scenarios, such as:– Drivers/run-time dependencies– Application dependencies – Supportability– Functionality/performance
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 8
Environment Planning• Standardize on a virtual drive letter (Q:)• Asset Directory Naming Convention
– 8.3 ONLY! (ex. AcroRd80.V1), no spaces– Do not reuse
• Suite Naming Convention– Vendor_Application_AppVer_SeqVer (ex. Adobe_AcrobatReader_8.0_v1)– No spaces– Avoid reuse
• Process methodology– SoftGrid Application Request Form– Process for requests
• Sequence lifecycle tracking process– Track package details (apps, dependencies, asset directory, max block size,
etc.)– Track progress on application sequences– File share, Spreadsheet, database, MS SharePoint site, etc.
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 9
The Sequencer Machine• Operating Systems
– W2K Pro/Server– WXP Pro– W2K3 Server
• Resources– Single (Fast) CPU– 1GB+ RAM– FAST disk subsystem– Adequate free space
• Min. Two Partitions– C: (System)– Q: (Sequence)– Ghost images (opt.)
• Basic Build– “Plain vanilla” install– Mirror platform in prod use– No pre-installed software unless
part of standard build– Recommended: Don’t pre-install
sequencer application
• Use Multiple Sequencers– Multi-task– Leverage Virtualization
(Snapshot/revert VMs)– Ghost Physical Machines– Disable machine account
password changes
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 10
Sequencer Setup• Basic OS build
– No security software (Cisco CSA, firewalls, etc.)– No antivirus (preferred)
• Partitions– Partition 1 - C: System OS and Sequencer [10-20GB]– Partition 2 - Q: Drive [10GB]– Partition 3 - Ghost images (omit if VM) [10GB]
• Create a dummy printer• Create dummy System and File DSNs• Set Explorer “Launch folder windows in a separate process”• Add Sequencer Exclusion Items
– C:\Documents and Settings\<username>\ntuser.dat– C:\Documents and Settings\<username>\Application Data\
VMware\hgfs.dat (VMware Workstation only)
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 11
Preparing to Sequence• Know your applications!
– Requirements and dependencies– Configuration– Use-case scenarios
• Gather resources– Media, network locations, license keys – no activating keys– Key people / documentation
• SoftGrid application request form• Identify target operating system(s)
– Sequence on least common denominator OS– Are multiple sequences required?
• Determine sequence options– VFS or Mount-point install– Block size and compression– FB1 and FB2 delineation
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 12
Preparing to Sequence• Perform a test installation prior to sequencing
– Become familiar with install options, requirements, and use• Install any dependent applications prior to sequencing
– Applications assumed part of base build• Create asset directory on Q: prior to sequencing• Map necessary drives
– Source files and application-specific• Pre-extract files to temporary directory• Document the Sequence
– The process (recipe)– Sequence options (Sequencer version, max block size, who did it, etc.)– Errors, resolutions, changes– Dependent applications (for patching/upgrading)
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 13
Sequencing Process
1. Installation media
2. Installation Phase
3. Shortcut Wizard
4. Save Package
5. Test, test, test!
6. Production release
7. Patch/update
SystemGuard
.SFT .OSD .ICO .SPRJ
SystemGuard Production
1 2
3
4
5
6
7
Sequencer
Client VAS Server
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 14
The Results• .SFT
– The sequenced application(s)– Record of files, directories, registry, etc.
• .OSD – XML-based file containing information about the app and how to
launch it• .ICO
– Icon file, created in conjunction with the OSD• .SPRJ
– The Sequencer Project file– Contains sequence information– Record of associated SFT, OSD and ICO file names
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 15
Package Configuration• Suite Name
– vendor_appname_appversion_seqver– Ex: Adobe_AcrobatReader_8.0_v1
• Comments– Sequencer version, OS, Person, Asset directory name, suited
applications, etc.• Hostname
– %SFT_SOFTGRIDSERVER%, FQDN or IP• Path
– <suitename> or <department>\<suitename>– Establishes the directory structure of content share
• Operating Systems– Remove all unless package is for specific platform
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 16
Sequencing the Application• Compression and Block Size• Install to
– Q:\<assetdir>\<app_name>\– “Program Files” = <assetdir>
• Use MSI logging if possible– Create a .bat file with /l*v
option• No “install on first use”• Pre-configure apps while
monitoring– Disable automatic updating– Accept EULA– Pre-configure application
defaults– Clear IE cache and cookies
• Stop monitoring– When finished with all apps in
suite– To process necessary interim
reboots• Always include MSI
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 17
Shortcut Wizard• Clean up shortcuts
– Remove unneeded shortcuts
– Clean up version numbers
– No spaces in OSD file names
– Modify shortcut locations– Limit number of file type
associations
• Launch applications– Designating FB1 and
FB2– Use “Launch All” or
CTRL+click– “Top 10” features– Some do not terminate
automatically
• Finish– Sequences blocks
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 18
Finishing Up• Check for drivers
– File system tab
• Save the Package– Directory = suite name– SPRJ file = suite name– Include MSI log of install
• Move Package Off Sequencer– VAS content share– Network location
• Clean Up Sequencer– Revert or re-image
• Complete Documentation– Recipe– Change control– Document package size,
launch size and max block size
• Notify Appropriate Personnel for Testing
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 19
User Acceptance Testing (UAT)• Encourage the documentation of Use Cases• Test on Production OS Deployment
– Include security software, AV, etc.– Group Policy in effect– Test on all intended OS recipients
• Check Event Logs for Errors• Get Qualified Personnel Involved• Document Issues
– Update change control– Document resolutions– Document required OSD scripting
• Obtain Sign-off of Success
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 20
Upgrading a Package• Open for upgrade• Perform changes/additions• File -> Save (Active Upgrade)
– SFT file incremented
• File -> Save As (package branch)– New asset directory name– New suite name– New GUID is generated automatically– Be sure to modify package configuration first
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 21
Editing OSD Files• Disable Word Wrap in Notepad• Use an XML-aware editor
– Ex. EditPlus• Clean Up Readability
– Align CODEBASE items• Remove/Add OS tags• Scripting and Custom Registry
Modifications
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 22
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 23
Advanced Sequencing
• Leveraging local applications in a sequence– As Primary Application (iexplore.exe)
• Custom OSD calling local binary
FILENAME=“%PROGRAMFILES%\Internet Explorer\iexplore.exe”
– As Supporting Applications (Office, Lotus Notes Client, Acrobat Reader)
• Supporting apps installed on Sequencer machine prior to sequencing
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 24
Passing Parameters
• Modify OSD <CODEBASE> Tag
– FILENAME=“%PROGRAMFILES%\Internet Explorer\iexplore.exe” PARAMETERS=“http://www.briforum.com”
– FILENAME=“Off2k3.V1\MSOffice2003\Office11\ msacess.exe” PARAMETERS=“H:\Databases\briforum2007.mdb”
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 25
OSD Scripting• Script Timing and Events
– PRE STREAM– POST STREAM– PRE LAUNCH– POST LAUNCH– POST SHUTDOWN
• Protect– Protect=TRUE (script runs inside virtual environment)– Protect=FALSE (script runs outside virtual environment)
• Timeout– Timeout=xx (wait xx seconds for script to complete before reporting error)– Timeout=0 (wait indefinitely for script to complete)
• Wait– Wait=TRUE (wait for script to complete before continuing)– Wait=FALSE (do not wait for script to complete before continuing)
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 26
OSD Script Event Timing
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 27
OSD Scripting Options• <SCRIPTBODY>
– Can call non-executable commands (md)
– Creates a temporary script on the client, which executes and is then deleted
– Uses escape ( \ ) character
– DOS window appears
• <HREF>– Used to call direct
executables (xcopy)– No non-executables
permitted– Command is executed
directly on the client– No DOS window appears
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 28
SCRIPTBODY Examples
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 29
HREF Examples
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 30
Registry and Environment Variable Scripting
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 31
Dealing with Drivers
• Check sequencer file list for /drivers directory
• Determine if drivers are necessary• Extract drivers and install separately
– SMS package– Script through OSD
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 32
Troubleshooting Packages• No icons
– Active Directory group membership– Access to Content share– Shortcut locations
• Package won’t launch– Check SoftGrid Client log for errors– %SFT_SOFTGRIDSERVER% variable– Check Event Viewer– Max block size– Clear client cache
• User settings keep resetting– Identify settings file in the package– Mark as user data
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 33
Getting Inside the Bubble• Create a debug OSD
– Append “Debug” to SOFTPKG NAME tag– FILENAME=“%WINDIR%\System32\cmd.exe”– SUBSYSTEM VALUE=“console”
• Explorer.exe /separate• Filemon and Regmon
– Registry modifications outside the bubble first (see Microsoft KB 931819)
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 34
Dealing with Side-by-Side• Check Event Viewer• Locate the issue
– Dependent binary (.exe)– Dependent directory– WinSxS library dependencies
• OSD scripting workaround– Pre-launch dependent binary– Copy WinSxS entry to local system
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 35
Identifying Errors• Client Logging
– C:\Program Files\Softricity\SoftGrid for Windows Desktops\sftlog.txt– Logging level:
• HKEY_LOCAL_MACHINE\SOFTWARE\Softricity\SoftGrid Client\CurrentVersion\Configuration\LogMinSeverity=n
• 4 is default, 5 increases log detail• Restart client service
• May be useful information in the log– Ex. “The system cannot find the file specified.”
• Research error codes on MS KB– Search on the last error code block– Error code: 40023B-0060926C-80070002
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 36
Sequencer Log Files• sft-seq-log.txt
– Main log for the sequencer• sftrbt.txt
– Records actions during reboot processing• SFTCallBack.txt
– Log of SystemGuard-watched processes• filter.log
– File-activity log recorded by SystemGuard– Use dumplog.exe to decode
• files.txt– Log of all files in the VFS– Not enabled by default– HKLM\Software\Softricity\SoftGrid Sequencer\CurrentVersion\
FileManifest=1
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 37
When All Else Fails…• Install application on plain Windows install
– See it work– Identify where application fails
• Try a VFS installation– Not recommended for large packages (> 800MB)
• Try streaming to a clean system– Basic Windows install with SoftGrid client– No security software, AV, GPO
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 38
Questions?
SOFTGRID ADVANCED SEQUENCING
April 23-25, 2007 BriForum 2007: Chicago 39
Thank You!
Michael Burke