Project

General

Profile

NetDRMS Installation » History » Version 170

Pablo Alingery, 20/05/2016 16:48

1 50 Herve Ballans
{{toc}}
2 1 Herve Ballans
3 1 Herve Ballans
h1. NetDRMS Installation
4 1 Herve Ballans
5 1 Herve Ballans
h2. Requirements
6 1 Herve Ballans
7 47 Pablo Alingery
h3. Configuring production environment
8 1 Herve Ballans
9 121 Pablo Alingery
Adding user production (en root)
10 47 Pablo Alingery
11 1 Herve Ballans
<pre>
12 1 Herve Ballans
# adduser production
13 1 Herve Ballans
# addgroup ias
14 1 Herve Ballans
# adduser production ias
15 1 Herve Ballans
</pre>
16 1 Herve Ballans
17 49 Herve Ballans
h3. Configure /home/production/.profile
18 1 Herve Ballans
19 49 Herve Ballans
Adding environment variables
20 1 Herve Ballans
21 1 Herve Ballans
<pre>
22 122 Herve Ballans
#Modif Herve.B Pablo.A 12/05/2016
23 122 Herve Ballans
24 1 Herve Ballans
PATH="/usr/local/netdrms_current/bin/linux_x86_64:$PATH"
25 49 Herve Ballans
PATH="/usr/local/netdrms_current/scripts:$PATH"
26 122 Herve Ballans
PATH="/usr/local/jmd/bin:$PATH"
27 122 Herve Ballans
PATH="/usr/local/jmd/scripts:$PATH"
28 141 Pablo Alingery
#The following is not needed as installed with 'apt-get install' 
29 141 Pablo Alingery
#PATH="/usr/local/pgsql/bin:$PATH"
30 122 Herve Ballans
PATH="/usr/local/netdrms-tools/scripts:$PATH"
31 49 Herve Ballans
#2014-12-17 Avec Herve et Pablo on pense que la ligne suivante est intutile as it is f.. install in /usr/local/lib
32 140 Pablo Alingery
PATH="/usr/local/cfitsio:$PATH"
33 1 Herve Ballans
#Done
34 49 Herve Ballans
35 122 Herve Ballans
DERBY_HOME=/usr/local/jmd/databases/derby/derbyBD
36 49 Herve Ballans
export DERBY_HOME
37 49 Herve Ballans
38 49 Herve Ballans
export CVSROOT=:pserver:anonymous@solarch.tuc.noao.edu:2401/vtarc1/vso/cvsroot
39 49 Herve Ballans
</pre>
40 49 Herve Ballans
41 162 Pablo Alingery
h3. Configure /varl/lib/postgres/.profile
42 161 Pablo Alingery
43 163 Pablo Alingery
Add to $PATH so postgres can exeute command like initdb
44 161 Pablo Alingery
45 161 Pablo Alingery
<pre>
46 161 Pablo Alingery
#Modif Herve.B Pablo.A 19/05/2016
47 161 Pablo Alingery
PATH="/usr/lib/postgresql/9.4/bin:$PATH"
48 161 Pablo Alingery
</pre>
49 161 Pablo Alingery
50 125 Pablo Alingery
h3. Setting privileges for SUMS_MANAGER
51 87 Herve Ballans
52 126 Pablo Alingery
Please modify file /etc/sudoers so user 'production' will be able to execute  'sum_chown' that we will locate in the dir : /usr/local/bin . See below
53 125 Pablo Alingery
Add to /etc/sudoers the following line :
54 1 Herve Ballans
	production host=NOPASSWD:/usr/local/bin/sum_chmown
55 1 Herve Ballans
56 127 Pablo Alingery
h3. Set passwords file for db postgres 
57 1 Herve Ballans
58 127 Pablo Alingery
Please create file .pgpass with the following information for user 'production" so he will be able to connect without password as 'production' or 'postgres' to 2 db that we will create later ias_sdo and ias_sdo_sums.
59 1 Herve Ballans
60 1 Herve Ballans
61 1 Herve Ballans
.pgpass content :
62 1 Herve Ballans
<pre>
63 128 Pablo Alingery
	#hostname:5432:ias_sdo:production: 
64 128 Pablo Alingery
	#hostname:5434:ias_sdo_sums:production: 
65 128 Pablo Alingery
	#hostname:5432:ias_sdo:postgres: 
66 128 Pablo Alingery
	#hostname:5434:ias_sdo_sums:postgres
67 1 Herve Ballans
</pre>
68 128 Pablo Alingery
69 129 Pablo Alingery
where #hostname is the name of your server
70 129 Pablo Alingery
71 129 Pablo Alingery
72 131 Pablo Alingery
%{color:red}WARNING : change hostname when migrate sdo-new to sdo%
73 1 Herve Ballans
74 143 Pablo Alingery
75 132 Pablo Alingery
76 133 Pablo Alingery
h3. Install missing libraries 
77 1 Herve Ballans
78 133 Pablo Alingery
• libreadline-dev (but already installed with postgresql)
79 133 Pablo Alingery
• libssl-dev 
80 133 Pablo Alingery
• libpam0g-dev 
81 133 Pablo Alingery
• libperl-dev 
82 1 Herve Ballans
83 133 Pablo Alingery
NB : Already done in Debian 8.4 Jessy
84 1 Herve Ballans
<pre>
85 1 Herve Ballans
# apt-get install $library_name
86 1 Herve Ballans
</pre> 
87 1 Herve Ballans
where
88 1 Herve Ballans
	_$library_name_ is the name of library
