Deploy multiple instances

This guide provides an example how to deploy multiple instances of this component.

Requirements

  1. Prepare catalog by configuring 2 instances

    applications:
      - billing-collector-cloudservices as collector-exoscale-ch-gva-2 (1)
      - billing-collector-cloudservices as collector-cloudscale-rma-0 (2)
    parameters:
      appuio_cloud_reporting:
        namespace: 'appuio-cloud-reporting'
        database:
          name: 'reporting'
          host: 'reporting-db.appuio-reporting.svc'
          parameters: 'sslmode=disable'
          password: 'passw0rd'
          port: 5432
    1 Instance one with alias name collector-exoscale-ch-gva-2
    2 Instance two with alias name collector-cloudscale-rma-0
  2. Add relevant entries to Vault

    parent="clusters/kv/${TENANT_ID}/${CLUSTER_ID}"
    instance_1="collector-exoscale-ch-gva-2"
    instance_2="collector-cloudscale-rma-0"
    
    vault kv put "${parent}/billing-collector-cloudservices/${instance_1}" exoscale-key=<key-1> exoscale-secret=<secret-1> cluster-server=<server-url-1> cluster-token=<token-1>
    vault kv put "${parent}/billing-collector-cloudservices/${instance_2}" exoscale-key=<key-2> exoscale-secret=<secret-2> cluster-server=<server-url-2> cluster-token=<token-2>
  3. Compile and push the cluster catalog

  4. Wait until changes are applied

  5. Verify that the instances are up and configured correctly