Update Inforiver EDITable Container Instances (for 4.x users)

This guide details the required steps to update Inforiver Editable container instances within an Azure on-premises environment. Please follow these instructions carefully to ensure a smooth and successful update that incorporates the latest features.

1. Edit the CNI Configuration

  1. Open your Azure CLI window and run the following command:

az container export -g <resource group name> -n <container instance name > --file output_file
Launch Azure CLI and execute the command
  1. To download the output file, click on Manage files -> Download and enter the path of the output file. Click Download.

Download the output file
  1. Click on the output file to download it to your local system.

Download locally
  1. Now configure the below-listed container configurations in this file for Inforiver EDITable container deployment.

Containers Instance List - 1

The following are the set of containers required for the Inforiver deployment of Azure container instance - 1.

Note: Transition from Default Azure Domain to Custom Domain

When transitioning to a custom domain (e.g., https://webapp.inforiver.com) from the default Azure domain (e.g., https://webapp.azurewebsites.net), it is necessary to update the URL in the configuration settings of both the Azure App Service and the associated Container Instances. Specifically, ensure the environment variable ADMIN_PORTAL_URL is updated to reflect the new custom domain in both services.

i) Inforiver Cron

- name: inforiver-cron-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-cron:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 0.5

ii) Inforiver Audit

- name: inforiver-audit-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-audit:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 0.5

iii) MDM Worker

  - name: inforiver-mdm-worker-container
      properties:
        configMap:
          keyValuePairs: {}
        environmentVariables:
        - name: ADMIN_PORTAL_URL
          value: <Adminportal URL>
        - name: PRODUCT_BUILD
          value: mde
        image: turing.azurecr.io/turing-mdm-worker:<tag>
        ports: []
        resources:
          requests:
            cpu: 0.5
            memoryInGB: 2.0
        volumeMounts:
        - mountPath: <mountpath>
          name: infofile

iv) Inforiver Writeback Worker

- name: inforiver-writeback-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-writeback-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.5
          memoryInGB: 3.0

v) InfoBridge Writeback Worker

- name: inforiver-infobridge-writeback-worker
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      - name: PRODUCT_BUILD
        value: inforiver
      - name: LISTENER_MODE
        value: dataflow
      image: turing.azurecr.io/turing-writeback-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.5
          memoryInGB: 2.0
      volumeMounts:
      - mountPath: /mnt/azure
        name: infofile

vi) InfoBridge Transformation Worker

- name: inforiver-infobridge-transformation-worker
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      - name: PRODUCT_BUILD
        value: inforiver
      - name: SERVICE_NAME
        value: infobridgeTransformationWorker
      image: turing.azurecr.io/turing-datasource-integration-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 1
          memoryInGB: 2.0
      volumeMounts:
      - mountPath: /mnt/azure
        name: infofile

vii) InfoBridge Visual Worker

- name: inforiver-infobridge-visual-worker
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      - name: PRODUCT_BUILD
        value: inforiver
      - name: SERVICE_NAME
        value: infobridgeVisualWorker
      - name: VISUAL_WORKER_LISTENER_MODE
        value: dataFlowSourceIntegration
      - name: DEFAULT_MODE
        value: Non-Aks
      image: turing.azurecr.io/turing-visual-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.5
          memoryInGB: 2.0
      volumeMounts:
      - mountPath: /mnt/azure
        name: infofile

viii) InfoBridge Engine Worker

- name: inforiver-infobridge-engine-worker
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      - name: DUCKDB_MOUNT_PATH
        value: /mnt/azure
      - name: SERVER_MODE
        value: engine
      image: turing.azurecr.io/turing-infobridge-engine:<tag>
      ports:
        - port: 9006
          protocol: tcp
      resources:
        requests:
          cpu: 0.5
          memoryInGB: 4.0
      volumeMounts:
      - mountPath: /mnt/azure
        name: infofile

Containers Instance List - 2

The following are the set of containers required for the Inforiver EDITable deployment of Azure container instance - 2.

i) Inforiver Writeback Worker-1

- name: inforiver-writeback-worker-container-1
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-writeback-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.5
          memoryInGB: 3.0

ii) Inforiver Auto Writeback Worker

