= QCG Broker Client Installation = [[PageOutline]] = Requirements = * '''Java (>= 1.5)'''\\ {{{ #!div style="font-size: 90%" For SL5.x {{{#!sh yum install java-1.6.0-sun-compat.x86_64 }}} }}} * '''Apache Ant''' (>= 1.6) ("Optional tasks for ant" are required. For SL5.x the ''ant-nodeps.x86_64'' package must be installed) {{{ #!div style="font-size: 90%" For SL5.x {{{#!sh yum install ant.x86_64 ant-nodeps.x86_64 }}} }}} * '''xml-commons-apis''' - installation of this package is not mandatory, but is recommended to avoid confusing information about not important errors. {{{ #!div style="font-size: 90%" For SL5.x {{{#!sh yum install xml-commons.x86_64 xml-commons-apis.x86_64 }}} }}} * '''trusted CA certificates''' To enable secure communication between client and QCG-Broker service set of trusted CA certificates must be copied either into `/etc/grid-security/certificates` directory or configured for every user. For the PL-Grid project: Install Polish Grid and PL-Grid Simpla-CA certificates: {{{ #!div style="font-size: 90%" {{{#!sh wget https://dist.eugridpma.info/distribution/igtf/current/accredited/RPMS/ca_PolishGrid-1.38-1.noarch.rpm wget http://software.plgrid.pl/packages/general/ca_PLGRID-SimpleCA-1.0-2.noarch.rpm wget https://dist.eugridpma.info/distribution/util/fetch-crl/fetch-crl-2.8.5-1.noarch.rpm rpm -i ca_PolishGrid-1.38-1.noarch.rpm rpm -i ca_PLGRID-SimpleCA-1.0-2.noarch.rpm #install certificate revocation list fetching utility rpm -i fetch-crl-2.8.5-1.noarch.rpm #get fresh CRLs now /usr/sbin/fetch-crl #install cron job for it cat > /etc/cron.daily/fetch-crl.cron << EOF #!/bin/sh /usr/sbin/fetch-crl EOF chmod a+x /etc/cron.daily/fetch-crl.cron }}} }}} * '''User's credential''' To secure the communication and authenticate the user to the service the X509 proxy certificate is needded. Client expects the access either to proxy certificate file or to pair of user certificate and private key files in "pem" format. If the user has the certificate in p12 format, the certificate has to be first converted to pem format files. {{{ openssl pkcs12 -nocerts -in cert.p12 -out userkey.pem openssl pkcs12 -clcerts -nokeys -in cert.p12 -out usercert.pem }}} = Installation = The installation of QCG-Broker service can be done in two ways: 1. Using the QCG-Broker precompiled source distribution. This kind of installation is designed for every Linux distribution meeting described above requirements. The installation can be performed as well by system administrator (to deploy one common instance of client accesible for all users) as every regular user (that wants to have his own instance). 2. Using provided RPM package. The package is designed for Scientific Linux 5.x (recommended version is 5.5) and the installation process requires root privileges. == Installation using the QCG-Broker distribution == * download the QCG-Broker archive from [[http://node2.qoscosgrid.man.poznan.pl/~piontek/qcg-broker/qcg-broker.tgz|qcg-broker.tgz]] {{{ #!div style="font-size: 90%" {{{#!sh wget http://node2.qoscosgrid.man.poznan.pl/~piontek/qcg-broker/qcg-broker.tgz }}} }}} * unpack the archive {{{ #!div style="font-size: 90%" {{{#!sh tar xzf qcg-broker.tgz }}} }}} === Compilation === The distribution contains precompiled version of QCB-Broker command-line client, that can be deployed as it is. The compilation step is optional and can be skiped, except the situation in which some specific compiler options should be added or changed. * compile sources {{{ #!div style="font-size: 90%" {{{#!sh cd qcg-broker- ant client-stubs client }}} }}} === Setup === * setup deployment configuration - all configuration variables are placed in `client-deploy.prop` file * '''client.deploy.dir''' - directory where QCG-Broker client will be deployed * '''client.service.host''' - QCG-Broker service hostname * '''client.service.port''' - QCG-Broker service port * '''client.service.dn''' - QCG-Broker credential DN === Deployment === * deploy QCG-Broker command-line client {{{ #!div style="font-size: 90%" {{{#!sh ant deploy-client }}} }}} == Installation using provided RPM == Perform the whole installation procedure as a `root` user. * Install PL-Grid or/and QCG repositories: * Official PL-Grid repository {{{ #!div style="font-size: 90%" {{{#!sh rpm -Uvh http://software.plgrid.pl/packages/repos/plgrid-repos-2010-2.noarch.rpm }}} }}} * !QosCosGrid testing repository {{{ #!div style="font-size: 90%" {{{#!sh 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 }}} }}} * install QCG-Broker client using YUM Package Manager: {{{ #!div style="font-size: 90%" {{{#!sh yum install qcg-broker-client }}} }}} * configure the client specifying the QCG-Broker URL and DN: {{{ #!div style="font-size: 90%" {{{#!sh vim /opt/plgrid/qcg/qcg-broker/client/etc/qcg-broker-client.conf }}} }}} = Usage = For the description how to use the QCG-Broker client please see the [[QCG-Broker User Guide | QCG_Broker_Client]]