Step-by-step Installation Directions for Big Sister 0.97 under Windows 2000 with !ActiveState? perl and Apache

Rationale for using this setup

I'm biased. I come from a strong Solaris and Linux background. I have limited experience with using Windows systems as servers, partly because my last employer was a Solaris shop, and partly because I avoid pirating software and all my home services run Linux because I can't afford as many Windows licenses as I'd need to stay legal. Also, my experience with Windows in a high-load server environment was not good; NT showed extremely poor reliability, stability, and maintainability and while admittedly this is because the application developers were of questionable ilk, we did not see the same degree of OS-related performance problems once the application was migrated to Solaris (i.e. the application didn't crash Solaris near as often as it took down NT, necessitating a physical power-cycling of the box. Conversely, we had production Solaris servers that operated for two years straight without a reboot.)

So, before this turns into too much Microsoft-bashing, my intent in choosing this setup is to use mostly stock Windows tools where possible, rather than trying to make Windows look like Unix. This is why I chose !ActiveState? perl over the Cygwin environtment (see http://www.cygwin.org/) However, I chose Apache over IIS for two reasons:

Apache has no indexing service, no hidden, helpful Microsoft extensions, no strange and insecure dependencies, no byzantine access controls, just a somewhat confusing array of module activation, aliasing, rewriting, and other fiddly directives. Apache's configuration can be complex but it's simple enough to allow it to just serve web pages and CGI scripts. This may be my lack of IIS admin experience, but the anecdotal evidence from the spread of !CodeRed? shows that the default installation of IIS activates a number of non-intuitive, insecure, and unnecessary "features" which I consider to be an unacceptably grave security exposure. In short, the only software I trust less than IIS is Outlook, though en masse Sun's various RPC servers (ttdbserver, rpc.csmd, snmpXdmid, rwalld) take a close second. Ah, for the simple days of yore when our only worries were fingerd and sendmail... Regardless, one can probably run Big Sister under IIS but I'll assert that it's not trivial to do so reliably or securely.

Finally, since I'm installing Big Sister clients on production servers, I want to add as little additional software as possible and the software I do add should consume as little resources as possible. I don't need the huge expanse of the Cygwin environment and there's a security risk of leaving all those nice unix tools on a production IIS box. Now ideally the bsdisplay host will eventually migrate from Win2K to some flavor of Linux (or maybe Darwin/OS-X) for security, performance, reliability and TCO/licensing reasons, necessitating a change of configuration. But for the time being, the assumed platform is Win2K for the purpose of documenting the installation process for client installations.

Before you start

Installation Process

  1. RAA %skin static_lamps structured_bg frames

%skin bigbro13 frames

1? uxmon-net modification

--- start (comments stripped) --- DEFAULT community=public frequency=5 ALL DEFAULT version=1 proto=udp rpc

localhost load \

memory \ fs=all(6%-10%) \ diskfree \ dumpdates \ eventlog \ cpuload \ network

198.214.144.69 bsdisplay

localhost frequency=10 perfdata=etc/perf options=perf bsdisplay --- end ---

2? httpd.conf directives

--- start --- TBD --- end ---

Verification

Original RFC

Hi,

I've recently taken a job administering a handful of Win32 and OS-X servers after five years of maintaining racks of Solaris and Linux servers so I'm in the strange situation of knowing more about Big Sister than the OS's I'm installing it on. I'm currently running Big Sister on my home network which is composed of a bunch of Linux boxes (SuSE 7.2, SuSE 8.0, RH7.1) so I'm already familiar with basic operation and configuration. I'm mired in the annoyances of the Win32 environment and just trying to get Big Sister running.

Specifically, I'm trying to run big-sister-0.97-NTpre under Win2K. I'm also familiar with the state of the documentation (I'm not complaining; I'll document whatever I learn if I can get my current installation woes resolved) I've read through the mailing list archive and didn't find what I was looking for so I figured I'd ask publically - hopefully I can find someone who's successfully set up BS under Win32 (2K, NT, whatever) and can remember how they made Windows cooperate.

Here's what I've done so far:

'path %PATH%;C:\bin\perl\bin' (I don't think this is set globally for all invocations of CMD)

'ppm install rrds.ppm' per the RRDtool installation docs

  1. RAA %skin static_lamps structured_bg frames

%skin bigbro13 frames

--- start (comments stripped) --- DEFAULT community=public frequency=5 ALL DEFAULT version=1 proto=udp rpc

localhost load \

memory \ fs=all(6%-10%) \ diskfree \ dumpdates \ eventlog \ cpuload \ network

198.214.144.69 bsdisplay

localhost frequency=10 perfdata=etc/perf options=perf bsdisplay --- end ---

and finally started up BS with 'perl .\bin\bs_start32 start'.

I see two perl processes in the Task Manager matching .\adm\bbd.pid and .\adm\uxmon. Event Viewer shows startup messages and it looks like the code is at least running uneventfully.

I get interesting output in \bigsis\var\status.log and \bigsis\var\agent.log (below). Also I see services listed for !BigSuxmon?, !BigSmon?, !BigSbbd?, though trying to activate them from the Services panel doesn't work (I'm not sure if this is expected behavior.)

At this point I have one major problem. It appears that status pages are not being generated, at least not under .\www\html. I've searched the disk for new html files but it doesn't appear that any status pages have been generated. I changed the skin back to the default but that didn't seem to do anything.

Ideally, I'd like to draft a step-by-step process for installing and configuring Big Sister under Win32 and I'd like some input from people who have more experience running the code under on NT and 2K systems.

Bob


Fragment from \bigsis\var\status.log

1030049074 198.214.144.69: status+11 xylopodang.msgs green (1030049074) Thu Aug 22 15:44:34 2002 System looks fine|>Security looks fine 1030049074 198.214.144.69: status+11 xylopodang.cpu green (1030049074) Thu Aug 22 15:44:34 2002 CPU load = 0|>cpu OK: %idle (1 CPUs) = 97.3763621123219, mem OK: %free committed = 60|>mem OK: avail mem MB = 35 1030049074 198.214.144.69: status+11 xylopodang.net green (1030049074) Thu Aug 22 15:44:34 2002 |>net OK: %interface IntelR? PRO Adapter receive usage = 0|>net OK: %interface IntelR? PRO Adapter transmit usage = 0|>net OK: %interface MS TCP Loopback interface receive usage = 0|>net OK: %interface MS TCP Loopback interface transmit usage = 0 1030049074 198.214.144.69: status+11 xylopodang.disk green (1030049074) Thu Aug 22 15:44:34 2002 |>disk OK: 1304MB (2038%) of 64MB free|>

\bigsis\var\agent.log

xylopodang.msgs 198.214.144.69 (1030048773 Thu Aug 22 15:39:33 2002) xylopodang.cpu 198.214.144.69 (1030048773 Thu Aug 22 15:39:33 2002) xylopodang.net 198.214.144.69 (1030048773 Thu Aug 22 15:39:33 2002) xylopodang.disk 198.214.144.69 (1030048773 Thu Aug 22 15:39:33 2002)

Fragment from \bigsis\var\uxmon_variables

xylopodang:perflib.Memory.Instances = ARRAY(0x38cf328) xylopodang:perflib.!LogicalDisk?.0.%_Free_Space.fraction = 1304 xylopodang:perflib.Memory.0.Pool_Paged_Bytes = 23855104 ... xylopodang:perflib.Processor.2.Interrupts/sec = 175.293328628555 xylopodang:perflib.Network_Interface.1.Packets_Received_Errors = 0 xylopodang:perflib.Network_Interface.2.Packets_Received_Unknown = 0 xylopodang:perflib.Memory.0.Commit_Limit = 646815744