Difference: GlideinWMSInstallationNotesFromChrisBoynton (10 vs. 11)

Revision 112009/11/10 - Main.ChrisBoynton

Line: 1 to 1
 
META TOPICPARENT name="GlideinWMS"

Installation Walkthrough and Notes on the GlideinWMS System

Line: 25 to 25
 

STEP 2: Install VDT, GlideinWMS Collector and Factory (on server #1)

Part 1: Check and Install Prerequisite Software

Changed:
<
<
First, we need to verify all the required software is loaded on our system.
>
>
First, we need to verify all the required software is loaded on our system. I performed all of these checks as the root user.

su - root

 
  • A reasonably recent Linux OS (RH/SL4 nad RH/SL5 tested at press time).
cat /etc/redhat-release
Scientific Linux SL release 5.3 (Boron)
Line: 40 to 44
 
Changed:
<
<
    • Installed from the GlideinWMS installer by selecting "Components" and then "Web server".
>
>

yum install httpd
apachectl start

 
Changed:
<
<
    • This is NOT (?) required if you install: pool Collector AND User Schedd
    • Installed from the GlideinWMS installer by selecting "Components" and then "Base Condor installation".
>
>
    • I ended up using version 7.3.1 because 7.3.2 seems to have some bugs.
    • I just grabbed the uncompressed tarball and stuck it in the /root directory.
 
  • The RRDTool package (v1.2.18 or later)
    • The GlideinWMS installer tells us what to install by selecting "Components" and then "rrdtool graphics package".
    • Since no installation takes place, you have to go find the files on the web. The website that lists the installation RPMS points to broken links. I found the RPMs for my 64-bit installation here:
Line: 55 to 62
 
Added:
>
>
  • You also need the (undocumented) FLOT libraries because the installers will ask for it.
wget http://flot.googlecode.com/files/flot-0.6.tar.gz
 

Part 2: Install VDT Grid Software

First, we need to download the glideinWMS software. We're going to use a specific snapshot.

Line: 72 to 82
 Choose [8] for Components and then [a] for OSG VDT Client.
Changed:
<
<
Do you have already a VDT installation?: (y/n) n
Do you want to install the full OSG VDT client?: (y/n) n
Do you want to install a minimal Grid VDT client?: (y/n) y
Where do you want the VDT installed?: [/opt/vdt]
Directory '/opt/vdt' does not exist, should I create it?: (y/n)
What pacman version should I use?: [3.28]
What VDT cache should I use?: [http://vdt.cs.wisc.edu/vdt_200_cache]
Which platform do you want to use (leave empty for autodetect):
Do you agree to the licenses? [y/n] y
Where should I fetch the CAs from?: [http://software.grid.iu.edu/pacman/cadist/ca-certs-version]
Do you want OSG_VDT_BASE defined globally?: (y/n) y
>
>
Do you have already a VDT installation?: (y/n) n
Do you want to install the full OSG VDT client?: (y/n) n
Do you want to install a minimal Grid VDT client?: (y/n) y
Where do you want the VDT installed?: [/opt/vdt]
Directory '/opt/vdt' does not exist, should I create it?: (y/n) y
What pacman version should I use?: [3.28]
What VDT cache should I use?: [http://vdt.cs.wisc.edu/vdt_200_cache]
Which platform do you want to use (leave empty for autodetect):
Do you agree to the licenses? [y/n] y
Where should I fetch the CAs from?: [http://software.grid.iu.edu/pacman/cadist/ca-certs-version]
Do you want OSG_VDT_BASE defined globally?: (y/n) y
 

Part 3: Install GlideinWMS Collector

Line: 95 to 105
 cp -fr glideinWMS/ /home/gfactory/
chown -R gfactory:gfactory /home/gfactory/glideinWMS
Changed:
<
<
Copy our personal certificate to the gfactory's home directory. (MORE ABOUT HOW TO GET THIS LATER)
>
>
We need to generate a certificate key file from the certificate. Do this to create the key file.

. /opt/vdt/setup.sh
openssl pkcs12 -in cert.p12 -out cert.key

Now remove the public keys from the private key file (just delete them from the file):

vi cert.key

Copy our personal certificate to the gfactory's home directory.

 

cp cert.p12 /home/gfactory
cp cert.key /home/gfactory
chown -R gfactory:gfactory /home/gfactory/cert.*

Line: 182 to 204
 

mkdir /var/www/html/glidefactory
chown gfactory:gfactory /var/www/html/glidefactory

Changed:
<
<

If you haven't already started Apache HTTPD as root, it would be a good time to do that. You can just use "yum install httpd" as root if you don't already have it installed.

apachectl start

Let's login as gfactory user and unpack flot and javascriptrrd:

>
>
Let's login as gfactory user and unpack flot and javascriptrrd:
  su - gfactory
unzip javascriptrrd-0.4.2.zip
gunzip -c flot-0.6.tar.gz | tar xvf -
Line: 235 to 248
 Let's also restart the Factory (BUG in start script requires us to be in the correct directory):
Changed:
<
<
cd /home/gfactory/glideinsubmit/glidein_v1_0

./factory_startup start

>
>
cd /home/gfactory/glideinsubmit/glidein_v1_0
./factory_startup start
 

If the factory fails to start, consult the factory's log directory:

Line: 251 to 262
 

Part 1: Check and Install Prerequisite Software

Simply follow the same instructions above in Step 2, Part 1.

Deleted:
<
<

Part 2: Install VDT Grid Software

 
Changed:
<
<
Simply follow the same instructions above in Step 2, Part 2.

Part 3: Install GlideinWMS Frontend

The next system needed is the GlideinWMS frontend system. We will install this on my system named SL2. This system needs most of the pre-requisites of SL1.

>
>
This system needs most of the pre-requisites of the previous server.
 
  • Any Condor-supported OS
  • The OSG client software
  • The Condor distribution
Line: 266 to 273
 
  • The javascriptRRD package (0.4 or later)
  • The perl-Time-HiRes rpm
  • The glideinWMS software
Added:
>
>

Part 2: Install VDT Grid Software

 
Changed:
<
<
Let's assume we've already installed these components. If not, follow the steps in part 1.

We need a user for condor to run under.

su - root
groupadd -g 5003 condor
useradd -c "Condor Daemon" -g 5003 -m -s /bin/bash -u 5003 condor

BEGIN WARNING -- MISSING CONDOR INSTALL (DO THIS PROXY STUFF ON OTHER SERVER AND COPY IT OVER)

>
>
Simply follow the same instructions above in Step 2, Part 2.

Part 3: Install GlideinWMS Frontend

 
Changed:
<
<
We also need our proxy certificate to identify ourselves (this could be the same as the one generated on SL1):
>
>
The next system needed is the GlideinWMS frontend system.
 
Changed:
<
<
su - frontend
mkdir .globus
scp -c blowfish -P 4221 gfactory@sl1:/home/gfactory/cert.p12 /home/frontend/
. /home/frontend/vdt/setup.sh
openssl pkcs12 -in cert.p12 -out cert.key

Now remove the public keys from the private key file:

>
>
So, of course, we need a copy of glideinWMS from CVS:
 
Changed:
<
<
vi cert.key

Now the permissions need to be adjusted on these files in order to generate the proxy:

chmod 644 /home/frontend/cert.p12
chmod 400 /home/frontend/cert.key

>
>
su - root
cvs -d :pserver:anonymous@cdcvs.fnal.gov:/cvs/cd_read_only co -r snapshot_091029 glideinWMS
 
Changed:
<
<
Run this command to generate the proxy for 500 hours:
>
>
We need a user for condor to run under.
 
Changed:
<
<
/home/frontend/vdt/glite/bin/voms-proxy-init -cert /home/frontend/cert.p12 -key /home/frontend/cert.key -out /home/frontend/.globus/x509_service_proxy -valid 500:0.0
>
>
su - root
groupadd -g 5003 condor
useradd -c "Condor Daemon" -g 5003 -m -s /bin/bash -u 5003 condor
 
Changed:
<
<
Now, let's make the cert and key owned by root to prevent any bad stuff from happening:
>
>
Since we already generated a proxy, we can copy it from Server #1.
 
Changed:
<
<
su - root
chown root:root /home/frontend/cert.p12
chown root:root /home/frontend/cert.key
>
>
scp -c blowfish -P 22 root@devg-4:/home/gfactory/.globus/x509_service_proxy /root/x509_service_proxy
 
Changed:
<
<
Proxy was created and installed successfully!

END WARNING

Now we need to move the proxy certificate into a global location:

>
>
Let's copy the proxy certificate into a global location:
  mkdir /etc/grid-security/
cp x509_service_proxy /etc/grid-security/
Changed:
<
<
Let's install the "condor collector" and "condor schedd" AT THE SAME TIME (by selecting 4,5) as root.
>
>
As root, let's install the "condor collector" (aka "pool collector") and "condor schedd" (aka "user schedd") AT THE SAME TIME (by selecting both options simeltaneously as 4,5):
 
Changed:
<
<
su - root
/root/glideinWMS/install/glideinWMS_install
Please select: 4,5
Do you have already a VDT installation?: (y/n) n
Do you want to install the full OSG VDT client?: (y/n) n
Do you want to install a minimal Grid VDT client?: (y/n) y
Where do you want the VDT installed?: [/opt/vdt]
Directory '/opt/vdt' does not exist, should I create it?: (y/n) y
What pacman version should I use?: [pacman-3.26]
What VDT cache should I use?: [http://vdt.cs.wisc.edu/vdt_1101_cache]
Which platform do you want to use (leave empty for autodetect):
Do you agree to the licenses? [y/n] y
Would you like to setup daily rotation of VDT log files? y
Do you want to update the CA certification revocation lists (CRLs) automatically? [y/n] y
Where would you like to install CA files? r
Do you want to automatically update your CA Certificates? [y/n] y
Where should I fetch the CAs from?: [http://software.grid.iu.edu/pacman/cadist/ca-certs-version]
Which user should Condor run under?: [condor]
Where do you have the Condor tarball? /root/condor-7.3.2-linux-x86_64-rhel5-dynamic.tar.gz
Where do you want to install it?: [/opt/glidecondor]
Directory '/opt/glidecondor' does not exist, should I create it?: (y/n) y
If something goes wrong with Condor, who should get email about it?: me@mydomain.ext
Do you want to split the config files between condor_config and condor_config.local?: (y/n) [y]
Will you be using a proxy or a cert? (proxy/cert) proxy
Where is your proxy located?: /etc/grid-security/x509_service_proxy
DN:
How many slave collectors do you want?: [5]
What name would you like to use for this pool?: [My pool] devg5-pool
Do you want to use the more efficient Match authentication (works for Condor v7.1.3 and later)?: (y/n) y
GCB node:
How many secondary schedds do you want?: [9]
>
>
su - root
glideinWMS/install/glideinWMS_install
Please select: 4,5
Which user should Condor run under?: [condor]
Where do you have the Condor tarball? condor-7.3.1-linux-x86-rhel5-dynamic.tar.gz
Where do you want to install it?: [/opt/glidecondor]
Directory '/opt/glidecondor' does not exist, should I create it?: (y/n) y
If something goes wrong with Condor, who should get email about it?: me@mydomain.myext
Do you want to split the config files between condor_config and condor_config.local?: (y/n) [y]
Do you want to get it from VDT?: (y/n) y
Do you have already a VDT installation?: (y/n) y
Where is the VDT installed?: [/opt/vdt]
Will you be using a proxy or a cert? (proxy/cert) proxy
Where is your proxy located?: /etc/grid-security/x509_service_proxy
DN:
How many slave collectors do you want?: [5]
What name would you like to use for this pool?: [My pool] pool-devg5
What port should the collector be running?: [9618]
Do you want to use the more efficient Match authentication (works for Condor v7.1.3 and later)?: (y/n) y
GCB node:
How many secondary schedds do you want?: [9]
 

Let's restart condor:

Line: 337 to 322
 su - root
groupadd -g 5002 frontend
useradd -c "Frontend Daemon" -g 5002 -m -s /bin/bash -u 5002 frontend
Changed:
<
<
Make sure to get a copy of condor into the frontend's home directory:
>
>
Let's copy the proxy (because we need a second copy) into the frontend user's proxy directory:
 
Changed:
<
<
cp condor-7.3.2-linux-x86_64-rhel5-dynamic.tar.gz /home/frontend/
chown frontend:frontend /home/frontend/condor-7.3.2-linux-x86_64-rhel5-dynamic.tar.gz
>
>
mkdir /home/frontend/.globus
cp x509_service_proxy /home/frontend/.globus/x509_service_proxy
chown -R frontend:frontend /home/frontend/.globus
 
Changed:
<
<
Copy the glideinWMS software into the frontend user's directory from CVS:
>
>
Make sure to get a copy of condor into the frontend's home directory:
 
Changed:
<
<
su - frontend
cvs -d :pserver:anonymous@cdcvs.fnal.gov:/cvs/cd_read_only co -r v2_1 glideinWMS
>
>
cp condor-7.3.1-linux-x86-rhel5-dynamic.tar.gz /home/frontend/
chown frontend:frontend /home/frontend/condor-7.3.1-linux-x86-rhel5-dynamic.tar.gz
 
Changed:
<
<
Now we need the HTTP server installation:
>
>
Copy the glideinWMS software into the frontend user's directory from CVS:
 
Changed:
<
<
su - root
yum install httpd
>
>
cp -fr glideinWMS /home/frontend/
chown -R frontend:frontend /home/frontend/glideinWMS
 
Changed:
<
<
HTTPD is installed
>
>
Copy over the JavaScriptRRD? package into the frontend's home directory:

cp javascriptrrd-0.4.2.zip /home/frontend/
chown frontend:frontend /home/frontend/javascriptrrd-0.4.2.zip

 
Changed:
<
<
Copy over the JavaScriptRRD? package into the frontend's home directory:
>
>
Finally, copy over our flot download:
 
Changed:
<
<
cp javascriptrrd-0.4.2.zip /home/frontend/
chown frontend:frontend /home/frontend/javascriptrrd-0.4.2.zip
su - frontend
unzip javascriptrrd-0.4.2.zip
>
>
cp flot-0.6.tar.gz /home/frontend/flot-0.6.tar.gz
chown frontend:frontend /home/frontend/flot-0.6.tar.gz
 
Changed:
<
<
JavaScriptRRD is installed

Let's also install Flot:

>
>
Let's also create a directory for the web files:
 
Changed:
<
<
wget http://flot.googlecode.com/files/flot-0.5.tar.gz
gunzip -c flot-0.5.tar.gz | tar xvf -
>
>
mkdir /var/www/html/vofrontend
chown frontend:frontend /var/www/html/vofrontend
 
Changed:
<
<
Flot was installed successfully!

Let's create a directory for the host and config log files:

>
>
Let's switch over to the frontend user and decompress some of our files:
 
Added:
>
>
su - frontend
unzip javascriptrrd-0.4.2.zip
gunzip -c flot-0.6.tar.gz | tar xvf - Let's create a directory for the host and config log files:
 mkdir /home/frontend/frontstage
Changed:
<
<
Let's also create a directory for the web files:
>
>
Now comes time to install the frontend. Let's begin:
 
Changed:
<
<
su - root
mkdir /var/www/html/vofrontend
chown frontend:frontend /var/www/html/vofrontend
>
>
/home/frontend/glideinWMS/install/glideinWMS_install
Please select: 7
Do you have already a javascriptRRD installation?: (y/n) y
Where is javascriptRRD installed?: /home/frontend/javascriptrrd-0.4.2
Do you have already a Flot installation?: (y/n) y
Where is Flot installed?: /home/frontend/flot
Where is your proxy located?: /home/frontend/.globus/x509_service_proxy
What is the mapped name?: me@myemail.myext
Where will you host your config and log files?: [/home/frontend/frontstage]
Where will the web data be hosted?: [/var/www/html/vofrontend]
What Web URL will you use?: [http://devg-5.t2.ucsd.edu/vofrontend/]
Give a name to this VO Frontend?: [myVO-devg-5] vo-devg5
Give a name to this VO Frontend instance?: [v1_0]
What node is the WMS collector running?: devg-4.t2.ucsd.edu
What is the classad identity of the glidein factory?: [gfactory@devg-4.t2.ucsd.edu]
Collector name(s): [devg-5.t2.ucsd.edu:9618]
Do you want to monitor all of them?: (y/n) y
What kind of jobs do you want to monitor?: [(JobUniverse? ==5)&&(GLIDEIN_Is_Monitor ! TRUE)&&(JOB_Is_Monitor ! TRUE)]
Give a name to the main group: [main]
Match string: [True]
Job attributes: []
Factory attributes: []
Do you want to use is to submit glideins: (y/n) [y] y
An empty entry means you are done. ... proxy fname:
DN (leave empty when finished):
Do you want to use the more efficient Match authentication (works for Condor v7.1.3 and later)?: (y/n) y
Do you want to expose the Grid env. to the user jobs?: (y/n) y
Do you want to create the VO Frontend instance (as opposed to just the config file)?: (y/n) [n] n
 
Changed:
<
<
Finished with directory setup!

Now comes time to install the frontend. Let's begin:

>
>
TODO:
 
Changed:
<
<
su - frontend
/home/frontend/glideinWMS/install/glideinWMS_install
Please select: 7
Do you have already a javascriptRRD installation?: (y/n) y
Where is javascriptRRD installed?: /home/frontend/javascriptrrd-0.4.2
Do you have already a Flot installation?: (y/n) y
Where is Flot installed?: /home/frontend/flot
Where is your proxy located?: /etc/grid-security/x509_service_proxy
Where will you host your config and log files?: [/home/frontend/frontstage]
Where will the web data be hosted?: [/var/www/html/vofrontend]
What Web URL will you use?: [http://devg-5.t2.ucsd.edu/vofrontend/]
Give a name to this VO Frontend?: [myVO-devg-5] devg5-vo
Give a name to this VO Frontend instance?: [v1_0]
What node is the WMS collector running?: devg-4.t2.ucsd.edu
Collector name(s): [devg-5.t2.ucsd.edu]
Do you want to monitor all of them?: (y/n) y
What kind of jobs do you want to monitor?: [(JobUniverse? ==5)&&(GLIDEIN_Is_Monitor ! TRUE)&&(JOB_Is_Monitor ! TRUE)]
Give a name to the main group: [main]
Match string: [True]
Job attributes: []
Factory attributes: []
Do you want to use is to submit glideins: (y/n) [y] y
An empty entry means you are done. ... proxy fname:
DN (leave empty when finished):
Do you want to use the more efficient Match authentication (works for Condor v7.1.3 and later)?: (y/n) y
Do you want to expose the Grid env. to the user jobs?: (y/n) y
Do you want to create the VO Frontend instance (as opposed to just the config file)?: (y/n) [n] n
>
>
Using DN '/DC=org/DC=doegrids/OU=People/CN=Benjamin C. Boynton 991832'
Make sure this DN is in the WMS collector grid-mapfile
  Ok, now add these lines to .bashrc:
Changed:
<
<
vi ~/.bashrc
export X509_USER_PROXY=/etc/grid-security/x509_service_proxy
>
>
vi ~/.bashrc
. /opt/vdt/setup.sh;
export X509_USER_PROXY=/etc/grid-security/x509_service_proxy;
 

Let's create the VO Frontend instance:

Line: 408 to 390
 Let's also restart the VO Frontend:
Changed:
<
<
/home/frontend/frontstage/frontend_devg5-vo-v1_0/frontend_startup stop
/home/frontend/frontstage/frontend_devg5-vo-v1_0/frontend_startup start
>
>
cd /home/frontend/frontstage/frontend_vo-devg5-v1_0/
./frontend_startup start
 

If the frontend fails to start, consult the frontend's log directory:

Changed:
<
<
ls /home/frontend/frontstage/frontend_frontend-sl2-v1_0/log
>
>
ls /home/frontend/frontstage/frontend_vo-devg5-v1_0/log
 
 
This site is powered by the TWiki collaboration platformCopyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TWiki? Send feedback