0.4.2 - 20 Oct 2003 - dominique.chabord@bluedjinn.com ******************************************************************************* History and modifications of WDX directory 12-07-03 first release by Dominique 14-07-03 corrections to man pages by Dominique new demo scripts 11-08-03 by Dominique Shaman-X becomes shaman-x out_of_band becomes shortcut, did I do well ?, "Out_of_band lock" message becomes "Mandatory lock" New verbose templates for configuration files according to user's guide 17-08-03 by Dominique wdx_ui.c including David's workaround for resource commands set 22-08-03 by Dominique documentation added in makefile and script templates 30-08-03 by Dominique Include David modification: separate mission directories Finalize V0.4 stable version 22-09-03 by Dominique OpenBSD and Mac0SX support kit names now conforms to usual Linux naming rules (wdx-0.4.1.src.tar) Update of Linux version from 0.4 to 0.4.1 is not useful 20-10-03 by Dominique OpenBSD and MacOS X have been reworked out by David A problem with fifo compatibility has been fixed on OpenBSD and MacOS X A checksum problem for heterogeneous systems (PPC and Intel) is fixed but not tested yet (planned for end of October) This new version is not tested on MacOS X yet. FreeBSD and NetBSD are not tested either. ******************************************************************************* Get started with WDX You can get support from WDX users' community mailing list (check www.shaman-x.org) Configuration and installation on every computer: ******************************************************************************* 0 - Known bugs -------------- mission.sup functions: only threshold function has been tested, please don't validate others (mission.sup is an optionnal file) MacOS X is not tested yet. OpenBSD parameter: We know it seems odd to use OS=OpenBSD in case the OS is *NOT* OpenBSD. The story is that OpenBSD forces an OpenBSD-like compilation for platforms which are not OpenBSD. When the OS is OpenBSD, it is automatically compiled correctly 1 - Download software --------------------- Log as root or get su priviledge mkdir my-preferred-directory cd my-preferred-directory download http://downloads.shaman-x.org/wdx-0.4.2.src.tar to my-preferred-directory tar -xvf wdx-0.4.2.src.tar You can get the last version of this kit from http://downloads.shaman-x.org 2 - Update the following file /etc/services ------------------------------------------- Skip this step if you upgrade from previous version. echo "wdx 3000/udp" >> /etc/services You have to create an new input in this file for each wdx mission. This example is for the default mission implicitly called "wdx" You can replace 3000 with any parameter which fits your configuration, usually 3000 is available. 3 - Install WDX software ------------------------ cd /root/my-preferred-directory/wdx-0.4.2 and choose an option (Linux and OpenBSD): make sure you have gcc compiler installed :-) make readme license and support make wdx compile wdx for Linux make dbg compile wdx for Linux with debug option make install to compile and install wdx (copy wdx binary and man pages) make uninstall remove wdx binary and man pages make clean to delete binary objects in my-preferred-directory Note for FreeBSD, MacOS-X: make wdx OS=OpenBSD compile wdx for these operating systems make dbg OS=OpenBSD compile wdx with debug option make install OS=OpenBSD to compile and install wdx (copy wdx binary and man pages) In usual cases, type make clean make readme make install You get basic information about starting wdx: wdx is installed type "wdx" which should now show its command list but will refuse to start until configured. Check you get on line help for configuring wdx by man wdx man wdx_cfg man wdx_loc 4 - Configure a demo mission ---------------------------- 4-1 Create directory /var/shaman-x/wdx. Copy the *content* of configuration-files to /var/shaman-x/wdx/wdx. 4-2 Edit /var/shaman-x/wdx/wdx/wdx.cfg and replace the names of my computers by yours: My computers are Sinbad-sailor, Bounaberdix and AliBabian, put yours instead; If you have only 2 computers, delete the third declaration. If you have more than 3 computers, add a similar line per computer 4-3 Edit /var/shaman-x/wdx/wdx/wdx.eventscript This script is a very quick and very dirty demo of cluster IP address swapping. You may not like it and delete this poor code. The 192.168.1.2 "follows" the masterholder. I'm not good at all at scripting, so it will work in simple cases Replace the name of the host by yours, replace the IP address as you wish If it is not what you want to see here, just delete that code You're all set ! 5 - Start WDX as root and have a try ------------------------------------ wdx /* shows all commands wdx -daemon hostname /* starts wdx process /* with these options, the mission is the default mission /* called "wdx" and the node name is the hostname which is /* is listed in wdx.cfg then try wdx -join, or wdx -master, or wdx -run, or wdx -start etc.. All commandes can be used now. To follow how your system evolves, use wdx -list Notes: ------ After playing you can use wdx -log and edit /var/shaman-x/wdx/wdx/wdx.log.0 The trace of what you've done is there The scripts you get in configuration-files write a line in the file called /var/shaman-x/wdx/wdx/scriptactivity.txt, so you can check how and when the different scripts are triggered by edititing this file. The exception script reinitializes this file, so by wdx -exception command, you clean the file on all nodes (just by convention for this demo) Then you can develop your own missions and recovery scripts. Update /etc/services with a new udp port for each new mission.If you call your new mission db-server, then echo "db-server 3001/udp" >> /etc/services. Configuration files are now named db-server.cfg, db-server.loc, and all mission files are located in /var/shaman-x/wdx/db-server/ Last, you must now type commands with the mission name: wdx db-server -daemon and so on. If you specialize different missions for different functions, you ma filter eventscript activations in db-server.loc, so not all missions have to care about the same things as status or others. Include wdx initialization commands (wdx [mission] -daemon and wdx [mission] -join)in rc.local or equivalent so wdx restarts automatically at boot time. In production environments, computers *must* be synchronized by ntp. and of course you get more details available in the user's guide that you can download from http://wdx.shaman-x.org Support: ------- If you are in trouble with the product or the above hints (yes we know its our fault, nevertheless we did our best :-), please contact us on shaman-x mailing list by registering at http://mail.nongnu.org/mailman/listinfo/shaman-x-support Enjoy The Shaman-X project team