- name: inforiver-auto-writeback-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      - name: IS_AUTO_WRITEBACK_CONTAINER
        value: Y
      image: turing.azurecr.io/turing-writeback-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 2.0

iii) Inforiver Visual Worker

- name: inforiver-visual-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-visual-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 2.0

iv) Inforiver ETL Worker

- name: inforiver-etl-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-etl-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 1.0

v) Inforiver Comment Worker

- name: inforiver-comment-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      - name: SERVICE_NAME
        value: "commentWorker"
      image: turing.azurecr.io/turing-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 1.0

vi) Inforiver Worker

- name: inforiver-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 2.0

vii) EDITable Visual Worker

- name: editable-visual-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      - name: PRODUCT_BUILD
        value: mde
      image: turing.azurecr.io/turing-visual-worker:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 3.0

Containers Instance List - 3

The following are the set of containers required for the Inforiver EDITable deployment of Azure container instance - 3.

i) Inforiver Data Input Engine Worker

- name: inforiver-datainput-engine-worker-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <adminportal URL>
      - name: DUCKDB_MOUNT_PATH
        value: <mountpath>
      - name: PORT
        value: 9007
      - name: SERVER_MODE
        value: ccv               
      image: turing.azurecr.io/turing-infobridge-engine:<tag>
      ports:
        - port: 9007
          protocol: TCP
      resources:
        requests:
          cpu: 0.5
          memoryInGB: 2.0
      volumeMounts:
      - mountPath: <mountpath>
        name: infofile 

ii) Inforiver Orchestrator

- name: inforiver-orchestrator-container
    properties:
      configMap:
        keyValuePairs: {}
      environmentVariables:
      - name: ADMIN_PORTAL_URL
        value: <Admin Portal URL>
      image: turing.azurecr.io/turing-orchestrator:<tag>
      ports: []
      resources:
        requests:
          cpu: 0.25
          memoryInGB: 1.0
  1. After adding the container configurations to all instances, verify these steps again in each container's settings.

  2. Provide the username and password for pulling the image from the registry. You would have received this information during the initial deployment. If not, please get in touch with our support team.

  3. Remove the IP configuration section from the configuration file for the first two ACIs.

Remove the IP configuration
  1. Provide the storage account details in the volume section for the first and the third container instances only.

volumes:
  - azureFile:
      shareName: <filesharename>
      storageAccountName: <storage account name>
      storageAccountKey: <storage account primary key>
    name: <volumename>

Note: Storage account keys can be obtained from the respective storage account's Access keys section.

Storage account - access key
  1. Update the API version as specified below.

apiVersion: '2023-02-01-preview'

2. Create ACI

We need to separate the ACI into three container instances.

  • First, add the initial set of InforiverEditable containers from the containers instance list-1 into one configuration file and create the first ACI with a name, say inforivercontainerinstance1.

  • Then, add the second set of InforiverEditable containers from the containers instance list-2 in another configuration file and create the second ACI, say inforivercontainerinstance2.

  • Add the third set of InforiverEditable containers from the containers instance list-3 in a configuration file and create the third ACI, say inforivercontainerinstance3.

After adding all the containers in the configuration files, execute the following commands in the Azure CLI to create three separate container instances.

az container create -g <resource group name> -n <container instance name> --file output_file1
Create container instance 1
az container create -g <resource group name> -n <container instance name> --file output_file2
Create container instance 2
az container create -g <resource group name> -n <container instance name> --file output_file3
Create container instance 3

The CNI will start provisioning with the latest configuration.

Please wait until the status is complete.

After updating the ACIs to the latest configuration, update the app service's environment variables with the IP addresses of the first and third container instances. To do this,

  1. Navigate to Inforiver App Service > Settings > Environment Variables.

  2. Add the following environment variables as shown below and click Apply:

    • Name: IB_ENGINE_ENDPOINT Value: <IP address of the first container instance>:9007

    • Name: IR_ENGINE_ENDPOINT Value: <IP address of the third container instance>:9007

Update the app service's environment variables

By following the above steps, you will be able to successfully update your Inforiver EDITable container instances.

The update brings enhanced features and improvements that will benefit your Azure on-premises environment. Ensure all the above steps are completed carefully, and refer to the provided screenshots for additional assistance.

If you encounter any issues or need further assistance, please contact our technical support team here.

Last updated