softgrid advanced sequencing

39
SOFTGRID ADVANCED SEQUENCING April 23-25, 2007 BriForum 2007: Chicago 1

Upload: cameroon45

Post on 26-May-2015

508 views

Category:

Technology


5 download

TRANSCRIPT

Page 1: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 1

Page 2: SoftGrid Advanced Sequencing

April 23-25, 2007

SoftGrid Advanced Sequencing

Michael Burke

Page 3: SoftGrid Advanced Sequencing

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

Page 4: SoftGrid Advanced Sequencing

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)

Page 5: SoftGrid Advanced Sequencing

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

Page 6: SoftGrid Advanced Sequencing

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

Page 7: SoftGrid Advanced Sequencing

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

Page 8: SoftGrid Advanced Sequencing

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.

Page 9: SoftGrid Advanced Sequencing

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

Page 10: SoftGrid Advanced Sequencing

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)

Page 11: SoftGrid Advanced Sequencing

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

Page 12: SoftGrid Advanced Sequencing

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)

Page 13: SoftGrid Advanced Sequencing

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

Page 14: SoftGrid Advanced Sequencing

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

Page 15: SoftGrid Advanced Sequencing

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

Page 16: SoftGrid Advanced Sequencing

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

Page 17: SoftGrid Advanced Sequencing

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

Page 18: SoftGrid Advanced Sequencing

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

Page 19: SoftGrid Advanced Sequencing

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

Page 20: SoftGrid Advanced Sequencing

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

Page 21: SoftGrid Advanced Sequencing

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

Page 22: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 22

Page 23: SoftGrid Advanced Sequencing

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

Page 24: SoftGrid Advanced 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”

Page 25: SoftGrid Advanced Sequencing

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)

Page 26: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 26

OSD Script Event Timing

Page 27: SoftGrid Advanced Sequencing

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

Page 28: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 28

SCRIPTBODY Examples

Page 29: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 29

HREF Examples

Page 30: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 30

Registry and Environment Variable Scripting

Page 31: SoftGrid Advanced Sequencing

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

Page 32: SoftGrid Advanced Sequencing

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

Page 33: SoftGrid Advanced Sequencing

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)

Page 34: SoftGrid Advanced Sequencing

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

Page 35: SoftGrid Advanced Sequencing

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

Page 36: SoftGrid Advanced Sequencing

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

Page 37: SoftGrid Advanced Sequencing

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

Page 38: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 38

Questions?

Page 39: SoftGrid Advanced Sequencing

SOFTGRID ADVANCED SEQUENCING

April 23-25, 2007 BriForum 2007: Chicago 39

Thank You!

Michael Burke

[email protected]