Version 14 (modified by mmamonski, 13 years ago) (diff) |
---|
QCG-Notification Installation in PL-Grid
This document describes basic procedures needed to install QCG-Notification on the PL-Grid resources as a part of the QosCosGrid middleware. Within QosCosGrid the QCG-Notification service is used for brokering notification messages about the job state changes. All instances of the QCG-Computing services acts as the information Producers while the QCG-Broker as the Consumer. In most cases it is enough that only one instance of the QCG-Notification is deployed per Administrative Domain (i.e.: not necessary one per Cluster). You can install the QCG-Notification service on the same machine where the QCG-Computing service is installed.
Installation
Similarly to the QCG-Computing service service, QCG-Notification may be installed from the provided RPMs. Assuming that the QCG-Computing service has been installed and initially configured (thus the basic dependencies are satisfied), the procedure is as follows:
- ensure that the qcg-ntf user is present in a system, otherwise create it:
useradd -r -d /opt/plgrid/var/log/qcg-ntf/ qcg-ntf
- ensure that the qcg-dev group is present in a system, otherwise create it:
groupadd -r qcg-dev
- install PL-Grid (official) and QCG (testing) repositories, if you have not done this yet.:
#QosCosGrid testing repository cat > /etc/yum.repos.d/qcg.repo << EOF [qcg] name=QosCosGrid YUM repository baseurl=http://fury.man.poznan.pl/qcg-packages/sl/x86_64/ enabled=1 gpgcheck=0 EOF #Official PL-Grid repository rpm -Uvh http://software.plgrid.pl/packages/repos/plgrid-repos-2010-2.noarch.rpm
- install QCG-Notification using YUM Package Manager:
yum install qcg-ntf
- setup QCG-Notification database using provided script:
/opt/plgrid/qcg/share/qcg-ntf/tools/qcg-ntf-install.sh Welcome to qcg-ntf installation script! This script will guide you through process of configuring proper environment for running the QCG-Notification service. You have to answer few questions regarding parameters of your database. If you are not sure just press Enter and use the default values. Use local PostgreSQL server? (y/n) [y]: y Database [qcg-ntf]: User [qcg-ntf]: Password [qcg-ntf]: MojeTajneHaslo Create database? (y/n) [y]: y Create user? (y/n) [y]: y Checking for system user qcg_ntf...OK Checking whether PostgreSQL server is installed...OK Checking whether PostgreSQL server is running...OK Performing installation * Creating user qcg-ntf...OK * Creating database qcg-ntf...OK * Creating database schema...OK * Checking for ODBC data source qcg-ntf... * Installing ODBC data source...OK Remember to add appropriate entry to /var/lib/pgsql/data/pg_hba.conf (as the first rule!) to allow user qcg-ntf to access database qcg-ntf. For instance: host qcg-ntf qcg-ntf 127.0.0.1/32 md5 and reload Postgres server.
- Add a new rule to the pg_hba.conf as requested:
vim /var/lib/pgsql/data/pg_hba.conf /etc/init.d/postgresql reload
Configuration
Service configuration
The service should be ready to use "out-of-the-box", however basic configuration may be needed to setup Host and Port on which QCG-Notification should listen as well as parameters of database connection: DSN, User and Password. It can be done by editing the main QCG-Notification configuration file located in: /opt/plgrid/qcg/etc/qcg-ntfd.xml. A part of the configuration file with marked key parameters is presented below:
<sm:QCGCore <Configuration> .... <sm:Module xsi:type="sm:ecm_gsoap.service"> <sm:Host>127.0.0.1</sm:Host> <sm:Port>19001</sm:Port> <sm:UseWsa>true</sm:UseWsa> </sm:Module> .... <smn:Database> <smn:DatabaseEnabled>true</smn:DatabaseEnabled> <smn:DSN>qcg-ntf</smn:DSN> <smn:User>qcg-ntf</smn:User> <smn:Password>qcg-ntf</smn:Password> <smn:CleanAtStart>false</smn:CleanAtStart> </smn:Database> .... </Configuration> </sm:QCGCore>
For more information about configuration of the service please take a look at the QCG-Notification guide installed in the /opt/plgrid/qcg/share/qcg-ntf/doc/ directory.
After finishing the QCG-Notification configuration you must edit the QCG-Computing service configuration file and update the content of the <ServiceURL> elements (in <Module xsi:type="smc:notification_wsa"> section). For e.g. if in the /opt/plgrid/qcg/etc/qcg-ntfd.xml one can find <Host>example.com<Host> and <Port>19001<Port> the <ServiceURL> must be set to http://example.com:19001/.
Note: You must restart the QCG-Computing service after updating the qcg-compd.xml configuration file.
Running the service
The QCG-Notification initialization script is automatically added to init.d directory and may be run as a standard system service:
/etc/init.d/qcg-ntfd start
The service logs can be found in:
/opt/plgrid/var/log/qcg-ntf/qcg-ntfd.log
It could be then stopped with the following command:
/etc/init.d/qcg-ntfd stop
Note: qcg-ntfd will be started with the qcg_ntf user permissions.
Verifying the installation
After starting the QCG-Notification service and updating the QCG-Computing configuration try to submit a simple job and check the QCG-Computing log file to see if there are now any error messages on sending notifications, e.g.:
tail -f /opt/plgrid/var/log/qcg-comp/qcg-compd.log INF Sep 17 16:15:01 24201 0x44b22940 [notification_ws] Sending notify message (topic = ActivityState/TerminalState/Finished, activity_id = 0544b24a-e960-400e-4910-f1a893632610, status = Finished)
Configuring firewall
Please have a look at this section.