Skip to content

Deploying Vollt TAP services for WFAU

stvoutsin edited this page Nov 30, 2023 · 3 revisions

Instructions for how to deploy the Vollt TAP service for WFAU

The instructions below assume docker & docker-compose are installed on the machine

Note: The instructions show how to create an instance of the TAP service for the OSA archive. Repeat with the appropriate modifications for the other 3 (VSA/WSA/SSA)

Clone vollt-docker repo

 git clone https://github.com/stvoutsin/vollt-docker osa
 cd osa

Fetch metadata file

wget https://github.com/wfau/metadata/raw/master/tap-tables/tables-osa.xml
mv tables-osa.xml config/tables.xml

Setup configuration (config/tap.properties)

database_access = jdbc
jdbc_url=jdbc:jtds:sqlserver://../TAP_SCHEMA_OSA
jdbc_driver = net.sourceforge.jtds.jdbc.Driver
db_username = ..
db_password = ..
sql_translator = sqlserver
metadata = xml
metadata_file = WEB-INF/tables.xml
file_manager = local
file_root_path = /tmp/results

Set the port we want to export to (docker-compose.yml)

version: '3'
services:
  tomcat:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8082:8080"

Run the TAP service

docker-compose up -d

Monitor TAP Service

docker ps
CONTAINER ID   IMAGE        COMMAND             CREATED          STATUS          PORTS                                       NAMES
942b4455be17   osa-tomcat   "catalina.sh run"   2 days ago       Up 2 days       0.0.0.0:8082->8080/tcp, :::8082->8080/tcp   osa-tomcat-1

Stop Service

docker-compose down

Info on current services:

Currently we have 4 TAP services running on the wfau-vo VM. These are running as docker containers, deployed as described above:

sudo docker ps
CONTAINER ID   IMAGE        COMMAND             CREATED          STATUS          PORTS                                       NAMES
f177a438c5bb   ssa-tomcat   "catalina.sh run"   35 minutes ago   Up 35 minutes   0.0.0.0:8083->8080/tcp, :::8083->8080/tcp   ssa-tomcat-1
597830b63917   wsa-tomcat   "catalina.sh run"   35 minutes ago   Up 35 minutes   0.0.0.0:8085->8080/tcp, :::8085->8080/tcp   wsa-tomcat-1
5a8e735c84e4   vsa-tomcat   "catalina.sh run"   35 minutes ago   Up 35 minutes   0.0.0.0:8084->8080/tcp, :::8084->8080/tcp   vsa-tomcat-1
942b4455be17   osa-tomcat   "catalina.sh run"   2 days ago       Up 2 days       0.0.0.0:8082->8080/tcp, :::8082->8080/tcp   osa-tomcat-1

We are also monitoring them via a cron job that sends a query to each service once per hour. This is running via the library: https://github.com/stvoutsin/tapvalidator on the VM "Ulov" on the Astrotrop machines

Deploying on Somerville (Openstack)

Steps required for TAP service:

  • Create VM on Openstack, with port 80 open.
  • Deploy TAP services as above
  • Setup NGINX proxy to redirect from port 80 to internal port for each of the TAP Services

Steps required for Database: