source: trunk/INSTALL @ 490

Last change on this file since 490 was 489, checked in by bastiaans, 16 years ago

INSTALL:

  • updated
File size: 5.6 KB
RevLine 
[221]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
[222]8        To view a operational setup with Job Monarch, have a look here: http://ganglia.sara.nl/
[221]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
[232]23        * jobarchived (optionally)
[221]24
[232]25                The Job Archiving Daemon.
[221]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.
[232]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
[221]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
[232]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
[221]69REQUIREMENTS
70============
71
[222]72        all:
73
74                - Python 2.3 or higher
75
[221]76        jobmond:
77
[230]78                - pbs_python v2.8.2 or higher
[366]79                  https://subtrac.sara.nl/oss/pbs_python/
[221]80
[222]81                - gmond v3.0.1 or higher
[366]82                  http://www.ganglia.info/
[221]83
84        jobarchived:
85
[223]86                - Postgres SQL v7.xx
[366]87                  http://www.postgres.org/
[221]88
89                - rrdtool v1.xx
90                  http://people.ee.ethz.ch/~oetiker/webtools/rrdtool/
91
[366]92                - py-rrdtool
93                  http://sourceforge.net/projects/py-rrdtool/
94
[222]95                - python-pgsql v4.x.x
96                  http://sourceforge.net/projects/pypgsql/
97
98                - gmetad v3.x.x
[366]99                  http://www.ganglia.info/
[221]100
101        web:
102
[222]103                - PHP v4.1 or higher
[221]104                  http://www.php.net
105
[222]106                - php-pgsql v4.x.x
107                  (should come with Postgres)
[221]108
[222]109                - GD v2.x
110                  http://www.boutell.com/gd/
111
112                - Ganglia web frontend v3.x.x
[223]113                  http://www.ganglia.info
[222]114
115
[221]116INSTALLATION
117============
118
119        Prior to installing the software make sure you meet the necessary requirements as
120        mentioned above.
121
[222]122        NOTE: You can choose to install to other path/directories if your setup is different.
[221]123
[222]124        * jobmond
[221]125
[222]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
[489]148                4. Copy jobarchived.py:
[222]149
150                 > cp jobarchived/jobarchived.py /usr/local/sbin/jobarchived.py
151
152        * web
153
154                1. Copy the Job Monarch Template to your Ganglia installation
155
156                 > cp -a web/templates/job_monarch /var/www/ganglia/templates
157
158                2. Copy the web interface files to the addon directory in Ganglia
159
160                 > cp -a web/addons/job_monarch /var/www/ganglia/addons
161
[221]162CONFIGURATION
163=============
164
[222]165        After installation each component requires additional configuration.
[221]166
[222]167        * jobmond
168       
169                1. Edit Jobmond's config to reflect your settings:
170
171                 - In /etc/jobmond.conf
172
173                   ( see config comments for syntax and explanation )
174
175        * jobarchived
176
177                1. Edit Jobarchived's config to reflect your settings:
178
179                 - In /etc/jobarchived.conf
180
181                   ( see config comments for syntax and explanation )
182
183        * web
184
185                1. Change your Ganglia's web template to Job Monarch
186
187                 - In /var/www/ganglia/conf.php:
188
189                 > $template_name = "job_monarch";
190
191                2. Change Job Monarch's config to reflect your settings:
192
193                 - In /var/www/ganglia/addons/job_monarch/conf.php
194
195                   ( see config comments for syntax and explanation )
196
[221]197START
198=====
199
[222]200        * jobmond
[221]201
[222]202                The Job Monitor has to be run on a machine that is allowed to
203                query the PBS/Torque server.
204                Make sure that if you have 'acl_hosts' enabled on your PBS/Torque
205                server that jobmond's machine is in it.
[221]206
[222]207                1. Start the Job Monitor:
208
209                 > /usr/local/sbin/jobmond.py -c /etc/jobmond.conf
210
211        * jobarchived
212
213                1. Start the Job Archiver:
214
215                 > /usr/local/sbin/jobarchived.py -c /etc/jobarchived.conf
216
217        * web
218
219                Doesn't require you to (re)start anything.
220                ( make sure the Postgres database is running though )
221
[221]222CONTACT
223=======
224
225        To contact the author for anything from bugfixes to flame/hate mail:
226
[222]227        * Ramon Bastiaans
228
[235]229          <bastiaans ( a t ) sara ( d o t ) nl>
Note: See TracBrowser for help on using the repository browser.