PerfSONAR v2.0
From GEANT2-JRA1 Wiki
Contents |
Introduction
- What's new in 2.0?
- 2.0 brings out major changes to installation process along with 4 new services as well as improvements to 2 services previously released in 1.0.
- PerfSONAR 2.0 uses a new technique for installation of perfSONAR services. You can now install multiple services on the same tomcat!
- For more information, check the perfSONAR bundle release notes
Download
- Download it here
New Installation Manual
Requirements
The perfSONAR bundle contains six services (Web Services Applications). The requirements for installing each of these services are different. Some of these requirements have to be manually installed while some others can by automatically installed during the perfSONAR installation process. However, if you wish to manually install all the requirements (including the automatic ones), it is possible to do so.
Manual Installation of pre-requisites
Depending on the application/service you wish to deploy, you will be required to manually install some required software. Please take a look at the list below.
- General Requirements - required for all services
- Operating System
- Redhat Linux/Fedora
- Other flavours of unix are supported for most services 'but not all. See requirements for the service that you want to install
- Installations on Windows not supported (some services - RRD MA for example will not work)
- 'wget' command should be available on the OS. This is required by the installer to download dependency software.
- Perl - version 5.6.1 or higher
- The following Perl Modules are required
- LWP
- The following Perl Modules are required
- RRD Measurement Archive (Java) - (Effort: ~1.5 hr)
- JAVA (JDK 5 - version 1.5 or later - available here)
- Apache Ant (Version 1.6.x - available here)
- RRDTool to read your RRD files - version 1.2.x - available here
- Make sure you have the following files related to RRDTool on your workstation.
- rrd.h - Usually found in $RRDTOOL_HOME/include directory. See FAQ for more details
- Approximately 10 files starting with the name librrd. They are usually found in $RRDTOOL_HOME/lib directory. See FAQ for more details.
- IMPORTANT: During the installation and deployment process you will be required to setup LD_LIBRARY_PATH environment variable.
- It is extremely important that everytime Tomcat is restarted, this environment variable be set before its started
- We suggest that the LD_LIBRARY_PATH environment variable declaration be added to the profile information of the account where this service is installed. The installation process will suggest the value to be used for this variable.
- Make sure you have the following files related to RRDTool on your workstation.
- SQL Measurement Archive - (Effort: ~2 hr)
- JAVA (JDK 5 - version 1.5 or later - available here)
- Apache Ant - version 1.6.x - available here
- MySQL or PostgreSQL Relational Database
- Lookup Service - (Effort: ~1.5 hr)
- JAVA (JDK 5 - version 1.5 or later - available here)
- Apache Ant 1.6.x - available here
- eXist XML Database - version 1.0.1 or 1.1.1
- You can re-use an already installed eXist XML database.
- If you are installing a new one, we suggest installing it in tomcat as a webapp (download war file) - available here.
- After installing, some configuration will be required. This quick tutorial might be sufficient.
- SSH/Telnet Measurement Point - (Effort: ~2.0 hr*)
- JAVA (JDK 5 - version 1.5 or later - available here)
- Apache Ant - version 1.6.x - available here
- Apart from these, you will also need to know the list of routers/devices and the commands on these routers that you wish to make available via this tool. The configuration step in the installation process will ask you to provide this information.
- We suggest that you be prepared in advance with information for such configuration. You can find a tutorial here.
- Command Line Measurement Point - (Effort: ~2.0 hr*)
- JAVA (JDK 5 - version 1.5 or later - available here)
- Apache Ant - version 1.6.x - available here
- OWAMP tool - version xx
- BWCTL tool - version xx
- Ping tool
- Traceroute tool
- BWCTL Measurement Point (Perl)
- Operating System - Redhat Linux/Fedora
- Installation not tested on other flavors of unix OS but BWCTL MP can be run manually
- Perl - version 5.6.1 or higher
- BWCTL tool - version 1.1b or later - available here
- Iperf tool - version 2.0.2 or later - available here
- Perl Modules that are required to be installed manually
- None (unless automatic installations of the required modules fail)
Note: * - Estimates do not include time required to configure your installed service (i.e. stitching). Estimates do not include time required for installation of OS either.
Automatic Installation of pre-requisites
The following requirements can be installed automatically. Please note: Even if two services have common requirements, it is NOT required to install the same software twice on the same workstation. However, you may want to note down the directory name where the software has been automatically installed into.
- RRD Measurement Archive (Java)
- Tomcat Application Server - Jakarta Tomcat
- eXist XML Database (Version 1.0 or later - available here)
- RRDJtool (as JNI)
- SQL Measurement Archive
- Tomcat Application Server - Jakarta Tomcat
- eXist XML Database (Version 1.0 or later - available here)
- Lookup Service
- Tomcat Application Server - Jakarta Tomcat
- eXist XML Database (Version 1.0 or later - available here)
- SSH/Telnet Measurement Point
- Tomcat Application Server - Jakarta Tomcat
- Command Line Measurement Point
- Tomcat Application Server - Jakarta Tomcat
- BWCTL Measurement Point
- Perl Modules that will be installed automatically
- Bit-Vector
- Carp-Clan
- Compress-Zlib
- Date-Calc
- Date-Manip
- HTML-Parser
- HTML-Tagset
- IO-Tty
- IPC-Run
- libwww-perl
- Log-Dispatch
- Module-Build
- Params-Validate
- SOAP-Lite (version 0.66)
- URI
- XML-LibXML
- XML-LibXML-Common
- XML-NamespaceSupport
- XML-SAX
- XML-Writer
- XML-Writer-String
Quick Guide
- Check the requirements section for the service that you wish to install
- At least check the manual installation requirements section and install any necessary pre-requisities.
- Unzip and untar the bundle installer i.e., perfsonar-2.0.tar.gz
- Unset/remove your existing CLASSPATH variable before starting.
- Make sure that the varible $CLASSPATH is empty. You can do this by either removing from your .bash_profile file or executing export CLASSPATH= in the command prompt before continuing with the next step
- Execute the bundle installer with the help of the command perl install.pl
- Make sure you are in the perfsonar-bundle directory (for example /home/perfsonar/perfsonar-2.0-bundle)
- If perl is not on your PATH, you will have to give the complete path to the perl binary - PERL_PATH/perl install.pl
- Follow the on-screen dialogue. Before you start installing a service, be prepared for the questions that you will be asked.
- The on-screen dialogue will help you in the installation. You will be asked a few questions in order to install any service. We suggest that you get familiar with the questions that the installer will ask you when you try to install any service. The list of questions/information asked is available in the Interactive Questions Section.
- At the end of the installation, the installer will run some tests but you will be required to verify the results of the test to see if any problems were reported.
- The Measurement Archives (RRD and SQL) require some 'stitching' to be done after installation. See section on stitching for more information.
Note: For RRD MA, it is important that you set the LD_LIBRARY_PATH variable ideally in the profile where the service is installed. This will make sure that whenever you restart tomcat or reboot the machine, the variable is applied BEFORE tomcat is restarted. If this is not done, the service will not be able to read the configured RRD Files
Multiple Services on same tomcat and same eXist XML database
- From 2.0 onwards, it is possible to install any number of services on the same tomcat instance. Apart from installations of different service types, these installations could also include new instances of the same service type (i.e. you can install two SQL MA services on the same tomcat along with any other service type)
- Please note that only Java services can be installed in tomcat
- Please note: To make use of this feature, take care of the following:
- If the service requries XML database (RRD MA, SQL MA and LS), please make sure that you configure each service to use a different username and password. DO NOT eXist XML Database USERNAMES AND COLLECTIONS across two installations.
- You have a different document base for each service. To do this, choose a different service name than the one already in use. (ex: XML-LS-1.1 and XML-LS2-1.1 if they are on the same tomcat)
More information about the Bundle Installer
- The on-screen dialogue gives you 3 options. Choose the one right for you. At any point in time, you will have the option to quit either via menus or via 'Ctrl-C'. You can return to the installation later on.
- Option 1: Install a new service - Choose this option if you want to install a new service. You can also use this option if you have already installed an instance of the same service (for example RRD MA) but would like to install another instance on the same machine.
- Option 2: Modify or test an existing installation - Choose this option to modify some configuration aspects or test existing perfSONAR bundle 2.0 related installations of perfSONAR services. This option will not work if you have not already installed any of the services using the 2.0 bundle.
- Option 3: Give feedback to the perfSONAR team - Most important for us! Your feedback will be automatically sent to us by this installer.
- Installing a new service
- If you chose the first option, the bundle installer provides a list of 6 services that can be installed. Simply choose the service that you would like to install from this list.
- The bundle installer automatically downloads installation files for each service and executes the installation steps in sequence for the chosen service.
- Before downloading the installer files for a service, the bundle installer will search to see if it can find existing downloads of installation files. If you want to install two instances of the same service on the same workstation, you can re-use the already downloaded installation files. This will not affect the first instance.
- If the bundle installer cannot find installation files, it will give you the option to either ask it to download the files and install or you can specify an alternate path where you think the files have been downloaded previously so that it can re-use.
- If files have to be downloaded, the installer will automatically download and extract the required files. It will ask you if you want it to extract to location different from the default one. We suggest that you choose the default location.
- After downloading the required files (or accepting an existing installation files directory), the bundle installer will ask you if you want to do a basic installation or an advanced one. Choose the basic installation unless you are feeling adventurous. The guide for Advanced installation steps is this guide + the Advanced installation section later on in the manual. The steps below are for basic installation
- Depending on the service chosen, you will be asked a few questions. The section on 'Interactive Questions' should help you in answering them. If you make a mistake, quit (ctrl-c) and you can start again (bundle installer will ask you). If you experience some problems or have some questions, try out the support pages (FAQs) or contact the mailing list
Interactive Questions
The perfSONAR installer will ask you some questions while installing the bundled software. Here are a list of questions that you should be prepared to answer. (We have tried to suggest appropriate defaults wherever possible).
RRD Measurement Archive (Java)
- Pre-install step:
Enter the name of the service [perfSONAR-RRD-MA-2.0]:
- Explanation - The script asks for symbolic name. This name will be present in the address URL of the service.
- Default: perfSONAR-RRD-MA-2.0
Enter the path where you want to install the service [/root/webapps]
- Explanation: location of the service files to be stored.
- Default: <current_directory>/webapps
Do you want me to download and install the application server Tomcat (apache-tomcat-6.0.7) for you? (y,n)
- Explanation: Application server Tomcat is a container for the service. It contains the implementation of HTTP protocol which is used by the service to send and receive messages (NMWG). If you already have it in your system you can answer 'n'.
- Default: none
- Recommendation: Tomcat version 6.0.7 is suggested.
IF answer is 'y': Enter the path for the Tomcat installation: [/root/apache-tomcat-6.0.7]:
- Explanation: If you wanted to download Tomcat, then the script asks you where to put it.
- Default: <current_directory>/apache-tomcat-6.0.7
IF answer is 'y' : Enter a URL of the Tomcat download (mirrors can be found on http://tomcat.apache.org/) [1]
- Explanation: If you wanted to download Tomcat, then the script suggests mirror server to be used for downloading.
- Default: http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.7/bin/apache-tomcat-6.0.7.tar.gz
IF answer is 'n' : Enter the path for the Tomcat installation: [/usr/local/tomcat]:
- Explanation: If you already have Tomcat in your system, the script asks you where it is located.
- Default: /usr/local/tomcat
Enter the port which will be used by your application server Tomcat [8080]
- Explanation: The script asks for port number which will be used by Tomcat and the service to send and receive messages (HTTP).
- Default: 8080
- Recommendation: If you want to have other port number then you have to setup Tomcat to use this new one as well. To do it open Tomcat's configuration file conf/server.xml and alter the port number in the Connector element :<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"redirectPort="8443" />
Do you want me to compile rrdjtool library for you (if not you will have to do it manually in /root/perfSONAR-RRD-MA-2.0/perfsonar/contrib/rrdjtool after pre-install step)? (y,n)
- Explanation: The service needs the library of rrdjtool, which is an interface to RRD files. The script can build the library for you, if the answer is 'y'.
- Default: none.
IF answer is 'y': Enter operating system type: (linux,linux-64bit,freebsd,solaris,other)
- Explanation: If you wanted the script to build the library of rrdjtool, then you must provide the information what OS do you have on your machine. You can find a list of accepted operating systems in round brackets.
- Default: none.
IF answer is 'y': Enter the directory path where header file of the rrdtool (rrd.h) can be found [/usr/local/rrdtool/include]:
- Explanation: If you wanted the script to build the library of rrdjtool then you must provide the information where the header file of rrdtool is located.
- Default: /usr/local/rrdtool/include
- Recommendation: The path in square brackets in only an example.
IF answer is 'y': Enter the directory path where library files of the rrdtool (librrd*) can be found [/usr/local/rrdtool/lib]:
- Explanation: If you wanted the script to build the library of rrdjtool then you must provide the information where library files of rrdtool are located.
- Default: /usr/local/rrdtool/lib
- Recommendation: The path in square brackets in only an example.
IF answer is 'y': Enter the home directory where the Java is installed (I need the home directory and not the directory where the executable binary is present) [/usr/local/jdk1.5.0]:
- Explanation: If you wanted the script to build the library of rrdjtool then you must provide the information where Java installation is located (rrdjtool is a java library so Java is required for building).
- Default: /usr/local/jdk1.5.0
- Recommendation: The path in square brackets in only an example.
Usage of eXist xml database is recommended for the service. Installing/configuring this database as a web application in your Tomcat is also suggested. Do you want me to do this for you? (y,n)
- Explanation: The service contains the metadata configuration which is suggested to be stored in the xml database eXist. If you want to have the metadata configuration as a plain text file you may expect that the service will be slower in generating responses. Using eXist as a web application you can use your Tomcat to install the xml database.
- Default: none
IF answer is 'y': Do you want me to download eXist web application package (if not you have to do it manually)? (y,n)
- Explanation: The script can download xml database eXist as a web application package automatically. It is possible that the time of downloading might be long. In such case download eXist manually.
- Default: none
IF answer is 'y': Enter a URL of eXist web application package (exist-1.0.1.war) [2]:
- Explanation: If you wanted the script to download eXist, then you can see a suggested server to be used for downloading.
- Default: http://prdownloads.sourceforge.net/exist/exist-1.0.1.war
IF answer is 'y': Enter the path of directory where eXist war file will be located [/root]:
- Explanation: If you wanted the script to download eXist then you can see the suggested location where eXist will be stored.
- Default: <current_directory>
[echo] Please, insert now the following xml tag 'Context'
[echo] into Tomcat configuration file server.xml
[echo] (/root/apache-tomcat-6.0.7/conf/server.xml)
[echo] inside existing xml tag 'Host':
[echo] <Context path='/exist'
[echo] docBase='/root/exist-1.0.1.war'>
[echo] </Context>
Please do it now and press Enter when finished
- Explanation: The Context element represents a web application, which is run within a particular virtual host. Each web application is based on a Web Application Archive (WAR) file. Here, we nest a Context element within a HOST element in <TOMCAT>/conf/server.xml. Do the change on the file as described, on another window, then press Enter so that the script can continue the installation.
- Default: none
Enter the eXist user name:
- Explanation: The script asks for xml database user name (it could be for example rrdmaservice).
- Default: none
Enter the password for eXist user name :
- Explanation: The script asks for the password for xml database user.
- Default: none
Enter the password for admin eXist user []:
- Explanation: The script asks for the password for xml database admin user.
- Default: If this is the first installation of eXist then the password is empty.
- Recommendation: We suggest to change/set up the password for admin user of eXist database after the service installation procedure. When the eXist database password is not set (blank), everyone can alter the content of the database using eXist client application (of course if a firewall does not block the access).
- Configure step:
Enter the path of rrd metadata configuration file [/root/perfSONAR-RRD-MA-2.0/perfsonar/conf/rrd-database_TEST.xml]:
- Explanation: The script asks for the metadata configuration file. This file contains the description of measurement data in RRD files. If you wanted to use the xml database in the pre-install step then the metadata configuration file will be stored there later on during the deploy step.
- Default: The test file in square brackets is suggested only for test purposes (you can use it for the first test service installation).
Do you want the service to accept messages with measurement data and store them? (y,n)
- Explanation: The service can receive messages with measurement data and store them in RRD files.
- Default: none
Enter location of new RRD files created when measurement data is sent to the service [/root/webapps]?
- Explanation: The service can receive messages with measurement data and store them in RRD files. Here the script asks for the location where the service will create new RRD files.
- Default: <current_directory>/webapps
Turn on service registration to Lookup Service? (y,n)
- Explanation: The service can register itself to the Lookup Service. The Lookup Service stores the information about running perfSONAR services in the network.
- Default: none
IF answer is 'y': Enter the URL of LS []:
- Explanation: The service can register itself to a Lookup Service. The script asks for the url of the Lookup Service on which the service will register itself.
- Default: no url.
- Deploy step:
Do you want me to start the application server Tomcat for you? (y,n)
- Explanation: The script can start Tomcat with the service inside, but there is also a possibility to do it manually.
- Default: none
- Recommendation: If your Tomcat is already running before Deploy step, you should answer 'n'.
[echo] Please, insert now the following xml tag 'Context'
[echo] into Tomcat configuration file server.xml
[echo] (/root/apache-tomcat-6.0.7/conf/server.xml)
[echo] inside existing xml tag 'Host':
[echo] <Context path='/perfSONAR-RRD-MA-2.0'
[echo] docBase='/root/webapps/perfSONAR-RRD-MA-2.0'>
[echo] </Context>
Please do it now and press Enter when finished
- Explanation: The Context element represents a web application, which is run within a particular virtual host. Each web application is based on a Web Application Archive (WAR) file. Here, we nest a Context element within a HOST element in <TOMCAT>/conf/server.xml. Do the change on the file as described, on another window, then press Enter so that the script can continue the installation.
- Default: none
[echo] Please, make sure that Tomcat is running.
[echo] You can do it using your web browser and connect the address http://127.0.0.1:8080
[echo] or looking at Tomcat's log file (/root/apache-tomcat-6.0.7/logs/catalina.out).
Press Enter when finished
- Explanation: The script will ask you to check if Tomcat has finished its startup phase. You can use web browser and connect to your Tomcat's web page or take a look at Tomcat's log file logs/catalina.out (after startup phase you should find there a line 'INFO: Server startup in xxx ms'), then press Enter so that the script can continue the installation.
- Default: none
Do you want me to add new user (provided in the pre-install step) and initiate the xml database eXist (If your eXist is already configured and initialized for RRD MA answer 'n'. But probably it's your first run of this installation script so you have not added this user and initialized the database yet.) ? (y,n)
- Explanation: In case of use of the xml database eXist, it needs to be set up (this means it must have an account and the metadata configuration specified in the pre-install and configure steps of the installation procedure).
- Default: none
- Recommendation: If the xml database already has been set up the answer should be 'n'.
SQL Measurement Archive
- Pre-install step:
Enter the name of the service [perfSONAR-SQL-MA-1.0]:
- Explanation - The script asks for symbolic name. This name will be present in the address URL of the service.
- Default: perfSONAR-SQL-MA-1.0
Enter the path where you want to install the service [/root/webapps]
- Explanation: location of the service files to be stored.
- Default: <current_directory>/webapps
Do you want me to download and install the application server Tomcat (apache-tomcat-6.0.7) for you? (y,n)
- Explanation: Application server Tomcat is a container for the service. It contains the implementation of HTTP protocol which is used by the service to send and receive messages (NMWG). If you already have it in your system you can answer 'n'.
- Default: none
- Recommendation: Tomcat version 6.0.7 is suggested.
IF answer is 'y': Enter the path for the Tomcat installation: [/root/apache-tomcat-6.0.7]:
- Explanation: If you wanted to download Tomcat, then the script asks you where to put it.
- Default: <current_directory>/apache-tomcat-6.0.7
IF answer is 'y' : Enter a URL of the Tomcat download (mirrors can be found on http://tomcat.apache.org/) [3]
- Explanation: If you wanted to download Tomcat, then the script suggests mirror server to be used for downloading.
- Default: http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.7/bin/apache-tomcat-6.0.7.tar.gz
IF answer is 'n' : Enter the path for the Tomcat installation: [/usr/local/tomcat]:
- Explanation: If you already have Tomcat in your system, the script asks you where it is located.
- Default: /usr/local/tomcat
Enter the port which will be used by your application server Tomcat [8080]
- Explanation: The script asks for port number which will be used by Tomcat and the service to send and receive messages (HTTP).
- Default: 8080
- Recommendation: If you want to have other port number then you have to setup Tomcat to use this new one as well. To do it open Tomcat's configuration file conf/server.xml and alter the port number in the Connector element :<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"redirectPort="8443" />
Usage of eXist xml database is recommended for the service. Installing/configuring this database as a web application in your Tomcat is also suggested. Do you want me to do this for you? (y,n)
- Explanation: The service contains the metadata configuration which is suggested to be stored in the xml database eXist. If you want to have the metadata configuration as a plain text file you may expect that the service will be slower in generating responses. Using eXist as a web application you can use your Tomcat to install the xml database.
- Default: none
IF answer is 'y': Do you want me to download eXist web application package (if not you have to do it manually)? (y,n)
- Explanation: The script can download xml database eXist as a web application package automatically. It is possible that the time of downloading might be long. In such case download eXist manually.
- Default: none
IF answer is 'y': Enter a URL of eXist web application package (exist-1.0.1.war) [4]:
- Explanation: If you wanted the script to download eXist, then you can see a suggested server to be used for downloading.
- Default: http://prdownloads.sourceforge.net/exist/exist-1.0.1.war
IF answer is 'y': Enter the path of directory where eXist war file will be located [/root]:
- Explanation: If you wanted the script to download eXist then you can see the suggested location where eXist will be stored.
- Default: <current_directory>
[echo] Please, insert now the following xml tag 'Context'
[echo] into Tomcat configuration file server.xml
[echo] (/root/apache-tomcat-6.0.7/conf/server.xml)
[echo] inside existing xml tag 'Host':
[echo] <Context path='/exist'
[echo] docBase='/root/exist-1.0.1.war'>
[echo] </Context>
Please do it now and press Enter when finished
- Explanation: The Context element represents a web application, which is run within a particular virtual host. Each web application is based on a Web Application Archive (WAR) file. Here, we nest a Context element within a HOST element in <TOMCAT>/conf/server.xml. Do the change on the file as described, on another window, then press Enter so that the script can continue the installation.
- Default: none
Enter the eXist user name:
- Explanation: The script asks for xml database user name (it could be for example sqlmaservice).
- Default: none
Enter the password for eXist user name :
- Explanation: The script asks for the password for xml database user.
- Default: none
Enter the password for admin eXist user []:
- Explanation: The script asks for the password for xml database admin user.
- Default: If this is the first installation of eXist then the password is empty.
- Recommendation: We suggest to change/set up the password for admin user of eXist database after the service installation procedure. When the eXist database password is not set (blank), everyone can alter the content of the database using eXist client application (of course if a firewall does not block the access).
- Configure step:
[echo] This service requires access to the relational database [echo] (mySQL or postgeSQL but others can be used as well). [echo] Make sure that you have one or install it from scratch. Please do it now and press Enter when finished
- Explanation: The script wants to know if a relational database is installed on the system. If you already have one installed, just press Enter. If not, please install one at this point, and then press Enter so that the script can continue the installation of the service.
- Default: none.
[echo] In order to maintain data of utilization metric and/or L2 path status metric, [echo] please, prepare your relational database. [echo] In case of mySQL use simple script file mysql-sqlma-dbsetup.sql [echo] that you can find in conf directory (/root/perfSONAR-SQL-MA-1.0/perfsonar/conf) [echo] of perfSONAR SQL MA installation package. [echo] In case of postgreSQL use psql-sqlma-dbsetup.sql. [echo] (Warning: remember to change the password for perfsonar_ma user!) Please do it now and press Enter when finished
- Explanation: The script wants the relational database to be ready to receive the data of the metrics that work with the service. If the database is mySQL, the user should use the script mysql-sqlma-dbsetup.sql. In case of a postgreSQL database, use psql-sqlma-dbsetup.sql. Then press Enter so that the script can continue the installation of the service.
- Default: none.
Enter the path of sql metadata config file [/root/perfSONAR-SQL-MA-1.0/perfsonar/conf/sql-database_TEST.xml]:
- Explanation: The script asks for the location of the metadata configuration file. This file contains the description of measurement data stored in relation database.
- Default: The test file in square brackets is suggested only for test purposes (you can use it for the first test service installation).
Do you want to use data of L2 path status metric in domain scope which are or will be stored in your relational database? (y,n) [echo] Provide correct jdbc connection parameters [echo] for relational database where data of L2 path status metric - domain scope [echo] are stored.
- Explanation: The script asks if the user wants to use the L2 path status metric.
- Default: none
Enter the name of database you are going to use? (mysql,postgresql)
- Explanation: The script wants to know the relational database that is going to be used.
- Default: none
Enter database jdbc address URL [jdbc:mysql://127.0.0.1/perfsonar_ma]?
- Explanation: The script wants to know the jdbc address URL to the relational database.
- Default: jdbc:mysql://127.0.0.1/perfsonar_ma
Enter database user name [perfsonar_ma]?
- Explanation: The script asks for relational database user name.
- Default: it could be for example perfsonar_ma
Enter the password of user name perfsonar_ma [testpass]?
- Explanation: The script asks for relational database password for the username chosen in the previous step.
- Default: it could be for example testpass
Do you want to use data of L2 path status metric in interdomain scope which are or will be stored in your relational database? (y,n) [echo] Provide correct jdbc connection parameters [echo] for relational database where data of L2 path status metric - interdomain scope [echo] are stored.
- Explanation: The script asks if the user wants to use the L2 path status metric in intradomain scope.
- Default: none
Do you want to use data of utilization metric which are or will be stored in your relational database? (y,n)
- Explanation: The script asks if the user wants to use the utilization metric.
- Default: none
[echo] If you want to change provided jdbc connection parameters manually, [echo] because of some reasons, [echo] you can do this in configuration files (ibatis-SqlMapConfig-*.xml) [echo] in /root/perfSONAR-SQL-MA-1.0-RC5/perfsonar/conf directory. [echo] After such change, when the service is already deployed, you must [echo] redeploy the service (undeploy and deploy again). Press Enter to continue
- Explanation: The script asks if the user wants to change jdbc parameters manually.
- Default: none
Do you want the service to accept messages with measurement data and store them? (y,n)
- Explanation: The service can receive messages with measurement data and store them in relational database.
- Default: none
Turn on service registration to Lookup Service? (y,n)
- Explanation: The service can register itself to the Lookup Service. The Lookup Service stores the information about running perfSONAR services in the network.
- Default: none
IF answer is 'y': Enter the URL of LS []:
- Explanation: The service can register itself to a Lookup Service. The script asks for the url of the Lookup Service on which the service will register itself.
- Default: no url.
Enter the registration interval [30000]:
- Explanation: The service can register itself to a Lookup Service. The script asks for the registration interval that the service will use.
- Default: 30000
Enter IP or DNS address of the host you are using now to deploy the service []:
- Explanation: The service can register itself to a Lookup Service. The script asks for the IP address or name of the server where the SQL-MA installation is being done, and from where the service will register to the Lookup Service.
- Default: none
Enter the description of service that will be send to the LS [perfSONAR service]:
- Explanation: The description of the service that will be sent when registering to a Lookup Service.
- Default: perfSONAR service
- Deploy step:
Do you want me to start the application server Tomcat for you? (y,n)
- Explanation: The script can start Tomcat with the service inside, but there is also a possibility to do it manually.
- Default: none
- Recommendation: If your Tomcat is already running before Deploy step, you should answer 'n'.
[echo] Please, insert now the following xml tag 'Context' [echo] into Tomcat configuration file server.xml [echo] (/root/apache-tomcat-6.0.7/conf/server.xml) [echo] inside existing xml tag 'Host': [echo] <Context path='/perfSONAR-SQL-MA-1.0' [echo] docBase='/root/webapps/perfSONAR-SQL-MA-1.0'> [echo] </Context> Please do it now and press Enter when finished
- Explanation: The Context element represents a web application, which is run within a particular virtual host. Each web application is based on a Web Application Archive (WAR) file. Here, we nest a Context element within a HOST element in <TOMCAT>/conf/server.xml. Do the change on the file as described, on another window, then press Enter so that the script can continue the installation.
- Default: none
[echo] (Re)Start the Tomcat. [echo] Please, make sure that Tomcat is running. Please do it now and press Enter when finished
- Explanation: The script will ask you to check if Tomcat has finished its startup phase. You can use web browser and connect to your Tomcat's web page or take a look at Tomcat's log file logs/catalina.out (after startup phase you should find there a line 'INFO: Server startup in xxx ms'), then press Enter so that the script can continue the installation.
- Default: none
Lookup Service
- Pre-install step:
[echo] Requirements: [echo] 1. Java 1.5.x [echo] 2. Ant 1.6.x (we're sure you've already got it installed as you run the installation process) [echo] 3. eXist DB XML - see Exist DB Installation Guide for LS: [echo] http://wiki.perfsonar.net/jra1-wiki/index.php/Exist_DB_Installation_Guide_for_LS [echo] 4. JAVA_HOME environment variable set to your Java directory Do you want to proceed? Just press ENTER to continue. Otherwise CTRL-C stops the process immediately
- Explanation: The script will ask you to check if you have all the required software pre-installed in the host. If you don't, please install it and then press Enter so that the script can bengin the installation of the service.
- Default: none
- Recommendation: We suggest users to change/set up the password for admin user of eXist database after the service installation procedure. When the eXist has been installed, by default, the password is not set (blank). This way every one can alter the content of the database using eXist client application (of course if the firewall does not block open access).
Do you want to download Tomcat webserver automatically (say N if you've already got Tomcat)?(y,n)
- Explanation: Application server Tomcat is a container for the service. It contains the implementation of HTTP protocol which is used by the service to send and receive messages (NMWG). If you already have it in your system you can answer 'n'.
- Default: none
- Recommendation: Tomcat version 6.0.7 is suggested.
Enter webserver (Tomcat) home directory. If answered Y for previous question, this directory will be the target directory where to install Tomcat. If answered N, Tomcat will be installed there [/usr/local/tomcat_ls]
- Explanation: If you wanted to download Tomcat, then the script asks you where to put it.
- Default: /usr/local/tomcat_ls
Enter webserver port [8080]
- Explanation: The script asks for port number which will be used by Tomcat and the service to send and receive messages (HTTP).
- Default: 8080
- Recommendation: If you want to have other port number then you have to setup Tomcat to use this new one as well. To do it open Tomcat's configuration file conf/server.xml and alter the port number in the Connector element :<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"redirectPort="8443" />
Service directory is suffix is [XML-LS-1.1]. Enter service prefix directory (where target directory XML-LS-1.1 will be installed) Default is [/root/ps/webapps]
- Explanation: location of the service files to be stored.
- Default: <current_directory>/webapps
[echo] ---------------------------------------------------------------
[echo] Your settings:
[echo] ---------------------------------------------------------------
[echo] Tomcat home directory: [/usr/local/tomcat_ls]
[echo] Tomcat address: [5]
[echo] Service destination directory: [/root/ps/webapps/XML-LS-1.1-RC6]
Proceed with these settings? (y,n)
- Explanation: The script will ask you to check the selected settings
- Default: none
- Configure step:
[echo] 2. Lookup Information configuration [echo] ===================================== Enter hostname and domainname of your machine. Not localhost. [mycomputer.mydomain.com]
- Explanation: The script will ask you to enter the hostname and domain name of your machine for Lookup service information.
- Default: mycomputer.mydomain.com
- Recommendation: This should be your full host.domain, such as alfa.domain.com
Lookup Information of service -- access point (URL) [6]
- Explanation: The script will ask you to enter the url for accessing the Lookup service.
- Default: http://mycomputer.mydomain.com:8080/XML-LS-1.1
Lookup Information of service -- service name [Test Lookup Service]
- Explanation: The script will ask you to enter the identification name for the Lookup service.
- Default: Test Lookup Service
Lookup Information of service -- service type [LS]
- Explanation: The script will ask you to enter the service type.
- Default: LS
Lookup Information of service -- service description [Test Lookup Service, perfSONAR]
- Explanation: The script will ask you to enter the service description.
- Default: Test Lookup Service, perfSONAR
[echo] 3. LS Storage [echo] ===================================== LS Storage -- XML database type (preferred one is HTTP, because it's much faster)(http,xmlrpc)
- Explanation: The script will ask you to enter XML database type that the service will use.
- Default: none
LS Storage -- XML database collection [7]
- Explanation: The script will ask you to enter the location of the XML database collection, that will be set automaticaly.
- Default: http://localhost:8680/exist/rest/db/ls
- Recommendation: Be sure to choose right protocol:// for your previous choice (http:// for http, exist:xmldb:// for xmlrpc)
LS Storage -- XML database username [lookupservice]
- Explanation: The script asks for xml database user name (it could be for example lookupservice).
- Default: lookupservice
LS Storage -- XML database password [sonar]
- Explanation: The script asks for the password for xml database user (it could be for example sonar).
- Default: sonar
[echo] 4. LS Cleanup [echo] ===================================== LS Cleanup -- enable LS Cleanup (removing old entries when TTL exceeded)?(y,n)
- Explanation: Choose y if you want to enable LSCleanup, that will remove old entries of services that register with the Lookup Service, if their TTL (time to live) is exceeded.
- Default: none
LS Cleanup -- cleanup interval: how often to search old entries in DB [300] (seconds)
- Explanation: The script asks for how often, in seconds, the Lookup service will search for old entries among the registered services.
- Default: 300 seconds (5 minutes)
LS Cleanup -- TTL of lookup information [3600] (seconds)
- Explanation: The script asks for the value of the TTL (time to live), that is the time interval in which registered services have to renew their registration information on the Lookup service. If they don't, they will be considered "old entries".
- Default: 3600 seconds (1 hour)
- Deploy step:
Do you want me to start the application server Tomcat for you? (y,n)
- Explanation: The script can start Tomcat with the service inside, but there is also a possibility to do it manually.
- Default: none
- Recommendation: If your Tomcat is already running before Deploy step, you should answer 'n'.
[echo] Please, insert now the following xml tag 'Context'
[echo] into Tomcat configuration file server.xml
[echo] (/usr/local/tomcat_ls/conf/server.xml)
[echo] inside existing xml tag 'Host':
[echo] (You may copy XML part (without [echo]):
[echo] <Context path='/XML-LS-1.1-RC6' docBase='/root/ps/webapps/XML-LS-1.1-RC6'> </Context>
[echo] Please, do it now. I will wait for you.
Press Return key ...
- Explanation: The Context element represents a web application, which is run within a particular virtual host. Each web application is based on a Web Application Archive (WAR) file. Here, we nest a Context element within a HOST element in <TOMCAT>/conf/server.xml. Do the change on the file as described, on another window, then press Enter so that the script can continue the installation.
- Default: none
[echo] Execute: sh /usr/local/tomcat_ls/bin/startup.sh
[echo] Please, make sure that the Tomcat is running. Use the address http://127.0.0.1:8080 .
Press Return key ..
- Explanation: The script will ask you to check if Tomcat has finished its startup phase. You can use web browser and connect to your Tomcat's web page or take a look at Tomcat's log file logs/catalina.out (after startup phase you should find there a line 'INFO: Server startup in xxx ms'), then press Enter so that the script can continue the installation.
- Default: none
SSH/Telnet Measurement Point
- Pre-install step:
Enter the name of the service [JAVA-SSHTELNET-MP-1.0]:
- Explanation: The script asks for symbolic name. This name will be present in the address URL of the service.
- Default: JAVA-SSHTELNET-MP-1.0
Enter the path where you want to install the service [/root/webapps]:
- Explanation: Location of the service files to be stored
- Default: <current_directory>/webapps
Do you want me to download and install the application server Tomcat (apache-tomcat-6.0.7) for you? (y,n)
- Explanation: Application server Tomcat is a container for the service. It contains the implementation of HTTP protocol which is used by the service to send and receive messages (NMWG). If you already have it in your system you can answer 'n'.
- Default: none
- Recommendation: Tomcat version 6.0.7 is suggested.
IF answer is 'y': Enter the path for the Tomcat installation: [/root/apache-tomcat-6.0.7]:
- Explanation: If you wanted to download Tomcat, then the script asks you where to put it.
- Default: <current_directory>/apache-tomcat-6.0.7
IF answer is 'y' : Enter a URL of the Tomcat download (mirrors can be found on http://tomcat.apache.org/) [8]
- Explanation: If you wanted to download Tomcat, then the script suggests mirror server to be used for downloading.
- Default: http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.7/bin/apache-tomcat-6.0.7.tar.gz
IF answer is 'n' : Enter the path for the Tomcat installation: [/usr/local/tomcat]:
- Explanation: If you already have Tomcat in your system, the script asks you where it is located.
- Default: /usr/local/tomcat
Enter the port which will be used by your application server Tomcat [8080]
- Explanation: The script asks for port number which will be used by Tomcat and the service to send and receive messages (HTTP).
- Default: 8080
- Recommendation: If you want to have other port number then you have to setup Tomcat to use this new one as well. To do it open Tomcat's configuration file conf/server.xml and alter the port number in the Connector element :<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"redirectPort="8443" />
[echo] Make sure that your application server Tomcat has the same port [echo] for the http communication. If not then configure the Tomcat in order [echo] to use this port number. Please do it now and press Enter when finished
- Configure step:
Do you already have a manually edited service.configuration files available ? (yes/no)
- Explanation: The service asks for a previously available configuration file. If you answer yes, the service will ask for the path to the file, and use that one as configuration file. If the answer is negative, a new configuration file will be created based on the answers provided on the following questions.
- Default: none
IF answer is 'yes': Please enter the path to this configuration file
- Explanation: One has to enter the path to the manually edited configuration file. The configuration now moves on to the register-functionality-question.
- Default: none
IF answer is 'no': Enter the name of the devices one by one, end the list with "STOP"!
- Explanation: First the names of the devices that have to be supported will be asked. Here you can specify anything you like, but mostly this is the URL or the hostname of the machine.
- Default: none
Choose one of the following types of equipment for every device specified previously ... 1) Quagga - Password Login (Telnet) 2) Cisco - Password Login (Telnet) 3) Cisco - Password Login (SSH) 4) Cisco - Key-based Login (SSH) 5) Juniper - Password Login (Telnet) 6) Juniper - Password Login (SSH) 7) Juniper - Key-based Login (SSH)
- Explanation: For every device previously specified, you have to choose one of the provided types of equipment. According to the chosen type of device and access method, some more questions will be asked to configure the URL, port, username, password or key, prompt and access-rate.
- Default: none
IF device is of type '1': Please give the url for device:
- Explanation: Enter the URL for the device specified.
- Default: none
Please give the port for device:
- Explanation: Enter the port for the device specified.
- Default: none
Please give the prompt for device:
- Explanation: Enter the prompt for the device specified.
- Default: none
Please give the access rate for device:
- Explanation: Enter the access rate for the device specified. The access rate is the minimum interval be between requests (in ms).
- Default: none
Please give the password for device:
- Explanation: Enter the password for the device specified.
- Default: none
Please give the bgp-daemon port for device:
- Explanation: Enter the BGP Deamon port for the device specified.
- Default: none
Please give the bgp-daemon prompt for device:
- Explanation: Enter the BGP Deamon prompt for the device specified.
- Default: none
Please give the bgp-daemon password for device:
- Explanation: Enter the BGP Deamon password for the device specified.
- Default: none
IF device is of type '2', '3', '5' or '6' Please give the url for device:
- Explanation: Enter the URL for the device specified.
- Default: none
Please give the port for device:
- Explanation: Enter the port for the device specified.
- Default: none
Please give the prompt for device:
- Explanation: Enter the prompt for the device specified.
- Default: none
Please give the access rate for device:
- Explanation: Enter the access rate for the device specified. The access rate is the minimum interval be between requests (in ms).
- Default: none
Please give the username for device:
- Explanation: Enter the username for the device specified.
- Default: none
Please give the password for device:
- Explanation: Enter the password for the device specified.
- Default: none
IF device is of type '4' or '7' Please give the url for device:
- Explanation: Enter the URL for the device specified.
- Default: none
Please give the port for device:
- Explanation: Enter the port for the device specified.
- Default: none
Please give the prompt for device:
- Explanation: Enter the prompt for the device specified.
- Default: none
Please give the access rate for device:
- Explanation: Enter the access rate for the device specified. The access rate is the minimum interval be between requests (in ms).
- Default: none
Please give the username for device:
- Explanation: Enter the username for the device specified.
- Default: none
Please give the path to the public ssh key for device:
- Explanation: Enter the path to the public ssh key for the device specified.
- Default: none
After configuring the devices, the commands for these devices need to be configured.
Enter the name of the commands you want the users to be able to execute on the device one by one for every device, to end the list, enter "STOP"! You can choose these names yourself Start the command with \"BGP_\" for BGP-commands Start the command with \"IP_\" for IP-commands Start the command with \"IPv6_\" for IPv6-commands Start the command with \"STATUS_\" for STATUS-commands
- Explanation: The last big part of the configuration script asks you what the names are for all the commands you want the users to be able to execute on the device. These names can be chosen to your own flavour, but should be preceded by BGP_, IP_, IPv6_, STATUS_, for their respective type of information.
- Default: none
IF the current device is not the first one to be configured Do you want the use the same commands as configured for the previous device? (yes/[no])
- Explanation: If the commands for a previous device were already configured, you now have the option to use the same configuration for the commands of the current device. The same question will be asked again, but this one only encompasses the symbolic names of the commands.
- Default: no
IF the current device is the first one, or the answer is 'no' Enter the commands!
- Explanation: Enter the symbolic names of the commands you want to be supported by the current device. These names can be chosen to your own flavour, but should be preceded by BGP_, IP_, IPv6_, STATUS_, for their respective type of information.
- Default: none
IF the current device is not the first one to be configured Do you want the use the same properties as configured for the previous device? (yes/[no])
- Explanation: If the commands for a previous device were already configured, you now have the option to use the same configuration for the commands of the current device. Whereas previously this question encompassed only the symbolic names of the commands, this time it encompasses the configuration of these commands.
- Default: no
IF the current device is the first one, or the answer is 'no' Device specific command to be executed for command <current_command>:
- Explanation: Enter the specific command to be executed. This has to be the exact command which will be sent to the device (minus the arguments).
- Default: none
Minimum number of parameters for command <current_command> [0]:
- Explanation: Enter the minimum number of parameters for the current command
- Default: 0
Maximum number of parameters for command <current_command> [0]:
- Explanation: Enter the maximum number of parameters for the current command
- Default: 0
Caching time (ms) <current_command> [0]:
- Explanation: Enter the caching time in ms. This specifies a time in which the result of the previously executed command is cached. If the same command is executed, the result will be retrieved from the cache, instead of doing the measurement again.
- Default: 0
Textual description of the command <current_command> [none]:
- Explanation: Enter a textual description for the current command.
- Default: none
Syntax rules for the command <current_command> [none]:
- Explanation: Enter syntax rules for the current command. This is a textual representation of how the command should look like.
- Default: none
Comma seperated string of regexes for <current_command> [none]:
- Explanation: Enter regular expressions for the current command. This is the regular expression the command should validate to.
- Default: none
register-fuctionality-question: Turn on service registration to Lookup Service? (y,n)
- Explanation: The service can register itself to the Lookup Service. The Lookup Service stores the information about running perfSONAR services in the network
- Default: none
IF answer is 'y': register-fuctionality: Enter the URL of LS []:
- Explanation: The service can register itself to a Lookup Service. The script asks for the url of the Lookup Service on which the service will register itself.
- Default: no url.
IF answer is 'y': Enter the registration interval [30000]:
- Explanation: The service can register itself to a Lookup Service. The script asks for the registration interval that the service will use.
- Default: 30000
IF answer is 'y': Enter IP or DNS address of the host you are using now to deploy the service []:
- Explanation: The service can register itself to a Lookup Service. The script asks for the IP address or name of the server where the SQL-MA installation is being done, and from where the service will register to the Lookup Service.
- Default: none
IF answer is 'y': Enter the description of service that will be send to the LS [perfSONAR service]:
Explanation: The description of the service that will be sent when registering to a Lookup Service. Default: perfSONAR service
- Deploy step:
Do you want me to start the application server Tomcat for you? (y,n)
- Explanation: The script can start Tomcat with the service inside, but there is also a possibility to do it manually.
- Default: none
- Recommendation: If your Tomcat is already running before Deploy step, you should answer 'n'.
[echo] Please, insert now the following xml tag 'Context'
[echo] into Tomcat configuration file server.xml
[echo] (/root/ps/apache-tomcat-6.0.7/conf/server.xml)
[echo] inside existing xml tag 'Host':
[echo] <Context path='/JAVA-SSHTELNET-MP-1.0'
[echo] docBase='/root/ps/webapps/JAVA-SSHTELNET-MP-1.0'>
[echo] </Context>
[echo] Please, do it now. I will wait for you.
Press Return key ...
- Explanation: The Context element represents a web application, which is run within a particular virtual host. Each web application is based on a Web Application Archive (WAR) file. Here, we nest a Context element within a HOST element in <TOMCAT>/conf/server.xml. Do the change on the file as described, on another window, then press Enter so that the script can continue the installation.
- Default: none
Command Line Measurement Point
- Pre-install step:
Enter the name of the service [perfSONAR-CLMP-1.0]:
- Explanation - The script asks for symbolic name. This name will be present in the address URL of the service.
- Default: perfSONAR-CLMP-1.0
Enter the path where you want to install the service [/root/webapps]
- Explanation: location of the service files to be stored.
- Default: <current_directory>/webapps
Do you want me to download and install the application server Tomcat (apache-tomcat-6.0.7) for you? (y,n)
- Explanation: Application server Tomcat is a container for the service. It contains the implementation of HTTP protocol which is used by the service to send and receive messages (NMWG). If you already have it in your system you can answer 'n'.
- Default: none
- Recommendation: Tomcat version 6.0.7 is suggested.
IF answer is 'y': Enter the path for the Tomcat installation: [/root/apache-tomcat-6.0.7]:
- Explanation: If you wanted to download Tomcat, then the script asks you where to put it.
- Default: <current_directory>/apache-tomcat-6.0.7
IF answer is 'y' : Enter a URL of the Tomcat download (mirrors can be found on http://tomcat.apache.org/) [9]
- Explanation: If you wanted to download Tomcat, then the script suggests mirror server to be used for downloading.
- Default: http://archive.apache.org/dist/tomcat/tomcat-6/v6.0.7/bin/apache-tomcat-6.0.7.tar.gz
IF answer is 'n' : Enter the path for the Tomcat installation: [/usr/local/tomcat]:
- Explanation: If you already have Tomcat in your system, the script asks you where it is located.
- Default: /usr/local/tomcat
Enter the port which will be used by your application server Tomcat [8080]
- Explanation: The script asks for port number which will be used by Tomcat and the service to send and receive messages (HTTP).
- Default: 8080
- Recommendation: If you want to have other port number then you have to setup Tomcat to use this new one as well. To do it open Tomcat's configuration file conf/server.xml and alter the port number in the Connector element :<Connector port="8080" protocol="HTTP/1.1" maxThreads="150" connectionTimeout="20000"redirectPort="8443" />
[echo] The CL-MP implements simple resource protection limiting [echo] the number of concurrent processes of a specific tool. [echo] This only applies to a particular tool, being the tools [echo] independent of each other. If you want to disable a tool, [echo] define a number less than one for it's configuration. If [echo] you don't want any limits, hit enter to accept the default.
[echo] How many concurrent ping measurements do you want? [enter for no limit]:
- Explanation: The script asks for limit number of concurrent ping measurements.
- Default: no limit.
[echo] How many concurrent traceroute measurements do you want? [enter for no limit]:
- Explanation: The script asks for limit number of concurrent traceroute measurements.
- Default: no limit.
[echo] How many concurrent OWAMP measurements do you want? [enter for no limit]:
- Explanation: The script asks for limit number of concurrent OWAMP measurements.
- Default: no limit.
[echo] How many concurrent BWCTL measurements do you want? [input] [enter for no limit]:
- Explanation: The script asks for limit number of concurrent BWCTL measurements.
- Default: no limit.
Turn on service registration to Lookup Service? (y,n)
- Explanation: The service can register itself to the Lookup Service. The Lookup Service stores the information about running perfSONAR services in the network.
- Default: none
IF answer is 'y': Enter the URL of LS []:
- Explanation: The service can register itself to a Lookup Service. The script asks for the url of the Lookup Service on which the service will register itself.
- Default: no url.
Enter the registration interval [30000]:
- Explanation: The service can register itself to a Lookup Service. The script asks for the registration interval that the service will use.
- Default: 30000
Enter IP or DNS address of the host you are using now to deploy the service []:
- Explanation: The service can register itself to a Lookup Service. The script asks for the IP address or name of the server where the SQL-MA installation is being done, and from where the service will register to the Lookup Service.
- Default: none
Enter the description of service that will be send to the LS [perfSONAR service]:
- Explanation: The description of the service that will be sent when registering to a Lookup Service.
- Default: perfSONAR service
- Deploy step:
Do you want me to start the application server Tomcat for you? (y,n)
- Explanation: The script can start Tomcat with the service inside, but there is also a possibility to do it manually.
- Default: none
- Recommendation: If your Tomcat is already running before Deploy step, you should answer 'n'.
[echo] Please, insert now the following xml tag Context [echo] into Tomcat configuration file server.xml [echo] (/usr/local/tomcat/conf/server.xml) [echo] inside existing xml tag Host: [echo] <Context path='/perfSONAR-CLMP-1.0' [echo] docBase='/root/webapps/perfSONAR-CLMP-1.0'> [echo] </Context> [echo] Please, do it now. I will wait for you. Press Return key ...
- Explanation: The Context element represents a web application, which is run within a particular virtual host. Each web application is based on a Web Application Archive (WAR) file. Here, we nest a Context element within a HOST element in <TOMCAT>/conf/server.xml. Do the change on the file as described, on another window, then press Enter so that the script can continue the installation.
- Default: none
[echo] Please, make sure that the Tomcat is running. Use the address http://127.0.0.1:8080 . Press Return key ...
BWCTL Measurement Point
- Pre-install step:
Starting installation for service BWCTL MP... Choose path for installation of perl perfSONAR [<current_directory/..>/webapps]:
- Explanation - The script asks for the path where to install the service.
- Default: <current_directory/..>/webapps
Checking prerequisites: (...) Installing missing modules ... We are about to install SOAP::Lite and for your convenience will provide you with list of modules and prerequisites, so you'll be able to choose only modules you need for your configuration.
- Explanation: In this step of the service installation, missing perl modules will be installed in the local path of the perfSONAR daemon environment. If you want to use your systems mechanism of installing perl modules, skip this step. In this case you have to ensure yourself that all prerequisites are met.
- Default: none
- Configure step:
Feature Prerequisites Install?
----------------------------- ---------------------------- --------
Core Package [*] URI always
[*] MIME::Base64
[*] XML::Parser (v2.23)
Client HTTP support [*] LWP::UserAgent [ yes ]
Client HTTPS support [*] Crypt::SSLeay [ yes ]
Client SMTP/sendmail support [ ] MIME::Lite [ no ]
(...)
--- An asterix '[*]' indicates if the module is currently installed.
Do you want to proceed with this configuration? [yes] yes
- Explanation: A detailed list of perl modules that exist and that will need to be installed is shown to the user, before continuing the installation. The script asks if the user wants to proceed with the installation
- Default: yes
Summary: -------- Missing Perl modules: Missing tools: Please make sure that all dependencies are met before you continue the installation!
- Explanation: The script checks if all prerequisites are met and reports a list of prerequisites not met (if any).
- Default: none
- Deploy step:
choose user/group for running perfsonar daemon [perfsonar/perfsonar]:
- Explanation: The script asks for the user/group that will be used to run the service.
- Default: user:perfsonar / group: perfsonar
Apparently the installation was successful.
- Test step:
Would you like to test the service? (y, n): y
- Explanation: The script asks if the user wants to test the service.
- Default: none
Test perfsonar demaon.... Starting perfsonar.pl: [ OK ] Shutting down perfsonar.pl: [ OK ]
Advanced Installation
There are two ways to do advanced installation for a service
With the help of the bundle installer
- Either after downloading each service's installation files or during modification of the existing installation of a service, you have the possibility to go for advanced installation process.
- This process gives you the following options for all Services. Note: Jakarta tomcat is not used by BWCTL MP (as it is written in Perl). All steps below apply to all services (including Java and Perl) but if tomcat is mentioned anywhere, please remember that tomcat is 'internal' to bwctl and there is nothing that you need to do with it.
- In order to install a new service, you have to follow the steps 1, 2 and 3 in sequence.
- If you want to re-configure a service, you can repeat step 2 at any time but after that you MUST repeat step 3 otherwise changes won't take effect.
- The same rule applies for any of the steps (for example, if you want to repeat step 1, you can do so but you will have to repeat the later steps in sequence)
1. pre-install
This step allows you to explicity ask for pre-installation step for the particular service.
2. configure
This step allows you to configure the service you wish to install. If you go wrong, you can repeat.
If you want to re-configure your service at a later stage, DO NOT FORGET to follow step 3 otherwise
your changes won't take effect. Finally, re-start your tomcat.
3. deploy
This step deploys the service on to the tomcat
4. test
This step runs some diagnostic tests. To verify the results of the tests,
you will usually need to look into the resulting xml to see if there are error messages.
Error messages can easily be spotted.
5. undeploy
Use this step if you want to undeploy your service. It is most suitable if you wish to pull down your service
for a while before putting it back online. If you want to remove the service, you can follow this step as well
but we recommend that you follow the uninstallation guide
6. enable/disable verbose
This enables/disables verbose output messages printed onto the screen by the installer.
We don't recommend changing this unless you are diagnosing the service installer.
7. restart script
If for some reason you need to start again, please choose this option. It will take you to the main menu.
0. exit
Quit the installer completely.
With the help of ant or perl scripts which are part of each service
- All Java services come with Ant targets which help in installation and configuration related aspects of the software
- Ant targets are available inside the perfsonar/ant/ directory of each Java service (for example: XML-LS-1.1/perfsonar/ant, perfSONAR-JAVA_RRD-MA-2.0/perfsonar/ant)
- There are a few main ant targets which are built on many smaller ant targets. It is possible to use the smaller ant targets but their usage is not documented for users. The list below are the documented ant targets which we expect to be used by the people installing the service.
- For SSH telnet MP
You can execute the following commands inside the ant directory
ant -q pre-install - This step will help you in installing and configuring the pre-requsities
ant configure - This step will help you in configuring the service
- NOTE: Do not use -q switch for SSH/Telnet MP
ant -q deploy - This step will help you in deploying the service
ant test - This step will help you in running some diagnostic tests to see if the installation is ok
- NOTE: Do not use the -q switch for test targets
ant -q undeploy - This step will undeploy the service (and delete all the deployment related files)
- NOTE: Sometimes the webapps directory cannot be deleted.
Please shutdown tomcat and delete files manually
- For Command Line MP, RRD MA, SQL MA and XML-LS
ant -q pre-install - This step will help you in installing and configuring the pre-requsities
ant -q configure - This step will help you in configuring the service
ant -q deploy - This step will help you in deploying the service
ant test - This step will help you in running some diagnostic tests to see if the installation is ok
ant -q undeploy - This step will undeploy the service (and delete all the deployment related files)
- NOTE: Sometimes the webapps directory cannot be deleted.
Please shutdown tomcat and delete files manually
- Perl services use perl for installation
Re-configuration
- Sometimes services need to be re-configured. For example, when the location of LS changes or when the location of SQL database changes, etc. There are two ways in which you can re-configure the service which you have already installed
- With the help of the bundle installer
- The bundle installer can help you in modifying existing installations
- Once you have made your changes, make sure you deploy once again. Otherwise, changes won't be applied
- Restart tomcat and Test it out
- With the help of the Ant or Perl Installation scripts
- All services have installation scripts either in Ant or Perl. These scripts are used by the bundle installer script in order to install a particular service
- If you want to use these scripts directly, you can follow the guidelines provided for advanced installation of perfSONAR services
- Please note that once you do a step (for example, ant configure), you will need to follow all the remaining steps in sequence. Otherwise your changes won't be applied to the deployment
- With the help of the bundle installer
- Sometimes, configurations or re-configurations of SQL Databases and eXist XML databases are required
- Configuring the MySQL Database
- We suggest that you use the freeware SQLyog which provides a powerful front end to the SQL databases
- Apart from creating databases, tables and indexes and adding, removing and modifying data entries, it also provides the capability to administer privileges of users and so on
- Configuring the exist XML Database
- To re-configure the service, you could also do Direct Maninpulation and Restart of tomcat, but we do not recommend this approach for day-to-day administration of perfSONAR services.
- Configuring the MySQL Database
Stitching
What is Stitching?
- Measurement Archives (RRD MA and SQL MA) require some 'stitching' to be done on your side. This stitching process (also referred to as configuration) mainly involves defining 'meta information' for the network measurement data that will be made available via these services. In case of SSH Telnet MP, stitching provides information about commands that the MP can allow to be executed.
- Tools and Manuals are available to help you in this stitching process. The stitching process will result in creation of an XML file for your network. (at least one per service).
RRD MA Stitching
- For RRD MA Stitching, refer to: RRD MA Stitching guide
SQL MA Stitching
- For SQL MA Stitching, (utilisation and lightpath status) refer to: SQL MA Stitching Guide
SSH Telnet MP Stitching
- There are two ways to 'stitch' or configure allowed commands for SSH/telnet MP
- Option 1: Go through the installation process and answer the interactive questions
- If you are installing SSH Telnet MP and configuring it for the first time, this option is recommended as writing up a new service.properties file (option 2) from stratch will be tedious
- The section on interactive questions in this manual lists out the questions that will be asked by the installation script
- Once you have installed, configured and tested your MP and you are happy with its working, make a back up of the service.properties file. This will help you in re-configuring.
- Option 2: Write up/ Modify existing service.properties file
- If you have already installed and configured your SSH Telnet MP and would like to modify some parts of it, we recommend that you do the modifications in the service.properties file. This could potentially save some time in reconfiguring everything via the installer scripts especially if you only want to make a small change.
- Option 1: Go through the installation process and answer the interactive questions
- Both the options listed above are explained in the SSH-Telnet-MP Stitching Guide. This guide also explains how to backup, modify and restore the service.properties file.
Backing up your configurations
- Once your service is deployed, configured and working as expected, we suggest that you back up configurations. The steps below should help you in this task.
- For all services
- The Best option is to backup the 'webapps' directory related to a service. By default this is located inside the webapps directory inside the perfsonar-bundle-2.0 directory. For example, the directory $perfsonar-bundle-2.0/webapps/perfSONAR-RRD-MA-2.0 is the directory where the deployed RRDMA service is located by default. Backing up this directory (~100 Mb) will help in easy restoration of the service when required
- Apart from following the option above, for RRD MA and SQL MA, it is suggested that the metadata configuration file be backed up regularly as well
- For RRD MA and SQL MA
- You can download the metadata configuration file that has been currently applied to the service by using the eXist XML DB web interface. To do this,
- Point your browser to the workstation where the service and xml database is installed. For example: http://server_name:port/exist.
- Login using the username and password provided during the installation process
- You should be able to see a list of collections known to the database. Browse the appropriate collection (rrdmaconfig or sqlmaconfig)
- You should be able to find an xml file. Clicking on it will open the file in a new browser window.
- View the source for that xml file and save the file to a desired location
- For all services
Upgrading your existing RRD MA and SQL MA metadata configurations
- RRD MA - Upgrading from perfSONAR-1.0
- Old sample file is here
- New sample file for 2.0 is here
- Replace all eventType elements inside metadata with a parameters block.
- The parameter block should contain a parameter element with name attribute = 'supportedEventType'. For Link Utilisation metric, the text for this element will have to be http://ggf.org/ns/nmwg/characteristic/utilization/2.0
- Add an extra paramter inside the key. Parameter has name attribute = 'valueUnits' and text can either be Bps or bps depending on whether your rrd files store data in bits per second or bytes(octests) per second.
- RRD MA - Upgrading from versions after perfSONAR-1.0 and before perfSONAR-bundle-2.0
- New sample file for 2.0 is here
- All 'supportedEventType' parameter elements in the metadata elements should be replaced from the old value of utilization to the new value of http://ggf.org/ns/nmwg/characteristic/utilization/2.0/
- If all keys do not have a parameter with name attribute 'valueunits', add an extra paramter inside the key. Parameter should have an attribute with name 'valueUnits' and text can either be Bps or bps depending on whether your rrd files store data in bits per second or bytes(octests) per second.
- SQL MA - Upgrading from pre-release versions (before perfSONAR-bundle-2.0)
- For utilisation metric
- For path status metric
- No changes required
Upgrading existing (<2.0) perfSONAR software
- Existing software cannot be automatically upgraded. If you have an older version of the software installing and would like to install the latest version, you will need to uninstall the older version with the help of the uninstallation guide available in this manual and then install the newer version.
- Please note: For some services such as RRD MA, SQL MA and so on, you are advised to backup some existing configuration files otherwise you will end up having to re-write or regenerate them. The section on stitching has a sub-section that helps you in backing up your existing configuration files.
Uninstallation
Uninstalling perfSONAR 1.0 bundle
- Backup RRD MA Metadata configuration file
- You will need to make small format changes to this file if you want to re-use it in 2.0
- Delete the perfSONAR 1.0 directory - make sure you do not delete any rrd data files that you might have stored inside it
- Inside Jakarta tomcat, delete the axis directory (usually present in $TOMCAT/webapps/axis/)
- If you want to re-use tomcat, please remove two configurations in catalina.properties
- You can find this file in $TOMCAT/conf directory
- The entries correspond to two lines in catalina.properties file starting with 'service.properties' and 'components.properties'.
- Simply delete the two lines and save the file.
- Restart Jakarta Tomcat
Uninstalling older versions (<2.0 but >1.0) of perfSONAR services
- Backup configuration files. You can find instructions on backing up these files in the section on stitching. The following files are important
- Metadata configuration file for RRD MA
- Metadata configuration files for SQL MA
- service.properties file for SSH/Telnet MP
- Stop tomcat, remove entries in server.xml file
- server.xml file can be found in $TOMCAT/conf directory
- These entries start with '<Context' and end with '</Context>'
- Delete the entry completely - starting with '<Context' until and including '</Context>'
- Make a note of the docBase value so that you can delete that directory as wel
- Make sure you delete the correct entry for the service that you wish to uninstall
- Remove application configuration file that tomcat automatically generates
- They are usually created inside the $TOMCAT/conf/Catalina/localhost directory
- Each service usually has an xml file named after it
- Delete the webapps directory for the particular service
- The server.xml file might have given you some hints on where you had placed this directory
- Delete the service installer directory - Its location depends on where you extracted the tar file while installing
- Restart tomcat
Uninstalling services bundled in 2.0
Uninstalling JAVA Services
- This section of the guide should be used to uninstall the following services
- RRD MA
- SQL MA
- LS
- Telnet/SSH MP
- Command Line MP (CLMP)
1. Undeploy the service
Either using the bundle installer (advanced installation or modify existing installation), undeploy the service. This undeploy step will try to undeploy the web service and will also try to delete all the files that were copied to the webapps folder (usually /perfSONAR-2.0/webapps)
2. Shutdown Tomcat
In the $TOMCAT/bin directory, use the shutdown.sh script to shutdown tomcat.
3. Search and remove entry for the particular service in server.xml
In the tomcat directory, look for the conf directory. This conf directory contains a server.xml file. During installation of perfSONAR services, you would have added some entries into this server.xml config. file.
In order to stop a particular service, it is required to remove lines applicable to that service. The lines start with '<Context' and end with '</Context>'. For example, if you were uninstalling RRD MA service, look for the appropriate entry as there can be many entries for other services and remove the lines which look like below
<Context path='/perfSONAR-RRD-MA-2.0-RC6'
docBase='/home/loukik/perfSONAR/webapps/perfSONAR-RRD-MA-2.0-RC6'>
</Context>
4. Remove appropriate application configuration files which are automatically generated by tomcat For each service deployed in tomcat, Tomcat automatically generates an xml file. It stores these files in $TOMCAT/conf/Catalina/localhost. Identify such files by server names and delete the ones appropriate. If you delete any other, it should still be fine as tomcat regenerates them
5. Optionally backup and remove contents in eXist XML Database
This applies for RRD MA, SQL MA and LS only. There is usually no harm in leaving the content on the xml database.
You can find the eXist database usually on the same tomcat as other services - http://$SERVER_NAME:$PORT/exist/.
Log in as administrator (scroll down, left menu bar). We suggest that you back-up any configurations so that they can be used if needed later on.
Delete any users that were created for these services and also delete any collections that might have been created for the service that you wish to uninstall.
6. Optionally Search and remove entry for eXist Database in server.xml
This applies for RRD MA, SQL MA and LS only. There is usually no harm in leaving the content on the xml database. DO NOT FOLLOW THIS STEP IF any other service installation requires the same xml database installation.
7. Optionally delete the webapps folder
WARNING: IF YOU DELETE THE FOLDER COMPLETELY, all installed services will be removed. You will have to start installations and configurations from scratch. If you really want to do this, we suggest that you back-up any configuration files.
Ideally, for the service that you wish to uninstall, identify the folder inside the webapps folder (usually perfSONAR-2.0/webapps) and delete that particular folder.
8. Optionally delete the service installer
You can delete the specific service installer that you wish to uninstall. It is usually present as a directory inside the perfSONAR-2.0 directory. You can also delete the perfSONAR bundle installer if you do not wish to use perfSONAR anymore.
Uninstalling Perl Services
- This section of the guide should be used to uninstall the following services
- BWCTL MP
1. Undeploy the service
Use the undeploy script to remove the service from linux/fedora hosts. The undeploy script performs the following steps:
- Stops the service if it is still running
- Deletes the service implementation files and the corresponding folder
- Deletes all locally (only for this service) installed perl modules from the system
2. Cleaning up
You can perform all these steps by hand also. Note that the bwctl and iperf applications are not deleted automatically as these may be part of the host system independent from the BWCTL perfSONAR MP.
Uninstalling perfSONAR 2.0 bundle
- Please make sure that you backup any configurations and/or data that you might need for future
- Uninstall each service (specifically remove entries from tomcat's server.xml) - see uninstallation of 2.0 guide above
- Delete the webapps directory (By default, this is located in perfSONAR-2.0/webapps)
- Delete the perfSONAR 2.0 bundle directory
- Shutdown tomcat and either delete the tomcat folder (if not needed anymore) or restart it
Support
- Problems/Questions? Have a look at the FAQs here
- Still not answered? Let us know! Contact us
Other Information
- perfSONAR Bundle - Change Log
- perfSONAR detailed documentation related to this release (mainly for developers)
