Skip to main content
Version: 1.3.2

Annotation Migrator

What is the purpose of this Helm chart

This product provides a jadice flow stack for migrating annotations to a different format. In the default product the following migration paths are supported:

  • P8 to ImagePlus
  • IS to CM8
  • CM8 to Jadice
  • CM7 to XFDF

Other mappings or extensions of existing mappings can be added. For details see worker-anno-migrator.

System Requirements

The application jadice flow annotation migrator is available as a Helm chart for deployment into a Kubernetes environment.

Kubernetes and Helm:

  • CNCF Certified K8s with version 1.14+
  • Helm 3.1.0+

Hardware Requirements:

  • 2 CPU and 4 GB RAM for the jadice flow controller
  • 2 CPU and 2 GB RAM for the controller UI (vaadin based UI might use more memory under heavy user load, which is not expected in the general use case)
  • 2 CPU and 4 GB RAM for each worker pod in general - some workers like optical character recognition or certain image conversions might utilize a lot CPU resources depending on the input documents (also required in single core CPU area). Check the worker description if a specific recommendation is available.

Environment Requirements:

  • Storage (The default storage for storing job results is Eureka. It's also possible to enabling persistence and configuring other storage backends like S3 (e.g. Amazon S3 or MinIO server))

Where to get

After you received the credentials (technical user) for accessing our Helm Chart and Container Registry, you can log in with these credentials at https://artifacts.jadice.com and change your password.

To add a Helm repository to your repositories you can then execute the following commands:

$ helm repo add levigo https://artifacts.jadice.com/repository/helm-charts/ --username <username>
Password: <enter your password>

When you see the password prompt please enter your password.

You now have access to the Helm chart jf-anno-migrator in your helm cli.

There is also the option to download the Helm Chart with the command:

$ helm pull levigo/jf-anno-migrator

Installation

Prerequisites

The application requires a set of authentication credentials for a successful start-up. These required parameters are:

  • the accessToken used by the controller for authentication to the workers
  • the S3 storage credentials, if S3 is used
  • the container registry credentials for the jadice flow images
  • the credentials for the runtime database of the controller

A minimal values.yaml with these required parameters would look something like this:

required-values.yaml

secrets:
s3:
bucket: jf-anno-migrator-test
endpoint: https://h-solstor.levigo.cloud:9000
accessKey: <YOUR-ACCESS-KEY>
secretKey: <YOUR-SECRET-KEY>
imageRegistry:
server: registry.jadice.com
username: <YOUR-REGISTRY-USERNAME>
password: <YOUR-REGISTRY-PASSWORD>
accessToken: <YOUR-ACCESS-TOKEN>
database:
username: <YOUR-DB-USERNAME>
password: <YOUR-DB-PASSWORD>

Installing the Chart

To install the chart from the levigo helm repository with the release name `my-release`:

$ helm repo add levigo https://artifacts.jadice.com/repository/helm-charts/ --username <username>
Password: <enter your password>
$ helm install --values required-values.yaml my-release levigo/jf-anno-migrator

The command deploys _jadice flow anno-migrator _on the Kubernetes cluster in the default configuration. The next sections will show you how to configure the installation. In addition to this the configuration section lists the parameters that can be configured during installation.

Uninstalling the Chart

To uninstall the deployment with the release name `my-release` :

$ helm delete my-release

The command removes all the Kubernetes components associated with the chart and deletes the release.

Configuration

Connect Database

Configure the runtime database. The default H2 database is not recommended in production!

Recommended database types:

  • MariaDB
  • PostgreSQL
  • MySQL

You can connect the controller to your database by setting the value jf-controller.datasource.jdbcURL.
Example for MariaDB: jdbc:mariadb://my-mariadb-server/jadice-flow-db

Troubleshooting

If one or more of the pods stay pending, it could mean that it can not be scheduled onto a node. This can happen if there are not enough resources available. You can check for messages from the scheduler with:

kubectl describe pods <POD_NAME>

If the output of the described command does not provide enough information, you can tail the logs of a pod with this command:

Included Workers

More Information

For more information you check out the Readme.md included in the Helm Chart. You can find the Readme.md in the tgz file that can be downloaded with the command:

helm pull levigo/jf-anno-migrator