====== Qc2-OPE-RUN ======1)
Ok! Kvalobs Qc1 and Qc2 is built in the test environment. Qc2 is now integrated with the Qc1 environment by editing kv_ctl.conf
STEP 1: Update kv_ctl.conf
on dev-vm116 the relevant file is located: /metno/kvalobs/etc/kvalobs/kv_ctl.conf and shall be edited to include kvQc2:
#START_PROGS="kvQabased kvManagerd kvDataInputd kvServiced kvAgregated" START_PROGS="kvQabased kvManagerd kvDataInputd kvServiced kvQc2" #STOP_PROGS="kvQabased kvManagerd kvDataInputd kvServiced kvAgregated" STOP_PROGS="kvServiced kvDataInputd kvQabased kvManagerd kvQc2" TIMEOUT=70 KVUSER=kvalobs
Note the local kvalobs.conf (/metno/kvalobs/etc/kvalobs/kvalobs.conf) contains:
corba{ #Where is CORBA nameserver #nameserver="corbans.oslo.dnmi.no" nameserver="corbans.met.no" #Which path in CORBA nameserver shall we use for #this instance of kvalobs path="kv_dev-vm116" }
Illustrating a dedicated registration in the CORBA nameserver for the virtual machine kvalobs instance.
STEP 2: Remember that we are currently working with a local installation. The html log files for kvQabased are written to: /metno/kvalobs/var/log/kvalobs/html
The script called by the default cron job does not know this and needs to be modified by editing /usr/lib/kvalobs/bin/qabase_cron.sh and making it point to the correct log/html directory.
#! /bin/sh QABASELOGDIR=/metno/kvalobs/var/log/kvalobs/html ##QABASELOGDIR=$(kvconfig --localstatedir)/kvalobs/log/html #find $QABASELOGDIR -name '*.html' -type f -mtime +0 -exec rm -f {} \; find $QABASELOGDIR -xdev -name '*.html' -type f -mmin +360 -exec rm -f {} \; #find $QABASELOGDIR -name '*.html' -type f -exec rm -f {} \; find $QABASELOGDIR -xdev -type d -cmin +120 -exec rmdir --ignore-fail-on-non-empty {} \; # create nice map of existing log-files (output: html) ####find $QABASELOGDIR -name '*.html' -type f | /metno/kvalobs/bin/log_map > $QABASELOGDIR/log_map.html
Then run the corresponding standard cron jobs as described:
https://dokit.met.no/sysdok/kvalobs/installasjon#cron-jobber
Clean-up of the html log files is necessary to manage disk space.
STEP 3 Now run kvalobs as user kvalobs with kvQc2:
kvQc2 requires one additional environment variable to be set:
<code>
$ export KVALOBS=/metno/kvalobs
</code>
NOTE: The $KVALOBS historic configuration variable is no longer needed.
$ cd $HOME $ bin/kvstart
The following result is expected:
KVBIN=/metno/kvalobs/bin KVPID=/metno/kvalobs/var/kvalobs/run TIMEOUT=70 Starter kvalobs dette kan ta noe tid! Hvis det ikke skjer noe på MER enn 70 sekund bruk CTRL-C for å avbryte! Starter kvQabased ....Ok! Starter kvManagerd ....Ok! Starter kvDataInputd ....Ok! Starter kvServiced ....Ok! Starter kvQc2 ....Ok!
STEP 4 … and to stop:
$ cd $ bin/kvstop
The following result is expected:
listopt: 0 killallopt: 0 KVPID=/metno/kvalobs/var/kvalobs/run TIMEOUT=70 node: dev-vm116 Stopper kvalobs dette kan ta noe tid! Hvis det ikke skjer noe på MER enn 70 sekund bruk CTRL-C for å avbryte! kvServiced .....Stopped! kvDataInputd .....Stopped! kvQabased .....Stopped! kvManagerd .....Stopped! kvQc2 .....Stopped!
NB The timeout has been set to 70s since kvQc2 checks for new configuration files every minute and the rest of the time either sleeps or processes a given set of instructions.