Upload
leo-dickerson
View
217
Download
4
Embed Size (px)
Citation preview
Martin Sjölin ([email protected])LISA NT 1999, 1
State Driven Software Installation for Windows NT
Martin Sjölin, [email protected]
Martin Sjölin ([email protected])LISA NT 1999, 2
Overview
• Background• Environment• Introduction to Packaging• Implementation - Workstation/Server & User• The Good, the Bad and the Ugly• Questions
Martin Sjölin ([email protected])LISA NT 1999, 3
Background
• Merger of two administrative model & technical infrastructure
• Locked down machine with standard set of applications
• User data on local server• Flex seating• NetWare Servers, NT Servers, and Workstations• Easy installation of standard components• Secure server• Insecure workstations and LAN
Martin Sjölin ([email protected])LISA NT 1999, 4
Environment
• Union Bank of Switzerland (UBS)– ~25000 NT4.0 WS– ~700 NW 4.11 SV– ~500 Applications (16-bit & 32-bit)– Local Administration– Centralized user administration (NDS)– Software distribution via CD or HTTP
• Swiss Bank Corporation (SBC)– ~14000 NT3.51 WS– ~1000 NT 3.51 SV– ~400 Applications (16-bit & 32-bit)– Centralized Administration– Centralized User administration (NT Domain)– Software distribution and installation via SMS & ftp
Martin Sjölin ([email protected])LISA NT 1999, 5
Packaging - Background
• Sys V like packaging• Based on experiencing from Solaris, HP-UX, NetWare
3.x, and NetWare 4.x• WinInstall & InstallShield was not sufficient• Run Time packages• Support for NT Servers, NetWare Servers, NT
Workstations
Martin Sjölin ([email protected])LISA NT 1999, 6
Packaging - NT applications
• Server components - files (dictionaries etc).• Machine components - files (DLL/EXE) & registry
(HKLM)• User Components - files (INI/DAT) & registry (HKCU)
Martin Sjölin ([email protected])LISA NT 1999, 7
Packaging - UBS
• Packaging Classes: registry, files, path, environment,….
• Packaging Variables: independent of directory structures
• Declarative (prototyp.txt)• Dependencies: Installation- and Run-Time• Server based Installation & Local Installation.• Pkgmk, pkgadd, pkgrm, pkgchk …
Martin Sjölin ([email protected])LISA NT 1999, 8
EUPSRV - Workstation/Server Components
• NT service running under local system account• Using Credential to access the package server• Poll mode: Wakes up regularly to check for status
change• Push mode: Start from SMS job or ZEN client• Handles restarts requested by packages• Verify if user is logged in• Run pre- and post-batch script• Same service for NT Server, Workstation, and Laptop
Martin Sjölin ([email protected])LISA NT 1999, 9
Machine’s Current State
• Determine the Current State of the machine: – Determine set of packages installed– For each package determine: installation mode & installation
time, installation status, f&p server• Machine Current State - %SystemRoot%\Config\
PkgInfo\….office_5_un_5.0\pkginfo.iniubsgnu_4_un_1.4\pkginfo.iniubsperl_5_un_1.5\pkginfo.ini...
Martin Sjölin ([email protected])LISA NT 1999, 10
Machine’s Target State
• Read the Target State from the configuration database – list of packages with installation mode (local, shared, or
exported)• Machine Target State:
…UBSGNU_4_UN_1.5=LOCALUBSPERL_5_UN_1. 4=LOCALOFFICE_5_IE_5.0=SHAREDOUTLOOK_4_IE_5.11=SHARED...
Martin Sjölin ([email protected])LISA NT 1999, 11
Packages to Remove or Add
• Determine set of Packages 2 Remove = all packages not in the Target State but in the Current State
ubsgnu_4_un_1.4ubsperl_5_un_1.4
• Determine set of Packages 2 Install = all package in the Target State but not in the Current State
ubsgnu_4_un_1.5ubsperl_5_un_1.4outlook_4_ie_5.11
Martin Sjölin ([email protected])LISA NT 1999, 12
Do It!
• Filter out all packages not installed by service• Verify that all packages sources is present• Verify that all server based components is present• Remove packages in Packages 2 Remove set
– install reverse installation order– handle packages requested immediate reboots
• Install the packages the Packages 2 Install set– installation order as listed in the configuration database
Martin Sjölin ([email protected])LISA NT 1999, 13
EUPLOGON - User Components
• Invoked at user logon via UserInit HKLM• Compares packaging installed in the “user profile”• Against packages installed on the current machine• Package customize via pre- and post-batch files• Only remove user components locally installed
Martin Sjölin ([email protected])LISA NT 1999, 14
The Good, the Bad & the Ugly
• System in operation since autumn 1997• Mechanism not bound packaging • Overwrite versus pkgrm + pkgadd• Centralized local states versus distributed of installed
package• Integration Microsoft SMS
– Same version of server based packages– 100% of packages delivered to SMS distribution servers
• Poll versus Push mode• Centralized configuration database versus files• Packaging Guidelines together with tools • Microsoft Software Installer (MSI)
Martin Sjölin ([email protected])LISA NT 1999, 15
Questions?