1 |
<TMPL_INCLUDE header.tmpl> |
2 |
<h1><a href="<TMPL_VAR self_url>">Index</a> > <TMPL_VAR title></h1> |
3 |
|
4 |
<div class="contents"> |
5 |
<p> |
6 |
These instructions will help you install and configure your own RRD::Simple Monitoring |
7 |
server, using rrd-server.pl and rrd-server.cgi. |
8 |
You can find the very latest version of the RRD::Simple Monitoring software that |
9 |
is in live use on <TMPL_VAR HTTP_HOST>, |
10 |
<a href="http://<TMPL_VAR HTTP_HOST>/rrd-simple-monitoring.tar.gz">here</a>. |
11 |
</p> |
12 |
|
13 |
<h3>Pre-requisite Software (see <a href="#pre-built-rpms">pre-built RPMs</a>)</h3> |
14 |
<p> |
15 |
If you are using a <a href="http://www.perl.org/get.html">recent 5.8.x version of Perl</a>, |
16 |
only the following additional modules are required to run the rrd-browse.cgi web interface: |
17 |
<ul> |
18 |
<li><a href="http://search.cpan.org/~tlinden/Config-General/">Config::General</a></li> |
19 |
<li><a href="http://search.cpan.org/~samtregar/HTML-Template/">HTML::Template</a></li> |
20 |
<li><a href="http://search.cpan.org/~samtregar/HTML-Template-Expr/">HTML::Template::Expr</a></li> |
21 |
<li><a href="http://search.cpan.org/~dconway/Parse-RecDescent/">Parse::RecDescent</a></li> |
22 |
</ul> |
23 |
</p> |
24 |
<p> |
25 |
You can enable the caching functionality of the rrd-browse.cgi web interface |
26 |
(and thereby improve performance for larger installations) by simply |
27 |
installing the following additional modules: |
28 |
<ul> |
29 |
<li><a href="http://search.cpan.org/~cleishman/Cache/">Cache</a></li> |
30 |
<li><a href="http://search.cpan.org/~pmqs/DB_File/">DB_File</a></li> |
31 |
<li><a href="http://search.cpan.org/~bbb/File-NFSLock/">File::NFSLock</a></li> |
32 |
<li><a href="http://search.cpan.org/~jmm/Heap/">Heap</a></li> |
33 |
<li><a href="http://search.cpan.org/~gaas/IO-String/">IO::String</a></li> |
34 |
<li><a href="http://search.cpan.org/~gbarr/TimeDate/">Date::Parse</a></li> |
35 |
<li><a href="http://search.cpan.org/~jpeacock/version/">version</a></li> |
36 |
</ul> |
37 |
</p> |
38 |
<p> |
39 |
Likewise, if you are running a recent version of Perl, the following modules |
40 |
are required to run the rrd-server.pl script (which is called by rrd-server.cgi): |
41 |
<ul> |
42 |
<li><a href="http://search.cpan.org/~kwilliams/Module-Build/">Module::Build</a></li> |
43 |
<li><a href="http://search.cpan.org/~nicolaw/RRD-Simple/">RRD::Simple</a> |
44 |
- RRD::Simple requires RRDtool to be installed. See the RRD::Simple |
45 |
<a href="http://search.cpan.org/~nicolaw/RRD-Simple/INSTALL">INSTALL</a> document for details. You will need to install RRDtool version 1.2.x or higher.</li> |
46 |
</ul> |
47 |
</p> |
48 |
|
49 |
<h3>Selecting an Installation Location</h3> |
50 |
<p> |
51 |
Select a location where you want to install the RRD monitoring software. By default, |
52 |
the software is configured to be installed under <code>/home/system/rrd/</code>, |
53 |
<code><TMPL_VAR DOCUMENT_ROOT>/</code> or some other randomly bizarre |
54 |
location. You will most likely want to change this to something more sane like |
55 |
<code>/usr/local/rrd-server/</code>. The directory structure under that |
56 |
installation location should look like the following: |
57 |
<ul> |
58 |
<li><code>./bin/</code> - should contain rrd-server.pl and rrd-client.pl</li> |
59 |
<li><code>./cgi-bin/</code> - should contain rrd-server.cgi, rrd-browse.cgi and *.tmpl templates</li> |
60 |
<li><code>./etc/</code> - should contain graph.defs, create.defs and rrd-httpd.conf</li> |
61 |
</ul> |
62 |
<ul> |
63 |
<li><code>./data/</code> - will contain the .rrd files</li> |
64 |
<li><code>./graphs/</code> - will contain the graph images</li> |
65 |
<li><code>./thumbnails/</code> - will contain the thumbnail images</li> |
66 |
</ul> |
67 |
Create these directories in your install directory, and copy the files in to the |
68 |
relevant directories. Remember to check that you have set execute permissions for |
69 |
the .pl and .cgi scripts. |
70 |
</p> |
71 |
<p> |
72 |
Once the files are in place, you will need to make a couple of small changes to the |
73 |
following files: <code>./bin/rrd-server.pl</code>, <code>./cgi-bin/rrd-server.cgi</code>, |
74 |
<code>./cgi-bin/rrd-browse.cgi</code> and <code>./etc/rrd-httpd.conf</code>. |
75 |
You should change any occurrence of <code>/home/system/rrd</code> to reflect your |
76 |
installation directory. In the case of the three .pl and .cgi files, this will be |
77 |
located in one place at the top of the file, and will look something like this: |
78 |
<pre> |
79 |
# User defined constants |
80 |
use constant BASEDIR => '/home/system/rrd'; |
81 |
</pre> |
82 |
</p> |
83 |
|
84 |
<h3>Setting up rrd-server.cgi & rrd-browse.cgi</h3> |
85 |
<p> |
86 |
In order for rrd-server.cgi abd rrd-browse.cgi to work, you must allow your web server to |
87 |
execute them as CGI scripts. The <code>./etc/rrd-httpd.conf</code> file contains a number |
88 |
of configuration directives that will allow your Apache web server to access the CGI scripts |
89 |
under the <code>/cgi-bin/rrd/</code> URL path on your server. You should either copy and |
90 |
paste the contents of this config file in to your Apache configuration file as you see fit, |
91 |
or, if you are running a Fedora Core or RedHat server, you might want to create a symbolic |
92 |
link to the configuration file like so: |
93 |
<p> |
94 |
<code>ln -s /home/system/rrd/etc/rrd-httpd.conf /etc/httpd/conf.d/rrd-httpd.conf</code> |
95 |
</p> |
96 |
Restarting your Apache web server afterwards should make these scripts visible. |
97 |
</p> |
98 |
|
99 |
<h3>Automating Graph & Thumbnail Creation</h3> |
100 |
<p> |
101 |
The rrd-server.cgi and rrd-server.pl scripts only perform data storage functions, and |
102 |
rrd-browse.cgi will only allow you to navigate the existing graphs and thumbnails. None |
103 |
of these scripts will automatically create graphs and thumbnails on their own. To generate |
104 |
the graphs, you will need to run the <code>./bin/rrd-server.pl</code> script with the |
105 |
<code>-g</code> and <code>-t</code> parameters. This will create the graphs and thumbnails |
106 |
respectively. Add the following to your crontab to generate these on a regular basis: |
107 |
<p> |
108 |
<code>8,18,28,38,48,58 * * * * /home/system/rrd/bin/rrd-server.pl -gt >/dev/null 2>&1</code> |
109 |
</p> |
110 |
</p> |
111 |
|
112 |
<h3><a name="pre-built-rpms">Pre-requisite RPMs for RedHat Enterprise Linux 4</a></h3> |
113 |
<p> |
114 |
This is a selection of pre-requisite RPMs that have been built using the |
115 |
<a href="http://search.cpan.org/~ecalder/cpan2rpm/">cpan2rpm</a> script. They |
116 |
were built under RedHat Enterprise Linux 4 ES i386 with perl 5.8.5. Some of these |
117 |
packages may already be available as part of the base RHEL4 install, and others |
118 |
may also be available from the DAG Wieers website at |
119 |
<a href="http://dag.wieers.com/rpm/">http://dag.wieers.com/rpm/</a>. |
120 |
<ul> |
121 |
<li><a href="/prerequisites/el4/perl-Cache-2.04-1.noarch.rpm">perl-Cache-2.04-1.noarch.rpm</a>, |
122 |
<a href="/prerequisites/el4/perl-Cache-2.04-1.src.rpm">perl-Cache-2.04-1.src.rpm</a></li> |
123 |
<li><a href="/prerequisites/el4/perl-Config-General-2.34-1.i386.rpm">perl-Config-General-2.34-1.i386.rpm</a>, |
124 |
<a href="/prerequisites/el4/perl-Config-General-2.34-1.src.rpm">perl-Config-General-2.34-1.src.rpm</a></li> |
125 |
<li><a href="/prerequisites/el4/perl-DB_File-1.816-1.i386.rpm">perl-DB_File-1.816-1.i386.rpm</a>, |
126 |
<a href="/prerequisites/el4/perl-DB_File-1.816-1.src.rpm">perl-DB_File-1.816-1.src.rpm</a></li> |
127 |
<li><a href="/prerequisites/el4/perl-File-NFSLock-1.20-1.noarch.rpm">perl-File-NFSLock-1.20-1.noarch.rpm</a>, |
128 |
<a href="/prerequisites/el4/perl-File-NFSLock-1.20-1.src.rpm">perl-File-NFSLock-1.20-1.src.rpm</a></li> |
129 |
<li><a href="/prerequisites/el4/perl-Heap-0.80-1.noarch.rpm">perl-Heap-0.80-1.noarch.rpm</a>, |
130 |
<a href="/prerequisites/el4/perl-Heap-0.80-1.src.rpm">perl-Heap-0.80-1.src.rpm</a></li> |
131 |
<li><a href="/prerequisites/el4/perl-HTML-Template-2.9-1.noarch.rpm">perl-HTML-Template-2.9-1.noarch.rpm</a>, |
132 |
<a href="/prerequisites/el4/perl-HTML-Template-2.9-1.src.rpm">perl-HTML-Template-2.9-1.src.rpm</a></li> |
133 |
<li><a href="/prerequisites/el4/perl-HTML-Template-Expr-0.07-1.noarch.rpm">perl-HTML-Template-Expr-0.07-1.noarch.rpm</a>, |
134 |
<a href="/prerequisites/el4/perl-HTML-Template-Expr-0.07-1.src.rpm">perl-HTML-Template-Expr-0.07-1.src.rpm</a></li> |
135 |
<li><a href="/prerequisites/el4/perl-IO-String-1.08-1.noarch.rpm">perl-IO-String-1.08-1.noarch.rpm</a>, |
136 |
<a href="/prerequisites/el4/perl-IO-String-1.08-1.src.rpm">perl-IO-String-1.08-1.src.rpm</a></li> |
137 |
<li><a href="/prerequisites/el4/perl-Module-Build-0.2808-1.noarch.rpm">perl-Module-Build-0.2808-1.noarch.rpm</a>, |
138 |
<a href="/prerequisites/el4/perl-Module-Build-0.2808-1.src.rpm">perl-Module-Build-0.2808-1.src.rpm</a></li> |
139 |
<li><a href="/prerequisites/el4/perl-Module-Pluggable-3.6-1.noarch.rpm">perl-Module-Pluggable-3.6-1.noarch.rpm</a>, |
140 |
<a href="/prerequisites/el4/perl-Module-Pluggable-3.6-1.src.rpm">perl-Module-Pluggable-3.6-1.src.rpm</a></li> |
141 |
<li><a href="/prerequisites/el4/perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.i386.rpm">perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.i386.rpm</a>, |
142 |
<a href="/prerequisites/el4/perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.src.rpm">perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.src.rpm</a></li> |
143 |
<li><a href="/prerequisites/el4/perl-RRD-Simple-1.43-1.noarch.rpm">perl-RRD-Simple-1.43-1.noarch.rpm</a>, |
144 |
<a href="/prerequisites/el4/perl-RRD-Simple-1.43-1.src.rpm">perl-RRD-Simple-1.43-1.src.rpm</a></li> |
145 |
<li><a href="/prerequisites/el4/perl-TimeDate-1.16-1.noarch.rpm">perl-TimeDate-1.16-1.noarch.rpm</a>, |
146 |
<a href="/prerequisites/el4/perl-TimeDate-1.16-1.src.rpm">perl-TimeDate-1.16-1.src.rpm</a></li> |
147 |
<li><a href="/prerequisites/el4/perl-version-0.74-1.i386.rpm">perl-version-0.74-1.i386.rpm</a>, |
148 |
<a href="/prerequisites/el4/perl-version-0.74-1.src.rpm">perl-version-0.74-1.src.rpm</a></li> |
149 |
<li><a href="/prerequisites/el4/perl-XML-Simple-2.18-1.noarch.rpm">perl-XML-Simple-2.18-1.noarch.rpm</a>, |
150 |
<a href="/prerequisites/el4/perl-XML-Simple-2.18-1.src.rpm">perl-XML-Simple-2.18-1.src.rpm</a></li> |
151 |
</ul> |
152 |
</p> |
153 |
|
154 |
<h3>Pre-requisite RPMs for RedHat Enterprise Linux 5</a></h3> |
155 |
<p> |
156 |
These RPMs were built under RedHat Enterprise Linux 5 ES i386 with perl 5.8.8. |
157 |
<ul> |
158 |
<li><a href="/prerequisites/el5/perl-Cache-2.04-1.noarch.rpm">perl-Cache-2.04-1.noarch.rpm</a>, |
159 |
<a href="/prerequisites/el5/perl-Cache-2.04-1.src.rpm">perl-Cache-2.04-1.src.rpm</a></li> |
160 |
<li><a href="/prerequisites/el5/perl-Config-General-2.34-1.i386.rpm">perl-Config-General-2.34-1.i386.rpm</a>, |
161 |
<a href="/prerequisites/el5/perl-Config-General-2.34-1.src.rpm">perl-Config-General-2.34-1.src.rpm</a></li> |
162 |
<li><a href="/prerequisites/el5/perl-DB_File-1.816-1.i386.rpm">perl-DB_File-1.816-1.i386.rpm</a>, |
163 |
<a href="/prerequisites/el5/perl-DB_File-1.816-1.src.rpm">perl-DB_File-1.816-1.src.rpm</a></li> |
164 |
<li><a href="/prerequisites/el5/perl-File-NFSLock-1.20-1.noarch.rpm">perl-File-NFSLock-1.20-1.noarch.rpm</a>, |
165 |
<a href="/prerequisites/el5/perl-File-NFSLock-1.20-1.src.rpm">perl-File-NFSLock-1.20-1.src.rpm</a></li> |
166 |
<li><a href="/prerequisites/el5/perl-Heap-0.80-1.noarch.rpm">perl-Heap-0.80-1.noarch.rpm</a>, |
167 |
<a href="/prerequisites/el5/perl-Heap-0.80-1.src.rpm">perl-Heap-0.80-1.src.rpm</a></li> |
168 |
<li><a href="/prerequisites/el5/perl-HTML-Template-2.9-1.noarch.rpm">perl-HTML-Template-2.9-1.noarch.rpm</a>, |
169 |
<a href="/prerequisites/el5/perl-HTML-Template-2.9-1.src.rpm">perl-HTML-Template-2.9-1.src.rpm</a></li> |
170 |
<li><a href="/prerequisites/el5/perl-HTML-Template-Expr-0.07-1.noarch.rpm">perl-HTML-Template-Expr-0.07-1.noarch.rpm</a>, |
171 |
<a href="/prerequisites/el5/perl-HTML-Template-Expr-0.07-1.src.rpm">perl-HTML-Template-Expr-0.07-1.src.rpm</a></li> |
172 |
<li><a href="/prerequisites/el5/perl-IO-String-1.08-1.noarch.rpm">perl-IO-String-1.08-1.noarch.rpm</a>, |
173 |
<a href="/prerequisites/el5/perl-IO-String-1.08-1.src.rpm">perl-IO-String-1.08-1.src.rpm</a></li> |
174 |
<li><a href="/prerequisites/el5/perl-Module-Build-0.2808-1.noarch.rpm">perl-Module-Build-0.2808-1.noarch.rpm</a>, |
175 |
<a href="/prerequisites/el5/perl-Module-Build-0.2808-1.src.rpm">perl-Module-Build-0.2808-1.src.rpm</a></li> |
176 |
<li><a href="/prerequisites/el5/perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.i386.rpm">perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.i386.rpm</a>, |
177 |
<a href="/prerequisites/el5/perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.src.rpm">perl-Parse-RecDescent-v1.95.1.tar.gz-1.95.1-1.src.rpm</a></li> |
178 |
<li><a href="/prerequisites/el5/perl-TimeDate-1.16-1.noarch.rpm">perl-TimeDate-1.16-1.noarch.rpm</a>, |
179 |
<a href="/prerequisites/el5/perl-TimeDate-1.16-1.src.rpm">perl-TimeDate-1.16-1.src.rpm</a></li> |
180 |
<li><a href="/prerequisites/el5/perl-version-0.74-1.i386.rpm">perl-version-0.74-1.i386.rpm</a>, |
181 |
<a href="/prerequisites/el5/perl-version-0.74-1.src.rpm">perl-version-0.74-1.src.rpm</a></li> |
182 |
<ul> |
183 |
</p> |
184 |
</div> |
185 |
<TMPL_INCLUDE footer.tmpl> |