source: trunk/INSTALL @ 475

Last change on this file since 475 was 366, checked in by bastiaans, 17 years ago

INSTALL:

  • updated to include py-rrdtool as requirement
File size: 5.6 KB
Line 
1DESCRIPTION
2===========
3
4        Job Monarch is a set of tools to monitor and optionally archive (batch)job information.
5
6        It is a addon for the Ganglia monitoring system and plugs in to a existing Ganglia setup.
7
8        To view a operational setup with Job Monarch, have a look here: http://ganglia.sara.nl/
9
10
11        Job Monarch stands for 'Job Monitoring and Archiving' tool and consists of three (3) components:
12
13        * jobmond
14
15                The Job Monitoring Daemon.
16                 
17                Gathers PBS/Torque batch statistics on jobs/nodes and submits them into
18                Ganglia's XML stream.
19
20                Through this daemon, users are able to view the PBS/Torque batch system and the
21                jobs/nodes that are in it (be it either running or queued).
22
23        * jobarchived (optionally)
24
25                The Job Archiving Daemon.
26
27                Listens to Ganglia's XML stream and archives the job and node statistics.
28                It stores the job statistics in a Postgres SQL database and the node statistics
29                in RRD files.
30               
31                Through this daemon, users are able to lookup a old/finished job
32                and view all it's statistics.
33
34                Optionally: You can either choose to use this daemon if your users have use for it.
35                As it can be a heavy application to run and not everyone may have a need for it.
36
37                - Multithreaded:        Will not miss any data regardless of (slow) storage
38
39                - Staged writing:       Spread load over bigger time periods
40
41                - High precision RRDs:  Allow for zooming on old periods with large precision
42
43                - Timeperiod RRDs:      Allow for smaller number of files while still keeping advantage
44                                        of small disk space
45               
46        * web
47
48                The Job Monarch web interface.
49
50                This interfaces with the jobmond data and (optionally) the jobarchived and presents the
51                data and graphs.
52
53                It does this in a similar layout/setup as Ganglia itself, so the navigation and usage is intuitive.
54
55                - Graphical usage:      Displays graphical cluster overview so you can see the cluster (job) state
56                                        in one view/image and additional pie chart with relevant information on your
57                                        current view
58
59                - Filters:              Ability to filter output to limit information displayed (usefull for those
60                                        clusters with 500+ jobs). This also filters the graphical overview images output
61                                        and pie chart so you only see the filter relevant data
62
63                - Archive:              When enabling jobarchived, users can go back as far as recorded in the database
64                                        or archived RRDs to find out what happened to a crashed or old job
65
66                - Zoom ability:         Users can zoom into a timepriod as small as the smallest grain of the RRDS
67                                        (typically up to 10 seconds) when a jobarchived is present
68
69REQUIREMENTS
70============
71
72        all:
73
74                - Python 2.3 or higher
75
76        jobmond:
77
78                - pbs_python v2.8.2 or higher
79                  https://subtrac.sara.nl/oss/pbs_python/
80
81                - gmond v3.0.1 or higher
82                  http://www.ganglia.info/
83
84        jobarchived:
85
86                - Postgres SQL v7.xx
87                  http://www.postgres.org/
88
89                - rrdtool v1.xx
90                  http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/
91
92                - py-rrdtool
93                  http://sourceforge.net/projects/py-rrdtool/
94
95                - python-pgsql v4.x.x
96                  http://sourceforge.net/projects/pypgsql/
97
98                - gmetad v3.x.x
99                  http://www.ganglia.info/
100
101        web:
102
103                - PHP v4.1 or higher
104                  http://www.php.net
105
106                - php-pgsql v4.x.x
107                  (should come with Postgres)
108
109                - GD v2.x
110                  http://www.boutell.com/gd/
111
112                - Ganglia web frontend v3.x.x
113                  http://www.ganglia.info
114
115
116INSTALLATION
117============
118
119        Prior to installing the software make sure you meet the necessary requirements as
120        mentioned above.
121
122        NOTE: You can choose to install to other path/directories if your setup is different.
123
124        * jobmond
125
126                1. Copy jobmond.py:
127
128                 > cp jobmond/jobmond.py /usr/local/sbin/jobmond.py
129
130                2. Copy jobmond.conf:
131               
132                 > cp jobmond/jobmond.conf /etc/jobmond.conf
133
134        * jobarchived
135
136                1. Create a Postgres SQL database for jobarchived:
137
138                 > createdb jobarchive
139
140                2. Setup jobarchived's tables:
141
142                 > psql -f jobarchived/job_dbase.sql jobarchive
143
144                3. Copy jobarchived/jobarchived.conf:
145
146                 > cp jobarchived/jobarchived.conf /etc/jobarchived.conf
147
148                4. Copy jobarchived.py and DBClass.py:
149
150                 > cp jobarchived/jobarchived.py /usr/local/sbin/jobarchived.py
151                 > cp jobarchived/DBClass.py /usr/local/sbin/DBClass.py
152
153        * web
154
155                1. Copy the Job Monarch Template to your Ganglia installation
156
157                 > cp -a web/templates/job_monarch /var/www/ganglia/templates
158
159                2. Copy the web interface files to the addon directory in Ganglia
160
161                 > cp -a web/addons/job_monarch /var/www/ganglia/addons
162
163CONFIGURATION
164=============
165
166        After installation each component requires additional configuration.
167
168        * jobmond
169       
170                1. Edit Jobmond's config to reflect your settings:
171
172                 - In /etc/jobmond.conf
173
174                   ( see config comments for syntax and explanation )
175
176        * jobarchived
177
178                1. Edit Jobarchived's config to reflect your settings:
179
180                 - In /etc/jobarchived.conf
181
182                   ( see config comments for syntax and explanation )
183
184        * web
185
186                1. Change your Ganglia's web template to Job Monarch
187
188                 - In /var/www/ganglia/conf.php:
189
190                 > $template_name = "job_monarch";
191
192                2. Change Job Monarch's config to reflect your settings:
193
194                 - In /var/www/ganglia/addons/job_monarch/conf.php
195
196                   ( see config comments for syntax and explanation )
197
198START
199=====
200
201        * jobmond
202
203                The Job Monitor has to be run on a machine that is allowed to
204                query the PBS/Torque server.
205                Make sure that if you have 'acl_hosts' enabled on your PBS/Torque
206                server that jobmond's machine is in it.
207
208                1. Start the Job Monitor:
209
210                 > /usr/local/sbin/jobmond.py -c /etc/jobmond.conf
211
212        * jobarchived
213
214                1. Start the Job Archiver:
215
216                 > /usr/local/sbin/jobarchived.py -c /etc/jobarchived.conf
217
218        * web
219
220                Doesn't require you to (re)start anything.
221                ( make sure the Postgres database is running though )
222
223CONTACT
224=======
225
226        To contact the author for anything from bugfixes to flame/hate mail:
227
228        * Ramon Bastiaans
229
230          <bastiaans ( a t ) sara ( d o t ) nl>
Note: See TracBrowser for help on using the repository browser.