                                 
                              IPAcco
              IP Accounting Collector and Visualizer
                         for Cisco Routers
                          Version 0.2.0.1
                                 
                           Release Notes

 0. Important note:
 
If  you  are upgrading from the previous version of IPAcco, please
read  this  document before you start. There are some  changes  in
this version that may make you IPAcco installation non-functioning
if you ignore them!

 1. What's New in This Release (since 0.2)
 
   Now  IPAcco is compatible (or at least tries to be) with  PHP
    5.x.
   Some letter-case issues (Windows-Unix compatibility) solved.

 2. What's New in The Release 0.2
 
   Many error fixes.

   Change in the way the data collector can be run. Now it
    doesn't require an external scheduler (although it can work with
    the one). The data collector in this version can run continuously
    in the background and perform work cycles periodically.

   Some improvements in the Web graphics.

   An installer script for Unix/Linux systems.

   Some technical changes that are not interesting for you if you
    did not use a previous version of IPAcco. But if you are upgrading
    from the previous version you must keep these changes in mind or
    else you may break you installation. These include:

   The collector script was renamed from IpAccoDataPump.tcl to
    ipacco-datapump.tcl.

   The configuration settings for the collector script moved from
    its body to the separate file.

   The configuration settings for the PHP scripts also moved to
    the separate file SiteDefs.php.

 3. Upgrading from the Previous Version
 
If  you  are  upgrading  from the version  0.2,  just  unpack  the
distribution archive, compare the old and  new directory  contents
and replace the files that were changed with the new versions.
If you are upgrading from the version 0.1.x then read on.
Upgrading procedure is basically similar to the procedure of clean
installation.
 
 3.1.     Starting Upgrade
Unpack the distribution archive to the temporary directory of your
choice.  Later you will move the files to the locations  they  are
intended  to  be (see below) but now let them be where  they  are.
Review the README file included with the distribution.
If  you  are installing IPAcco on the Unix-like system  with  bash
(Bourne  Again SHell, which presents in most modern  Unix's),  you
may  choose to use the supplied bash script install.bash  to  ease
the   installation  process. This script copies  IPAcco  files  to
their  destination directories and performs some additional tasks.
Alternatively you may do all these things manually.  Anyway,  some
installation  steps  cannot be automated and should  be  performed
manually. Currently there is no installation script for Windows.
All  installation  steps that can be performed automatically  with
the installation script are noted below.
 

 3.2.     Configuring the Router

Skip this step since your router is already prepared for work with
IPAcco.
 

 3.3.     Creating the database

This  step  should  also  be skipped since  the  database  already
exists.
 

 3.4.     Running the Installation Script

Now it's the time to run the installation script if you decided to
use  it.  If you decided not to use it, skip to the next  chapter.
Run  install.bash  and  answer the questions  it  will  ask.  Most
questions  concern the destination directories for various  IPAcco
files.

Install.bash  does not actually recognize the directory  structure
style used in your system. It simply supposes that all executables
should  be  installed to /usr/bin and /usr/sbin, all configuration
files  to the subdirectory of /etc, all php- and html-pages   to
the subdirectory of /var/www/html and so on, as it used in Red Hat
Linux,  the  system  on  which IPAcco was  tested.  The  installer
proposes   these directories by default. Of course, if you  prefer
to  install  IPAcco to the subdirectories of the single  directory
you can enter the directory paths you prefer.
The installation script doesn't override the old version files. It
turns  them to backup copies instead. Therefore you should cleanup
these  backup files manually after you make sure the  new  version
works well.
 

 3.5.     Setting Up the Data Collector Script

The  data  collector  script is named ipacco-datapump.tcl  in  the
current version (the name changed since the previous version)  and
is  located  initially  in  the datapump  subdirectory  of  IPAcco
distribution.  To  make this script work you  should  perform  the
following two steps.

1)   Copy or move the script to the directory you want it to  live
 assign  the  appropriate access attributes to it. The destination
 directory   could  be  /usr/sbin  or  /usr/local/ipacco/bin   for
 Unix/Linux or C:\Program Files\IPAcco for Windows. You  may  also
 create a symbolic link to this script so that the script could be
 invoked with just a file name without .tcl extension (i.e.  ln  -
 s ipacco-datapump.tcl ipacco-datapump).
 If you use the installation script it will do this for you.

