Project

General

Profile

1
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
2
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3

    
4
<html xmlns="http://www.w3.org/1999/xhtml">
5
<head>
6
  <meta http-equiv="Content-Type" content=
7
  "text/html; charset=us-ascii" />
8
  <meta name="generator" content="pandoc" />
9
  <style type="text/css">
10
/*<![CDATA[*/
11
  ol.decimal { list-style-type: decimal; }
12
	li { padding-bottom: 5px; }
13
	blockquote { 
14
		background-color: #f5f5f5;
15
		margin: 10px 15px 5px 20px;
16
		padding: 1px 0px 1px 10px;
17
	}
18

    
19
	.keyword {
20
		color: #00008b;
21
	}
22

    
23
	.type {
24
		color: #2b91af;
25
	}
26

    
27
	.string {
28
		color: #810541;
29
	}
30

    
31
  /*]]>*/
32
  </style>
33

    
34
  <title>Metacat Install - Registry</title>
35
  <link rel="stylesheet" type="text/css" href="default.css" />
36
</head>
37

    
38
<body>
39
  <table class="tabledefault" width="100%">
40
    <tr>
41
      <td rowspan="2"><img src="images/KNBLogo.gif" /></td>
42

    
43
      <td colspan="7">
44
        <div class="title">
45
          Metacat Installation - Registry
46
        </div>
47
      </td>
48
    </tr>
49

    
50
    <tr>
51
      <td><a href="/" class="toollink">KNB Home</a></td>
52

    
53
      <td><a href="/data.html" class="toollink">Data</a></td>
54

    
55
      <td><a href="/people.html" class="toollink">People</a></td>
56

    
57
      <td><a href="/informatics" class=
58
      "toollink">Informatics</a></td>
59

    
60
      <td><a href="/biodiversity" class=
61
      "toollink">Biocomplexity</a></td>
62

    
63
      <td><a href="/education" class="toollink">Education</a></td>
64

    
65
      <td><a href="/software" class="toollink">Software</a></td>
66
    </tr>
67
  </table>
68
  <hr />
69

    
70
  <table class="tabledefault" width="100%">
71
    <tr>
72
      <td class="tablehead" colspan="2">
73
        <p class="emphasis">Installing the Metacat Registry</p>
74
      </td>
75
    </tr>
76

    
77
    <tr>
78
      <td>Author: Shaun Walbridge<br />
79
      Date: 06/06/2008<br /></td>
80
    </tr>
81
  </table>
82

    
83
  <h1 id="registry-installation">Registry Installation</h1>
84

    
85
  <h2 id="whats-it-for">What's it for?</h2>
86

    
87
  <p>The Metacat Registry provides an easy mechanism to create and
88
  edit simple EML metadata documents, and accounts for your Metacat
89
  users. It is an optional component of Metacat, but is useful when
90
  you need very low barriers to creating simple EML, or have users
91
  unable to use Morpho. The LDAP account management interface is
92
  useful if you are authenticating users against LDAP, and need to
93
  provide a basic mechanism for managing user accounts.</p>
94

    
95
  <h2 id="installation-instructions">Installation Instructions</h2>
96

    
97
  <p>The Registry can be installed on any machine Metacat runs on,
98
  but does require additional legwork to get it installed. It
99
  requires that Metacat is set deployed behind Apache, as our
100
  recommended installation platform, and the instructions assume
101
  Apache is already installed and working correctly.</p>
102

    
103
  <h2 id="steps">Steps</h2>
104

    
105
  <ol class="decimal">
106
    <li>
107
      <p>Download and extract the Metacat release:</p>
108
      <blockquote>
109
<pre><span class="type">mkdir</span> metacat &amp;&amp; cd metacat 
110
<span class="type">wget</span> http://knb.ecoinformatics.org/software/dist/metacat-src-1.8.0.zip
111
<span class="type">unzip</span> metacat-src-1.8.0.zip
112
<span class="type">cd</span> metacat-1.8.0
113
<span class="type">export</span> METACAT=`pwd`
114
</pre>
115
</blockquote>
116
    </li>
117

    
118
    <li>
119
      <p>Build the Metacat Perl client library:</p>
120
      <blockquote>
121
<pre><span class="type">cd</span> $METACAT/src/perl/Metacat
122
<span class="type">perl</span> Makefile.PL
123
<span class="type">sudo make</span>
124
<span class="type">sudo make install</span>
125
</pre>
126
</blockquote>
127
    </li>
128

    
129
    <li>
130
      <p>Install the system libraries needed. On Redhat:
131
      <blockquote>
132
<pre><span class="type">sudo yum install</span> gcc libxml2-devel libxslt-devel ant -y
133
</pre>
134
</blockquote>
135

    
136
      On Debian:
137
      <blockquote>
138
			<pre>
139
<span class="type">sudo apt-get install</span> ant libappconfig-perl libxml-libxml-perl libxml-libxslt-perl \
140
libtemplate-perl libcgi-session-perl libdigest-sha1-perl libnet-ldap-perl \ 
141
libterm-readkey-perl libxml-dom-perl libsoap-lite-perl -y
142
</pre>
143
</blockquote>
144
	  You will need to install one package using cpan
145
      <blockquote><pre><span class="type">sudo cpan</span> -i Config::Properties</pre></blockquote>
146
      <blockquote><pre><span class="type">sudo cpan</span> -i scalar::util</pre></blockquote>
147

    
148
      Debian users should skip ahead to step 6.
149
</p>
150
    </li>
151

    
152
    <li>
153
      <p>Install CPAN, which allows us to install the Perl
154
      dependencies for the registry and account management parts of
