Notes and observations on software for (mostly) scientific applications.
|
|
| |
|
|
| |
|
|
|
|
|
|
| |
Friday, March 26, 2004
CLEAR!
Yes, it's time again for my bi-yearly attempt at reviving this weblog just
before it flatlines. While the previous post
is but a lagniappe, some real meat (or vegetables, if you prefer), can
be found in the thoroughly updated
Software for Graphics and Data Analysis and
Ocean Circulation Modeling Projects sections.
The former has been updated for the first time in over seven years,
and the latter has been spruced up after about three years.
While the former was compiled by an oceanographer with oceanographic
applications in mind, the vast majority of packages therein can be
applied to just about any scientific - or non-scientific, for that matter -
discipline. The latter, on the other hand...well, how much more discipline-specific
can you get than a list of numerical ocean circulation models?
9:14 AM
Thursday, March 25, 2004
MSYS UTILITIES
The MCS Group at Argonne Labs has come with an interesting suite of Unix administration tools called Msys. They are:
- whatami - We often need to be able to determine what type of "architecture" a given machine is, so that we can put the appropriate directories in a path or execute the correct program. No unix utility quite fulfills our requirements, so we've created the "whatami" program to return a single unique string on each architecture. This string is then used in directory names and in program switches.
- softenv - Softenv is a system used to build the user's environment. Each user has a ".soft" file in which they specify groups of applications that they're interested in. Softenv reads a central database when necessary to update the user's PATH, MANPATH and other variables.
- pkg - "Pkg" is designed to ease the management of a large number of GNU style software packages. In particular Pkg is designed to allow the installation of multiple versions of the same package (such as emacs) without creating conflicts. This is usually necessary in any kind of a complex environment where legacy applications have to be suppored for long periods of time. "Pkg" is a standalone set of scripts that don't depend on anything other then Perl 5. However to be truly useful "Pkg" should be combined with user environment management system such as "softenv"
- chex - Chex is a simple tools used to examine and respond to logfiles. Mostly, Chex is used in conjunction with the conserver packages for serial console log file scrutiny.
- sanity - Sanity is a tools that we use to maintain consistency across a large number of machines. By itself, sanity is a light weight tool that simply runs a series of modules (defined by the sys admin) that check various system settings such as installed software, config files, kernels, zipdrive devices etc. Sanity can be run by hand, by cron, by rc file or any combination thereof.
- gpd - A "General Purpose Daemon" written entirely in Perl. Key features include: services multiple server sockets, non-blocking for all I/O operations, can be renamed and run any number of times on a single machine to provide multiple services, can invoke internal or external (fork-exec) commands using Unix command invocation semantics: "program/subroutine < options/flags> < arguments>", has basic hostname/ip client authentication.
- netflowdb - Netflowdb is a collection of scripts that we have used for proof-of-concept capture of Cisco NetFlow records and storing them in SQL databases. These tools are referenced in the LISA 2000 paper Combining Cisco NetFlow Exports with Relational Database Technology for Usage Statistics, Intrusion Detection, and Network Forensics.
- amihappy - Amihappy is a monitoring package which can be run on one or many machines. The client script gathers information on a machine by running customizable modules based on its configuration file. It then sends this information through the use of XML-RPC to server scripts which parse the data and update the main database. The state of machines can then be viewed through a web browswer, either by failures or by each machine name.
10:50 AM
|
|
| |
|
|
|