89 19 Pablo Alingery
90 1 Herve Ballans
Then to update path on libraries, please type :
91 1 Herve Ballans
<pre>
92 19 Pablo Alingery
# ldconfig
93 1 Herve Ballans
</pre>
94 1 Herve Ballans
95 1 Herve Ballans
h3. Reconfigure locale
96 1 Herve Ballans
97 1 Herve Ballans
<pre>
98 1 Herve Ballans
# dpkg-reconfigure locales
99 1 Herve Ballans
</pre>
100 1 Herve Ballans
101 1 Herve Ballans
select fr_FR.UTF8 UTF8 and unselect en_US.UTF-8
102 1 Herve Ballans
103 1 Herve Ballans
localedef -i en_US -f UTF-8 en_US.UTF-8
104 1 Herve Ballans
105 1 Herve Ballans
(see here : [[http://www.thomas-krenn.com/en/wiki/Perl_warning_Setting_locale_failed_in_Debian]])
106 1 Herve Ballans
107 134 Pablo Alingery
h3. Install gfortran packages
108 1 Herve Ballans
109 1 Herve Ballans
<pre>
110 1 Herve Ballans
# apt-get install gfortran swig
111 1 Herve Ballans
</pre>
112 1 Herve Ballans
113 1 Herve Ballans
h3. Installation of cfitsio library
114 1 Herve Ballans
115 135 Pablo Alingery
In /usr/local dir
116 135 Pablo Alingery
117 135 Pablo Alingery
Version 3.39 (currently on sdo : 3.24)
118 1 Herve Ballans
<pre>
119 135 Pablo Alingery
# wget ftp://heasarc.gsfc.nasa.gov/software/fitsio/c/cfitsio3390.tar.gz
120 1 Herve Ballans
</pre>
121 137 Pablo Alingery
Untar and  decompression
122 1 Herve Ballans
<pre>
123 136 Pablo Alingery
# tar -xzvf cfitsio3390.tar.gz
124 1 Herve Ballans
</pre> 
125 1 Herve Ballans
126 139 Pablo Alingery
Go into /usr/local and type
127 1 Herve Ballans
128 1 Herve Ballans
su - root and :
129 1 Herve Ballans
<pre>
130 1 Herve Ballans
# ./configure --prefix=/usr/local
131 1 Herve Ballans
# make 
132 1 Herve Ballans
# make install
133 135 Pablo Alingery
</pre>
134 118 Pablo Alingery
135 144 Pablo Alingery
h3. Installation of apache2 and lib perl
136 118 Pablo Alingery
137 118 Pablo Alingery
<pre>
138 118 Pablo Alingery
# apt-get install apache2
139 118 Pablo Alingery
140 118 Pablo Alingery
# apt-get install libjson-perl
141 118 Pablo Alingery
142 118 Pablo Alingery
# apt-get install libapache2-mod-perl2
143 118 Pablo Alingery
</pre>
144 1 Herve Ballans
145 1 Herve Ballans
h2. Installation of postgresql
146 1 Herve Ballans
147 145 Pablo Alingery
Into 'root'
148 145 Pablo Alingery
 
149 145 Pablo Alingery
<pre>
150 147 Pablo Alingery
apt-get install postgresql-9.4 postgresql-client-9.4 
151 145 Pablo Alingery
</pre>
152 145 Pablo Alingery
153 1 Herve Ballans
h2. NetDRMS databases
154 1 Herve Ballans
155 156 Pablo Alingery
into /var/lib/postgresql  (hard mount point separated,  7 disks 15000 tr/min in raid5 in order to distribute read and write) 
156 1 Herve Ballans
157 1 Herve Ballans
<pre>
158 158 Pablo Alingery
# cd /var/lib/postgresql
159 157 Pablo Alingery
# mkdir data  data_sums data_monitor
160 157 Pablo Alingery
# chown -R postgres:postgres * 
161 1 Herve Ballans
</pre>
162 1 Herve Ballans
163 160 Pablo Alingery
h3. Initialize 3 servers data,  data_sums, data_monitor
164 1 Herve Ballans
165 159 Pablo Alingery
Into postgres
166 1 Herve Ballans
<pre>
167 1 Herve Ballans
# su - postgres
168 1 Herve Ballans
169 1 Herve Ballans
$ initdb --locale=C -D data -A md5 -W
170 1 Herve Ballans
(no password)
171 2 Herve Ballans
172 2 Herve Ballans
Success. You can now start the database server using:
173 2 Herve Ballans
174 2 Herve Ballans
    postgres -D data
175 2 Herve Ballans
or
176 2 Herve Ballans
    pg_ctl -D data -l logfile start
177 2 Herve Ballans
178 1 Herve Ballans
179 1 Herve Ballans
$ initdb --locale=C -D data_sums -A md5 -W
180 2 Herve Ballans
(no password)
181 2 Herve Ballans
182 2 Herve Ballans
Success. You can now start the database server using:
183 2 Herve Ballans
184 2 Herve Ballans
    postgres -D data_sums
185 2 Herve Ballans
or
186 2 Herve Ballans
    pg_ctl -D data_sums -l logfile start
187 8 Pablo Alingery
188 8 Pablo Alingery
$ initdb --locale=C -D data_monitor -A md5 -W
189 8 Pablo Alingery
(no password)
190 8 Pablo Alingery
191 8 Pablo Alingery
Success. You can now start the database server using:
192 8 Pablo Alingery
193 8 Pablo Alingery
    postgres -D data_monitor
194 8 Pablo Alingery
or
195 8 Pablo Alingery
    pg_ctl -D data_monitor -l logfile start
196 2 Herve Ballans
</pre>
197 2 Herve Ballans
198 1 Herve Ballans
199 1 Herve Ballans
200 1 Herve Ballans
Edition des fichiers postgresql.conf pour configurer les bons ports d'écoute :
201 1 Herve Ballans
listen_addresses = '*'
202 1 Herve Ballans
data -> port 5432
203 10 Pablo Alingery
data_sums -> port 5434
204 1 Herve Ballans
data_monitor -> port 5436
205 10 Pablo Alingery
206 165 Pablo Alingery
Edit files data*/pg_hba.conf : replace 'md5' by 'trust'
207 1 Herve Ballans
<pre>
208 1 Herve Ballans
#"local"
209 1 Herve Ballans
local   all             all                                     trust
210 1 Herve Ballans
#"IPv4"
211 1 Herve Ballans
host   all             all                                     trust
212 1 Herve Ballans
</pre>
213 166 Pablo Alingery
214 166 Pablo Alingery
h3. Tunning postgres 
215 166 Pablo Alingery
216 166 Pablo Alingery
In file postgres.conf ( according to https://www.qwant.com/?q=Tunning+postgres+server+9.4+&client=firefox  )
217 166 Pablo Alingery
218 168 Pablo Alingery
shared_buffer=4096MB %{color:red}So 1/12 of the total RAM memory available%
219 1 Herve Ballans
220 169 Pablo Alingery
work_mem = 24MB
221 168 Pablo Alingery
222 168 Pablo Alingery
maintenance_work_mem = 4096MB
223 1 Herve Ballans
224 169 Pablo Alingery
wal_buffers = 16MB
225 169 Pablo Alingery
226 169 Pablo Alingery
checkpoint_segments = 32
227 169 Pablo Alingery
228 169 Pablo Alingery
checkpoint_completion_target = 0.9
229 169 Pablo Alingery
230 169 Pablo Alingery
random_page_cost = 1.0
231 169 Pablo Alingery
232 169 Pablo Alingery
effective_cache_size = 16384MB so 1/4 of the max memory 
233 169 Pablo Alingery
234 170 Pablo Alingery
235 170 Pablo Alingery
236 170 Pablo Alingery
#log
237 169 Pablo Alingery
logging_collector = on 
238 169 Pablo Alingery
log_directory = 'pg_log' 
239 169 Pablo Alingery
log_filename = 'postgresql-%Y-%m-%d_%H%M%S.log' # log file name pattern,
240 169 Pablo Alingery
log_truncate_on_rotation = on           # If on, an existing log file with the
241 169 Pablo Alingery
log_rotation_age = 1d                   # Automatic rotation of logfiles will
242 170 Pablo Alingery
client_min_messages = error
243 170 Pablo Alingery
log_min_messages = error 
244 170 Pablo Alingery
log_min_duration_statement = 0
245 170 Pablo Alingery
246 170 Pablo Alingery
log_connections = on
247 170 Pablo Alingery
log_disconnections = on
248 170 Pablo Alingery
log_duration = off
249 170 Pablo Alingery
log_hostname = on
250 170 Pablo Alingery
log_line_prefix = '%t [%p]: %u@%h - %d :'  
251 170 Pablo Alingery
252 170 Pablo Alingery
track_counts = on
253 170 Pablo Alingery
autovacuum = on 
254 170 Pablo Alingery
255 170 Pablo Alingery
extra_float_digits = 3
256 170 Pablo Alingery
257 170 Pablo Alingery
258 170 Pablo Alingery
259 166 Pablo Alingery
260 1 Herve Ballans
261 167 Pablo Alingery
h3. Démarrage des 3 bases :
262 1 Herve Ballans
263 1 Herve Ballans
<pre>
264 1 Herve Ballans
# su - postgres
265 21 Pablo Alingery
$ cd /DATABASES
266 21 Pablo Alingery
$ pg_ctl -D data -l ./PG_LOGS/data.log start
267 21 Pablo Alingery
$ pg_ctl -D data_sums -l ./PG_LOGS/data_sums.log start
268 20 Pablo Alingery
$ pg_ctl -D data_monitor -l ./PG_LOGS/data_monitor.log start
269 20 Pablo Alingery
270 20 Pablo Alingery
note :
271 10 Pablo Alingery
PG_LOGS is the directory for logs 
272 1 Herve Ballans
273 1 Herve Ballans
</pre>
274 1 Herve Ballans
275 1 Herve Ballans
	createdb --locale C -E LATIN1 -T template0 ias_sdo
276 12 Pablo Alingery
	createdb --locale C -E LATIN1 -T template0 -p 5434 ias_sdo_sums
277 55 Herve Ballans
        createdb --locale C -E LATIN1 -T template0 -p 5436 ias_sdo_monitor
278 54 Herve Ballans
279 1 Herve Ballans
h2. NetDRMS tool Install
280 23 Pablo Alingery
281 1 Herve Ballans
On se base sur la doc dipsonible ici : [[http://inf-redmine.ias.u-psud.fr/redmine/attachments/download/114/Netdrms_First_Install.odt]]
282 1 Herve Ballans
283 22 Pablo Alingery
284 24 Pablo Alingery
Les sources sont dans : http://jsoc.stanford.edu/netdrms/dist/
285 1 Herve Ballans
/usr/local/netdrms_8.10/
286 1 Herve Ballans
287 1 Herve Ballans
(Pour comparaison avec le serveur en production, on copie également le dossier netdrms_2.4 de sdo)
288 1 Herve Ballans
289 25 Pablo Alingery
on créé un lien symbolique netdrms_current qui pointe sur la dernière release
290 1 Herve Ballans
ln -s netdrms_8.10/ netdrms_current 
291 27 Pablo Alingery
292 27 Pablo Alingery
Edition fichier config.local
293 27 Pablo Alingery
<pre>
294 27 Pablo Alingery
cp config.local.template config.local
295 1 Herve Ballans
</pre>
296 29 Pablo Alingery
297 32 Herve Ballans
298 29 Pablo Alingery
Creation de 2 répertoires : 
299 1 Herve Ballans
<pre>
300 32 Herve Ballans
mkdir /usr/local/netdrms_8.10/logs/SUM
301 28 Pablo Alingery
mkdir /usr/local/netdrms_8.10/logs/slony
302 27 Pablo Alingery
</pre>
303 1 Herve Ballans
304 1 Herve Ballans
Voir le contenu du le fichier [[config.local]] à jour
305 1 Herve Ballans
306 1 Herve Ballans
Création d'un alias netdrms dans /root/.bashrc
307 27 Pablo Alingery
<pre>
308 1 Herve Ballans
alias netdrms='cd /usr/local/netdrms_current'
309 1 Herve Ballans
</pre>
310 31 Pablo Alingery
311 31 Pablo Alingery
312 31 Pablo Alingery
Lancement configure
313 31 Pablo Alingery
<pre>
314 31 Pablo Alingery
./configure
315 31 Pablo Alingery
</pre>
316 40 Pablo Alingery
317 1 Herve Ballans
h3. Modification du fichier /usr/local/netdrms_current/configure (Not Applied in NetDrms_8.10)
318 1 Herve Ballans
319 1 Herve Ballans
<pre>
320 1 Herve Ballans
# The system configuration for configure script
321 1 Herve Ballans
set PERLBIN = "/usr/bin/perl"
322 1 Herve Ballans
set PYBIN = "/usr/bin/python"
323 1 Herve Ballans
</pre>
324 34 Herve Ballans
325 34 Herve Ballans
h3. Compilation problem due to uncorrect variable types
326 35 Herve Ballans
327 34 Herve Ballans
Art (art.amezcua@stanford.edu) purpose us a workaround and send us 2 files with correct declaration :
328 42 Herve Ballans
329 42 Herve Ballans
SUMLIB_RmDo.pgc (diff with original file : [[diff_SUMLIB_RmDo.pgc]])
330 34 Herve Ballans
SUMLIB_RmDoX.pgc (diff with original file : [[diff_SUMLIB_RmDoX.pgc]])
331 109 Pablo Alingery
332 109 Pablo Alingery
Dans le répertoire base/sums/libs/pg renommer les anciens en *.orig et placer les nouveau fichiers SUMLIB_RmDo.pgc et SUMLIB_RmDoX.pgc
333 36 Herve Ballans
334 36 Herve Ballans
<pre>
335 36 Herve Ballans
# wget http://jsoc.stanford.edu/~arta/SUMLIB_RmDo.pgc
336 38 Herve Ballans
# wget http://jsoc.stanford.edu/~arta/SUMLIB_RmDoX.pgc
337 34 Herve Ballans
</pre>
338 1 Herve Ballans
339 1 Herve Ballans
h3. Modification du fichier /usr/local/netdrms_current/build/jsoc_machine.csh
340 1 Herve Ballans
341 1 Herve Ballans
ligne 28 :
342 1 Herve Ballans
343 1 Herve Ballans
<pre>
344 1 Herve Ballans
  case "x86_64":
345 1 Herve Ballans
      echo linux_x86_64
346 1 Herve Ballans
      breaksw
347 109 Pablo Alingery
</pre>
348 109 Pablo Alingery
349 109 Pablo Alingery
Overwriting the existing files in the right place (base/sums/libs/pg) & modif in jsoc_machine.csh 
350 109 Pablo Alingery
=> the command 'make' works well.
351 109 Pablo Alingery
352 109 Pablo Alingery
But there is still problem with 'make sums'
353 109 Pablo Alingery
354 109 Pablo Alingery
h3. Workaround to solve make sums problem
355 109 Pablo Alingery
356 109 Pablo Alingery
Modify [[sum_rpc.h]] in order to match the type of some variables
357 109 Pablo Alingery
358 1 Herve Ballans
359 43 Pablo Alingery
360 1 Herve Ballans
h3. Copier /usr/local/netdrms_2.4_release/base/drms/apps/serverdefs.h dans /usr/local/netdrms_current/base/drms/apps (not applied in NetDrms_8.10)
361 44 Pablo Alingery
362 1 Herve Ballans
h3. Modification du fichier /usr/local/netdrms_current/configure (not applied in NetDrms_8.10)
363 1 Herve Ballans
364 1 Herve Ballans
au lieu de $? en csh on va mettre plutot $status
365 1 Herve Ballans
366 1 Herve Ballans
ligne 110 :
367 1 Herve Ballans
368 1 Herve Ballans
<pre>
369 1 Herve Ballans
  if ($status==0) 
370 1 Herve Ballans
</pre>
371 4 Herve Ballans
372 1 Herve Ballans
et ligne 123 :
373 1 Herve Ballans
374 1 Herve Ballans
<pre>
375 1 Herve Ballans
  if ($status==0) 
376 1 Herve Ballans
</pre>
377 4 Herve Ballans
378 4 Herve Ballans
Lancement :
379 4 Herve Ballans
<pre>
380 1 Herve Ballans
./configure
381 1 Herve Ballans
</pre>
382 1 Herve Ballans
383 1 Herve Ballans
h3. Installation des libraries libtar-dev, libcurl3-dev et libecpg-dev
384 1 Herve Ballans
385 4 Herve Ballans
<pre>
386 1 Herve Ballans
apt-get install libtar libtar-dev
387 1 Herve Ballans
</pre>
388 1 Herve Ballans
389 1 Herve Ballans
<pre>
390 1 Herve Ballans
apt-get install libcurl3-dev
391 1 Herve Ballans
</pre>
392 1 Herve Ballans
393 1 Herve Ballans
<pre>
394 1 Herve Ballans
apt-get install libecpg-dev
395 1 Herve Ballans
</pre>
396 45 Pablo Alingery
397 1 Herve Ballans
h3. #H4ck 2 Malade #PabloR0cks# (Not Applied in NetDrm_8.10)
398 1 Herve Ballans
399 1 Herve Ballans
Modification du fichier /usr/include/stdint.h
400 17 Herve Ballans
401 17 Herve Ballans
ligne 55 : long int remplacé par long long int
402 17 Herve Ballans
403 17 Herve Ballans
<pre>
404 17 Herve Ballans
#if __WORDSIZE == 64
405 17 Herve Ballans
typedef unsigned long int       uint64_t; --> ici long long int
406 17 Herve Ballans
#else
407 17 Herve Ballans
__extension__
408 17 Herve Ballans
typedef unsigned long long int  uint64_t;
409 17 Herve Ballans
#endif
410 1 Herve Ballans
</pre>
411 1 Herve Ballans
412 1 Herve Ballans
"Allo Linus ?!?.."
413 1 Herve Ballans
414 1 Herve Ballans
h3. Compilation
415 1 Herve Ballans
416 1 Herve Ballans
<pre>
417 1 Herve Ballans
# make
418 53 Herve Ballans
# make sums
419 1 Herve Ballans
# make jsoc_fetch
420 1 Herve Ballans
</pre>
421 1 Herve Ballans
422 6 Pablo Alingery
NB : lib64 does not exist on debian 8. so ln -s /usr/lib lib64
423 46 Pablo Alingery
424 1 Herve Ballans
h2. make sums KO  (Not applied in NetDrms_8.10)
425 6 Pablo Alingery
426 6 Pablo Alingery
Solution found : Take old lib libcrypto instead libssl
427 16 Herve Ballans
428 6 Pablo Alingery
dans le fichier base/sums/apps/Rules.mk ligne 51 
429 55 Herve Ballans
replace -lssl by -lcrypto LD flag
430 57 Herve Ballans
431 55 Herve Ballans
h2. NetDRMS replication
432 56 Herve Ballans
433 56 Herve Ballans
<pre>
434 60 Herve Ballans
# cd base/drms/replication/etc
435 60 Herve Ballans
# scp production@sdo:/usr/local/netdrms/install-config-files/ias.subscribe_list.cfg  .
436 104 Pablo Alingery
# scp production@sdo:/usr/local/netdrms/install-config-files/ias.repclient.cfg  .
437 104 Pablo Alingery
WRONG !!!!!
438 104 Pablo Alingery
To be done cp repclient.template.cfg into ias.subscribe_list.cfg because new field in config file can't appear 
439 104 Pablo Alingery
Correct that step in NetDrms doc 
440 104 Pablo Alingery
The existing ias.repclient.cfg can be used tough to fill params 
441 104 Pablo Alingery
442 56 Herve Ballans
443 104 Pablo Alingery
</pre>
444 6 Pablo Alingery
445 59 Herve Ballans
446 59 Herve Ballans
Create tmp dir in netdrms working directory (/usr/local/netdrms_current)
447 59 Herve Ballans
<pre>
448 59 Herve Ballans
# mkdir tmp
449 59 Herve Ballans
</pre>
450 61 Herve Ballans
451 61 Herve Ballans
Prevent from deleting files
452 61 Herve Ballans
<pre>
453 61 Herve Ballans
cd logs/SUM ; scp production@sdo:/usr/local/netdrms/install-config-files/sum_rm.cfg .
454 61 Herve Ballans
</pre>
455 117 Pablo Alingery
456 112 Herve Ballans
h2. JMD installation 
457 115 Pablo Alingery
458 115 Pablo Alingery
Donwnload new JMD package build by Niles Oien 2016-04-07 following thoses actions :
459 115 Pablo Alingery
460 116 Pablo Alingery
<pre>
461 116 Pablo Alingery
cd /urs/local
462 115 Pablo Alingery
463 115 Pablo Alingery
[oien@spsc-nso19-12 ~]$ ftp gong2.nso.edu
464 115 Pablo Alingery
Name (gong2.nso.edu:oien): anonymous
465 115 Pablo Alingery
Password: <---------------- use your email as the password
466 115 Pablo Alingery
ftp> cd outgoing/oien
467 115 Pablo Alingery
ftp> get pablo_jmd.tar.gz
468 115 Pablo Alingery
ftp> quit
469 115 Pablo Alingery
</pre>
470 115 Pablo Alingery
471 115 Pablo Alingery
Install new JMD package following thoses actions 
472 115 Pablo Alingery
473 115 Pablo Alingery
<pre>
474 1 Herve Ballans
[oien@spsc-nso19-12 ~]$ gunzip -vf pablo_jmd.tar.gz
475 1 Herve Ballans
pablo_jmd.tar.gz:      8.3% -- replaced with pablo_jmd.tar
476 116 Pablo Alingery
[oien@spsc-nso19-12 ~]$ tar xf pablo_jmd.tar
477 116 Pablo Alingery
[oien@spsc-nso19-12 ~]$ cd pablo_jmd
478 116 Pablo Alingery
[oien@spsc-nso19-12 pablo_jmd]$ less PABLO_README.txt
479 115 Pablo Alingery
cd ..
480 116 Pablo Alingery
mv jmd jmd_old
481 115 Pablo Alingery
mv pablo_jmd jmd 
482 112 Herve Ballans
</pre>
483 119 Pablo Alingery
484 112 Herve Ballans
h2. JMD Configuration
485 112 Herve Ballans
486 112 Herve Ballans
Configure webserver  to request jsoc_fetch
487 112 Herve Ballans
(following the mail from nilesoien@gmail.com)
488 113 Pablo Alingery
489 113 Pablo Alingery
config d 'apache2 fichier sdo3.ias.u-psud.fr 
490 113 Pablo Alingery
<pre>
491 113 Pablo Alingery
492 113 Pablo Alingery
<VirtualHost *:80>
493 113 Pablo Alingery
        ServerName sdo3.ias.u-psud.fr
494 113 Pablo Alingery
        ServerAdmin pablo.alingery@ias.u-psud.fr
495 113 Pablo Alingery
        #ErrorLog /var/log/apache2/error.log
496 113 Pablo Alingery
        DocumentRoot /var/www
497 113 Pablo Alingery
498 113 Pablo Alingery
        # Possible values include: debug, info, notice, warn, error, crit,
499 113 Pablo Alingery
        # alert, emerg.
500 113 Pablo Alingery
        LogLevel debug
501 113 Pablo Alingery
502 113 Pablo Alingery
        #CustomLog /var/log/apache2/VSO/access.log combined
503 113 Pablo Alingery
504 113 Pablo Alingery
        Alias /VSO/DRMS/cgi-bin/ "/home/production/netdrms-tools/scripts/cgi-bin/"
505 113 Pablo Alingery
506 113 Pablo Alingery
        <Location /VSO/DRMS/cgi-bin>
507 113 Pablo Alingery
                SetHandler perl-script
508 113 Pablo Alingery
                PerlResponseHandler ModPerl::Registry
509 113 Pablo Alingery
                PerlOptions +ParseHeaders
510 113 Pablo Alingery
                Options +ExecCGI
511 113 Pablo Alingery
                Order allow,deny
512 113 Pablo Alingery
                Allow from all
513 112 Herve Ballans
        </Location>
514 112 Herve Ballans
</VirtualHost>
515 112 Herve Ballans
516 112 Herve Ballans
</pre>
517 1 Herve Ballans
518 120 Pablo Alingery
519 1 Herve Ballans
Execution test cgi with URL :
520 112 Herve Ballans
http://sdo3.ias.u-psud.fr/ VSO/DRMS/cgi-bin/vso_jsoc_fetch.cgi
521 120 Pablo Alingery
522 112 Herve Ballans
expected result  :
523 112 Herve Ballans
<pre>
524 112 Herve Ballans
{
525 112 Herve Ballans
   "wait" : 0,
526 112 Herve Ballans
   "requestid" : "",
527 112 Herve Ballans
   "data" : {},
528 112 Herve Ballans
   "method" : "url_quick",
529 112 Herve Ballans
   "size" : 0,
530 112 Herve Ballans
   "errormsg" : "Empty query",
531 112 Herve Ballans
   "protocol" : "as-is",
532 112 Herve Ballans
   "status" : 1,
533 112 Herve Ballans
   "space_ratio" : 0.1,
534 112 Herve Ballans
   "load_ratio" : 0.066875,
535 112 Herve Ballans
   "dir" : "",
536 112 Herve Ballans
   "count" : 0
537 112 Herve Ballans
}
538 91 Herve Ballans
</pre>
539 91 Herve Ballans
540 91 Herve Ballans
h2. NetDRMS Start script
541 91 Herve Ballans
542 91 Herve Ballans
<pre>
543 91 Herve Ballans
sum_start.NetDRMS
544 91 Herve Ballans
</pre>
545 91 Herve Ballans
546 91 Herve Ballans
h2. Database repair (from Art)
547 91 Herve Ballans
548 91 Herve Ballans
On ias_sdo
549 91 Herve Ballans
550 91 Herve Ballans
<pre>
551 91 Herve Ballans
delete from admin.ns where name = 'lm_jps';
552 91 Herve Ballans
delete from admin.ns where name = 'aia_test';
553 91 Herve Ballans
</pre>
554 93 Pablo Alingery
555 93 Pablo Alingery
h2. Private key Public key generation 
556 93 Pablo Alingery
557 93 Pablo Alingery
<pre>
558 93 Pablo Alingery
ssh-keygen -t rsa
559 93 Pablo Alingery
</pre>
560 103 Herve Ballans
561 103 Herve Ballans
Not necessary cause we recover the ssh keys of the current server.
562 103 Herve Ballans
563 103 Herve Ballans
However, we have to retrieve the private key of production account on sdo3
564 103 Herve Ballans
565 103 Herve Ballans
From sdo :
566 103 Herve Ballans
<pre>
567 103 Herve Ballans
rsync -av id_rsa production@sdo3:/home/production/.ssh/
568 103 Herve Ballans
</pre>
569 94 Herve Ballans
570 94 Herve Ballans
h2. Node definition
571 94 Herve Ballans
572 94 Herve Ballans
file : /usr/local/netdrms_current/base/drms/replication/etc/ias.repclient.cfg
573 94 Herve Ballans
574 94 Herve Ballans
<pre>
575 1 Herve Ballans
node=IAStest
576 96 Herve Ballans
</pre>
577 96 Herve Ballans
578 96 Herve Ballans
h2. show_series and delete_series binaries
579 96 Herve Ballans
580 97 Pablo Alingery
Remark : these 2 sources are not compiled during installation
581 96 Herve Ballans
Issue : in netdrms_current 8.10 , do :
582 96 Herve Ballans
$ make delete_series
583 94 Herve Ballans
$ make show_series
584 98 Pablo Alingery
585 1 Herve Ballans
h2. SSH-HPN install 
586 98 Pablo Alingery
587 1 Herve Ballans
Intallation de openssh 6.3p1 car le dernier patch hpn dispo est 6.3hpn13.V6 
588 99 Herve Ballans
589 99 Herve Ballans
web site for open ssh : http://ftp2.fr.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-6.3p1.tar.gz
590 1 Herve Ballans
patch hpn : http://www.psc.edu/index.php/hpn-ssh-patches/hpn-14-kitchen-sink-patches/viewdownload/24-hpn-14-kitchen-sink-patches/102-openssh-6-3p1-hpnssh14v2-kitchen-sink-patch
591 99 Herve Ballans
592 99 Herve Ballans
<pre>
593 99 Herve Ballans
# tar -xzvf openssh-6.3p1.tar.gz
594 99 Herve Ballans
# gunzip openssh-6.3p1-hpnssh14v2.diff.gz
595 99 Herve Ballans
# cd openssh-6.3p1
596 99 Herve Ballans
# zcat ../openssh-6.3p1-hpnssh14v2.diff.gz | patch -p1
597 99 Herve Ballans
# ./configure --prefix=/usr/local/hpn-ssh --with-pam --with-md5-passwords --without-zlib-version-check --with-tcp-wrappers
598 99 Herve Ballans
# make
599 99 Herve Ballans
# make install
600 1 Herve Ballans
</pre>
601 99 Herve Ballans
602 99 Herve Ballans
Depuis sdo :
603 99 Herve Ballans
<pre>
604 99 Herve Ballans
# cd /usr/local/hpn-ssh/etc/
605 99 Herve Ballans
# rsync -av *key* netadm@sdo3:/home/netadm/
606 99 Herve Ballans
</pre>
607 99 Herve Ballans
608 99 Herve Ballans
Sur sdo3 :
609 1 Herve Ballans
<pre>
610 100 Herve Ballans
rsync -av /home/netadm/*key* /usr/local/hpn-ssh/etc/
611 100 Herve Ballans
</pre>
612 100 Herve Ballans
613 100 Herve Ballans
We have to configure the port number to 55000
614 100 Herve Ballans
<pre>
615 100 Herve Ballans
# vi ssh_config
616 100 Herve Ballans
</pre>
617 101 Herve Ballans
618 100 Herve Ballans
and add :
619 100 Herve Ballans
<pre>
620 100 Herve Ballans
#Port 22
621 100 Herve Ballans
Port 55000
622 1 Herve Ballans
</pre>
623 101 Herve Ballans
624 100 Herve Ballans
We configure also the server hpn (even we don't use it yet)
625 100 Herve Ballans
<pre>
626 100 Herve Ballans
# vi sshd_config
627 100 Herve Ballans
</pre>
628 100 Herve Ballans
629 100 Herve Ballans
and add :
630 100 Herve Ballans
<pre>
631 100 Herve Ballans
#Port 22
632 100 Herve Ballans
Port 55000
633 100 Herve Ballans
634 100 Herve Ballans
#PidFile /var/run/sshd.pid
635 100 Herve Ballans
PidFile /var/run/sshd.55000.pid
636 100 Herve Ballans
637 100 Herve Ballans
# allow the use of the none cipher
638 100 Herve Ballans
#NoneEnabled no
639 99 Herve Ballans
NoneEnabled yes
640 98 Pablo Alingery
</pre>
641 106 Pablo Alingery
642 105 Pablo Alingery
h2. Correction
643 105 Pablo Alingery
644 105 Pablo Alingery
h3. Modification du fichier ias.repclient.cfg
645 105 Pablo Alingery
646 105 Pablo Alingery
Copier le template existant repclient.template.cfg dans le répertoire [netdrms_current]/base/drms/replication/etc
647 105 Pablo Alingery
 
648 105 Pablo Alingery
<pre>
649 105 Pablo Alingery
production@sdo3:/usr/local/netdrms_current/base/drms/replication/etc$ cp repclient.template.cfg ias.repclient.cfg
650 105 Pablo Alingery
</pre>
651 1 Herve Ballans
652 106 Pablo Alingery
Nouveau / netdrms2.4 
653 105 Pablo Alingery
<pre>
654 105 Pablo Alingery
# Apps
655 106 Pablo Alingery
kRSPerl=<path to Perl binary to use when Perl scripts are executed>
656 105 Pablo Alingery
</pre>
657 107 Pablo Alingery
658 107 Pablo Alingery
h2. Subscription test 
659 107 Pablo Alingery
660 107 Pablo Alingery
h3. Librairies manquantes
661 107 Pablo Alingery
662 107 Pablo Alingery
Errors 
663 107 Pablo Alingery
<pre>
664 107 Pablo Alingery
Failure to apply SQL file 'IAStest.subscribe_series.sql' from server: ABORTING!
665 107 Pablo Alingery
Can't locate DBI.pm 
666 107 Pablo Alingery
.
667 107 Pablo Alingery
.
668 107 Pablo Alingery
.
669 107 Pablo Alingery
Failure to apply SQL file 'IAStest.subscribe_series.sql' from server: ABORTING!
670 107 Pablo Alingery
Can't locate DBD/Pg.pm
671 107 Pablo Alingery
</pre>
672 1 Herve Ballans
673 1 Herve Ballans
<pre>
674 1 Herve Ballans
root@sdo3:/usr/local/netdrms_8.10/base/drms/replication/subscribe_series# apt-get install libdbi-perl 
675 1 Herve Ballans
root@sdo3:/usr/local/netdrms_8.10/base/drms/replication/subscribe_series# apt-get install libdbd-pg-perl
676 1 Herve Ballans
</pre>
677 110 Herve Ballans
678 110 Herve Ballans
h3. Series souscrites
679 110 Herve Ballans
680 110 Herve Ballans
hmi.sharp_720s_nrt
681 110 Herve Ballans
hmi.mharp_720s_nrt
682 110 Herve Ballans
hmi.bharp_720s_nrt
683 110 Herve Ballans
684 110 Herve Ballans
<pre>
685 110 Herve Ballans
production@sdo3:~$ show_info -s hmi.sharp_720s_nrt
686 110 Herve Ballans
First Record: hmi.sharp_720s_nrt[476][2012.09.14_02:12:00_TAI], Recnum = 829707
687 110 Herve Ballans
Last Record:  hmi.sharp_720s_nrt[4943][2016.03.22_18:24:00_TAI], Recnum = 2015202
688 110 Herve Ballans
Last Recnum:  2015202
689 110 Herve Ballans
Has shadow table: no
690 107 Pablo Alingery
</pre>
691 111 Herve Ballans
692 111 Herve Ballans
h3. Lancement de jetty
693 111 Herve Ballans
694 111 Herve Ballans
<pre>
695 111 Herve Ballans
$ jetty.sh start
696 111 Herve Ballans
</pre>
697 111 Herve Ballans
698 111 Herve Ballans
699 111 Herve Ballans
700 108 Pablo Alingery
701 108 Pablo Alingery
h2. Test recuperation de meta data 
702 108 Pablo Alingery
703 108 Pablo Alingery
librairies manquantes 
704 108 Pablo Alingery
apt-get install libnet-ssh-perl
705 108 Pablo Alingery
apt-get install libstring-shellquote-perl
706 108 Pablo Alingery
707 152 Pablo Alingery
h2. TO BE DONE FURTHER
708 108 Pablo Alingery
709 107 Pablo Alingery
710 152 Pablo Alingery
%{color:red} configure sytem nbr de fichier ouvert en meme temps%
711 1 Herve Ballans
712 152 Pablo Alingery
%{color:red} configure sytem taille  buffer%
713 152 Pablo Alingery
714 155 Pablo Alingery
%{color:red} swap désactivé ? discussion Stephane et Gilles%
715 152 Pablo Alingery
716 80 Pablo Alingery
717 1 Herve Ballans
h3. Modification du fichir config.local pour la souscription au jsoc
718 1 Herve Ballans
719 1 Herve Ballans
720 1 Herve Ballans
<pre>
721 1 Herve Ballans
# NetDRMS users can request subdirectories from the Stanford proj directories 
722 1 Herve Ballans
# (e.g., JSOC/proj/util). These users will need to contact Stanford and obtain
723 1 Herve Ballans
# the source subdirectories desired. They will then place these subdirectories
724 1 Herve Ballans
# in the JSOC/proj directory of their NetDRMS release. To properly build 
725 1 Herve Ballans
# targets in these subdirectories, using the JSOC make system, the user needs
726 1 Herve Ballans
# to add entries to this configuration file - one entry for each subdirectory
727 1 Herve Ballans
# that contains source code to be compiled. Each entry is a space-separated pair
728 1 Herve Ballans
# of strings: the string "PROJDIR" followed by a subdirectory (of the proj 
729 1 Herve Ballans
# directory).  For example:
730 1 Herve Ballans
#
731 1 Herve Ballans
# PROJDIR     util/apps
732 1 Herve Ballans
# PROJDIR     util/libs
733 1 Herve Ballans
# 
734 1 Herve Ballans
# NOTE: It is not sufficient to list only a parent directory, like util. Source code
735 18 Herve Ballans
# in child directories will not automatically be compiled.
736 18 Herve Ballans
</pre>
737 18 Herve Ballans
738 18 Herve Ballans
h3. Python library for multi-threaded SUMS
739 1 Herve Ballans
740 1 Herve Ballans
Installation de la librairie python3.4m