Installing VCL 2.4.2

VCL 2.4.2 is the first release to include an installation script. All you need
to install VCL is the script. It will download and validate the VCL software and
then install it. The script can be used to install all three parts of VCL
(database, web portal, and management node) or to install each part
individually.

Running the installation script with no arguments will step you through
installing all three parts of VCL.


./vcl-install.sh


Alternatively, any combination of the three parts of VCL can be installed by
passing arguments to the script. If installing the management node part of VCL,
it will also prompt you to agree to the installation of various system level
requirements needed for the code to run. The following are the arguments
available:

   vcl-install.sh [-h|--help] [-d|--database] [-w|--web] [-m|--managementnode]
           [--dbhost <hostname> --dbpass <password>] 
           [--mnhost <hostname>] [--webhost <hostname>]

   -d|--database - install database server components
           --dbpass, --mnhost, --mnip, --webhost, and --adminpass must also be
           specified

   -w|--web - install web server components
           --dbhost and --dbpass must also be specified

   -m|--managementnode - install management node (vcld) components
           --dbhost, --dbpass, and --adminpass must also be specified

   --dbhost <hostname> - hostname of database server (default=localhost)

   --dbpass <password> - password VCL will use for accessing
           database (default=random)

   --mnhost <hostname> - hostname of management node (default=localhost)

   --webhost <hostname> - hostname of web server (default=localhost)

   --adminpass <password> - password for VCL admin user





Manual installation instructions are available on our web site if those are
needed.
