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 libio-socket-ssl-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 IO::Socket:SSL
191
install Net::LDAP
192
install Template 
193
install URI
194
install MSERGEANT/XML-LibXSLT-1.58.tar.gz
195
install Digest::SHA1
196
</pre>
197
</blockquote>
198
    </li>
199

    
200
		<li>
201
			<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>.
202
    <li>
203
      <p>Now visit the resulting URL:</p>
204
      <blockquote>
205
<pre>http://localhost/knb/cgi-bin/register-dataset.cgi?cfg=nceas
206
</pre>
207
</blockquote>
208

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

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

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

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

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

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

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

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

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

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

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

    
295
  <p>Debian based, tested on Ubuntu 8.04</p>
296
</body>
297
</html>
(54-54/69)