2)   Copy  or move the datapump configuration file (called ipacco-
 datapump.cfg)  to  the  appropriate  directory  and  assign   the
 appropriate  access  attributes to it. The destination  directory
 could  be /etc/ipacco or /usr/local/ipacco/bin for Unix/Linux  or
 C:\Program   Files\IPAcco  for  Windows.   By   default   ipacco-
 datapump.tcl  searches for its configuration file in  /etc/ipacco
 when  running  under  Unix/Linux and in its  own  directory  when
 running under Windows.

 If you use the installation script it will do this for you.
 If  you've  placed  the configuration file  to  the  non-default
 directory  you  will  have to run the datapump  script  with  -c
 option:

  ipacco-datapump -c <actual-location>/ipacco-datapump.cfg

 Now  copy  your actual configuration settings from the start  of
 your   old   collector   script  (IpAccoDataPump.tcl)   to   the
 configuration  file.  Don't  forget  to  change  the  format  as
 appropriate.
 
 Now  you  should be able to run the script and see how it  works.
 Enter  tclsh  ipacco-datapump.tcl command at the command  prompt.
 In  Linux/Unix systems you may enter just ipacco-datapump.tcl. In
 Windows  this  brief  form  should  also  work  provided  Tcl  is
 properly  installed, but I do not recommend to use it because  in
 this  case the interpreter would run in the separate window  that
 will  close  immediately  after the script  termination,  so  you
 probably  won't  have  time to read any  diagnostic  messages  if
 something goes wrong.

 You  should  see  the  usual output of show ip  accounting  IOS
 command as you use to see in the previous version.

  Except  -c  option mentioned above, ipacco-datapump accepts  two
  more  options.  Both make them to run continuously,  instead  of
  performing one pass and terminating. The first option,  -r  does
  exactly  this. Ipacco-datapump runs until being interrupted  and
  periodically  performs  data collecting cycles.  The  period  of
  these cycles is taken from the database (see below).
  The  second option, -d (d stands for daemonize) additionally
  suppresses all console output. It does not really daemonize  the
  script,  i.e.  does not send it to the background since  current
  Tcl implementations seem to lack the mechanism to do this. So if
  you  want  to run the script in the background, you should  also
  (besides specifying -d) terminate the command line with &  (in
  Unix shell) or use start command (in Windows).

3)   Then  you  need  to schedule this script to  run  at  regular
 intervals. You can either schedule the script with some  external
 scheduler or let it schedule itself, i.e. run it in the background
 mode.  In the last case the script will choose the right  working
 cycle  period value automatically. I personally prefer the second
 way.

 If  you  prefer  the  first  way you should  edit  the  scheduler
 settings for the collector script to reflect it new name.

 If  you  system uses /etc/cron.d directory for cron scripts  you
 may   just  copy  the  provided  cron  file  from  the   /cron.d
 subdirectory of the distribution directory.

 If you use the installation script it will do this for you.

 And don't forget to remove the schedule for the old script!
 If  you  prefer  the  second  way you  should  somehow  make  the
 collector  script to run automatically at the system startup.  As
 the  system  startup  procedures vary  greatly  from  one  OS  to
 another  I  cannot  provide  a startup  script  for  IPAcco  data
 collector  suitable  for  any system. But  if  your  system  uses
 SystemV-style  initscripts the startup  script  provided  in  the
 /sysvinit  subdirectory of the distribution directory may  appear
 useful  for you. Copy it into /etc/rc.d/init.d directory and,  if
 your  system  supports  chkconfig  utility  issue  the  following
 command:

 chkconfig add ipacco
 
 If you use the installation script it will do this for you.
 

 3.6.     Deploying PHP Scripts

At  last, you should setup the set of server-side PHP scripts that
implement the Web-based user interface for IPAcco. If you  do  not
use  the installation scripts, backup file Globals.php manually,
since  you  will need the settings it contains later. Replace  the
old PHP files with the new ones.

If you use the installation script it will do this for you.
Next,  move  you site-specific settings from the old Globals.php
to  the new SiteDefs.php file. Specifically you should copy  the
lines that look like the following:

define("DBSERVER", "ipacco");
define("DBNAME", "ipacco");
define("DBLOGIN", "ipacco-web");
define("DBPASSWORD", "ipacco=web");

Don't  forget to cleanup the backup files manually after you  make
sure the new version works well.
