State Driven Software Installation for Windows NT Martin Sjölin, WDR

Download Report

Transcript State Driven Software Installation for Windows NT Martin Sjölin, WDR

State Driven Software Installation for
Windows NT
Martin Sjölin, WDR
[email protected]
Martin Sjölin ([email protected])
LISA NT 1999, 1
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, 2
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, 3
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, 4
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, 5
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, 6
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, 7
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, 8
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.ini
ubsgnu_4_un_1.4\pkginfo.ini
ubsperl_5_un_1.5\pkginfo.ini
...
Martin Sjölin ([email protected])
LISA NT 1999, 9
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=LOCAL
UBSPERL_5_UN_1. 4=LOCAL
OFFICE_5_IE_5.0=SHARED
OUTLOOK_4_IE_5.11=SHARED
...
Martin Sjölin ([email protected])
LISA NT 1999, 10
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.4
ubsperl_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.5
ubsperl_5_un_1.4
outlook_4_ie_5.11
Martin Sjölin ([email protected])
LISA NT 1999, 11
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, 12
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, 13
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, 14
Questions?
Martin Sjölin ([email protected])
LISA NT 1999, 15
Contacts
Martin Sjölin, [email protected]
Martin Sjölin ([email protected])
LISA NT 1999, 16