155
      Metacat. If asked to manually configure cpan, type 'no' and
156
      CPAN will be setup with its default values.</p>
157
      <blockquote>
158
<pre><span class="type">sudo yum install</span> perl-CPAN
159
<span class="type">sudo cpan</span>
160
</pre>
161
</blockquote>
162

    
163
      <p>You should now see a prompt which looks like:</p>
164
      <blockquote>
165
<pre><span class="string">cpan&gt;</span>
166
</pre>
167
</blockquote>
168

    
169
      <p>The rest of the commands will assume you're inside of
170
      CPAN. Let's get the most recent version of the CPAN software.
171
      Just press return after any prompts you recieve during this
172
      process.</p>
173
      <blockquote>
174
<pre>install Bundle::CPAN
175
reload cpan
176
</pre>
177
</blockquote>
178
    </li>
179

    
180
    <li>
181
      <p>Install the required modules. Here we're installing an old
182
      LibXSLT, as the current one requires a newer libxslt than is
183
      available on Redhat 4 &amp; 5. Again, just answer 'yes' to
184
      any questions.</p>
185
      <blockquote>
186
<pre>install AutoLoader
187
install CGI
188
install CGI::Session
189
install LWP::UserAgent
190
install Net::LDAP
191
install Template 
192
install URI
193
install MSERGEANT/XML-LibXSLT-1.58.tar.gz
194
install Digest::SHA1
195
</pre>
196
</blockquote>
197
    </li>
198

    
199
		<li>
200
			<p>Double check that Metacat's temporary folder, <code><span class="string">application.tempDir</span></code>, is writable by the apache user, usually <code><span class="string">www-data</span></code> or <code><span class="string">apache</span></code>.
201
    <li>
202
      <p>Now visit the resulting URL:</p>
203
      <blockquote>
204
<pre>http://localhost/knb/cgi-bin/register-dataset.cgi?cfg=nceas
205
</pre>
206
</blockquote>
207

    
208
      <p>If everything worked correctly, you should see a page like
209
      this: <img src="images/registry-login.jpg" alt=
210
      "Registry Login Page" /></p>
211
    </li>
212
  </ol>
213

    
214
  <h2 id="installing-the-nceas-registry">Installing the NCEAS
215
  Registry</h2>
216

    
217
  <p>These are special instructions required for the NCEAS skin to
218
  get a current projects list from the AdminDB, and can safely be
219
  ignored in all other uses.</p>
220

    
221
  <ol class="decimal">
222
    <li>
223
      <p>Download and install the Oracle Instant Client RPMs. These
224
      can be obtained from the <a href=
225
      "http://www.oracle.com/technology/software/tech/oci/instantclient/htdocs/linuxsoft.html">
226
      oracle website</a>.</p>
227
      <blockquote>
228
<pre><span class="type">rpm -i</span> oracle-instantclient-basic-10.2.0.3-1.i386.rpm
229
<span class="type">rpm -i</span> oracle-instantclient-devel-10.2.0.3-1.i386.rpm
230
<span class="type">rpm -i</span> oracle-instantclient-sqlplus-10.2.0.3-1.i386.rpm
231
</pre>
232
</blockquote>
233
    </li>
234

    
235
    <li>
236
      <p>Next, we'll need an <pre>tnsnames.ora</pre> file for
237
      Oracle to locate the server we're connecting to. In this
238
      example, we'll copy it from a remote location:</p>
239
      <blockquote>
240
<pre><span class="type">mkdir -p</span> /usr/lib/oracle/10.2.0.3/network/admin/ &amp;&amp; <span class="type">cd !$</span>
241
<span class="type">scp</span> walbridge@knb.ecoinformatics.org:/usr/lib/oracle/10.1.0.4/network/admin/tnsnames.ora .
242
</pre>
243
</blockquote>
244
    </li>
245

    
246
    <li>
247
      <p>The AdminDB is accessed via Perl, so install the needed
248
      Oracle driver using CPAN:</p>
249
      <blockquote>
250
<pre>cpan
251
install DBI
252
install DBD::Oracle
253
</pre>
254
</blockquote>
255
    </li>
256

    
257
    <li>
258
      <p>Now we can install the AdminDB module itself:</p>
259
      <blockquote>
260
<pre>mkdir -p ~/projects/admindb &amp;&amp; cd !$
261
export CVSROOT=:ext:walbridge@cvs.nceas.ucsb.edu:/cvsnceas
262
cvs co admindb
263
cd admindb/perl/NCEAS/AdminDB
264
perl Makefile.PL
265
make
266
sudo make install
267
</pre>
268
</blockquote>
269
    </li>
270

    
271
    <li>
272
      <p>Finally, set the correct properties in the
273
      <pre>nceas.cfg</pre> file:</p>
274
      <blockquote>
275
<pre>nceas_db = //hyperion.nceas.ucsb.edu:1521/nceasp.nceas.ucsb.edu
276
nceas_db_user = admowner
277
nceas_db_password = NCEAS_DB_READ_PASSWORD_HERE
278
</pre>
279
</blockquote>
280
    </li>
281

    
282
    <li>
283
      <p>A quick check of <pre>register-dataset.cgi</pre> should
284
      now show a complete list of projects: <img src=
285
      "images/registry-nceas-projects.png" alt=
286
      "NCEAS Project list" /></p>
287
    </li>
288
  </ol>
289

    
290
  <h2 id="notes">Notes</h2>
291

    
292
  <p>Redhat based, tested on Centos 5</p>
293

    
294
  <p>Debian based, tested on Ubuntu 8.04</p>
295
</body>
296
</html>
(48-48/63)