Page 1 of 1 1
Topic Options
#99959 - 2003-03-25 02:07 AM Installing Software & Automation with Kix
Glenn Barnas Administrator Offline
KiX Supporter
*****

Registered: 2003-01-28
Posts: 4402
Loc: New Jersey
There's been a bit of talk about software installs managed by KiXtart lately. I have a software management system written in Kix that we use to build and customize systems, and - after looking over the UDF library today - decided I'd post several that have been a useful part of my system. (I'm not at liberty to post it verbatim, but I can describe the concepts and post some UDFs and other components.)

For us, it's more about organization.. We have a fairly strict configuration for storing software on a central server for OTN installs.

The root of the share has "install.bat" which collects the arguments and passes them to Kix; "install2.kix", which validates the request and initiates the install; and "qchain.exe" - the MS tool to allow multiple hotfixes to be installed without rebooting.

Every application is installed in a subfolder with the following structure.. for example - I'll illustrate Internet Explorer 6.0.

code:
 
\IE <- Internet Explorer Root
\Current <- Current (6.0) version
\Archive <- Prior version(s)
\5.5 <- Version 5.5
\Test <- Version not yet supported by IT
\SvcPack <- folder for current release SP
\Current <- Redirects to actual SP folder
\1 <- Service Pack 1
\2 <- Service Pack 2
\ResKit <- Resource Kit
\Support <- other related tools
\HotFix <- All hotfixes

IE is a well-rounded example - at this time it has everything illustrated above except the Test folder in our environment.

Now that we have a "standard" structure, it's easy to implement a scripted install process. Every folder that has an installable product (except hotfix) has an installation batch file in it. Every installation batch file has exactly the same name - "#Install.bat". The leading "#" prevents confusion with any other application name. This batch file contains anything from 1 line to complex procedures, but follows just one rule.. everything must run from the "current directory".

Now, when the Install command is issued, it simply CD's to the \app_name\Current folder and runs #INSTALL.BAT. The script takes some parameters to control which application component gets installed.

Continuing with the IE example.. From the root of our Software Distribution share, I can run:
code:
 
Install IE <- install current version
Install IE -a:5.5 <- install version 5.5
Install IE -t <- install "test" version
Install IE -sp <- install current SP
Install IE -sp:1 <- install SP 1
Install IE -rk <- install the Resource Kit
Install IE -s:sec.bat <- Run sec.bat from Support folder.
Install IE -hf:Sec2 <- install group of hotfixes
defined in Security group 2

So, the idea is - with no args other than the application directory name, we install the current application version. With -a:##, we install from the archive\## folder, and so on.

The #Install batch files follow another guideline.. where possible they invoke an unattended install. This insures that each installation is done in the same manner, and permits unattended installation. We prefer unattended over silent methods - the distinction being that an unattended install still displays a progress bar or message.

Two parameters function differently - the -s:cmd runs the named command from the support folder. This can be any executable. We might use it to apply security lockdowns, registry changes, or other custom configurations. The other is the HotFix (-hf) parameter. This requires the name of an INI file - a "package" - that contains a list of hotfixes and rules for applying them.

Hotfix processing confirms that the hotfix is compatible with the target system (NT4-TS, NT, 2K, etc) and checks for specific arguments to override the defaults. It also allows commands to be executed before and after the application of the hotfix. When all hotfixes are applied, QChange.Exe is run to insure only the latest versions of files are installed.

Finally, some of the tools we use can be deployed against a remote target from an admin workstation. The LogCleanup script I posted earlier is one of them.. I can
Install LogCleanup -r:rmt_server
and install the script, config files, and schedult the tasks on "rmt_server" from my personal workstation. I'll be posting many of the UDFs that make this possible.

One of the benefits of this process is that we now have a consistent installation process.. with 12+ admins, 5 primary sites, and soon - over 550 servers - consistency becomes a "good thing". It also allows new staff to get up to speed quickly, installing components they aren't familiar with (but are smart enough to know when the process works or not).

I hope this plants some seeds in the fertile minds of those that visit this board.. I'll be posting many of the components necessary to implement such tools on your own site. Look for several functions in the UDF section and some tools (including one or two BAT files just to get Lonkero's juices flowing [Wink] ) in the scripts section. BTW, we use BAT files to initiate unattended installs because Kix may not yet be installed.. Kind of a cart/horse issue, ya know?

Glenn
_________________________
Actually I am a Rocket Scientist! \:D

Top
#99960 - 2003-03-27 06:03 PM Re: Installing Software & Automation with Kix
Lonkero Administrator Offline
KiX Master Guru
*****

Registered: 2001-06-05
Posts: 22346
Loc: OK
kix does not need to be installed to be used.

I always use it from central location... normally netlogon drive.

I see that you have rather complex way of putting those things (as example IE) which is good if you have a huge variety of systems to support.

with IE and office I've realized that the best way is to keep just a one central admin package which can be used to keep all systems up2date.
thus structure for example IE is just:
\\server\install\IE

and that's it.

btw, glenn...
if I would find you on MSNM I could yell directly at you, hint hint... [Wink]
_________________________
!

download KiXnet

Top
Page 1 of 1 1


Moderator:  Arend_, Allen, Jochen, Radimus, Glenn Barnas, ShaneEP, Ruud van Velsen, Mart 
Hop to:
Shout Box

Who's Online
1 registered (Allen) and 1047 anonymous users online.
Newest Members
Viginette, ManuvdWielNL, Sir_Barrington, batdk82, StuTheCoder
17888 Registered Users

Generated in 0.063 seconds in which 0.033 seconds were spent on a total of 12 queries. Zlib compression enabled.

Search the board with:
superb Board Search
or try with google:
Google
Web kixtart.org