Dual MATRIXX Engine Configuration (Single Sub-Domain)

A sample dual-MATRIXX Engine installation is comprised of one six-pod engine and one five-pod engine.

The following example Helm values file excerpt defines the topology for the two engines in a single sub-domain.

Note: In a two-engine deployment, the manager pod for engine 2 does not start engine 2 until engine 1 has started. While waiting, engine 2 polls the high-availiability (HA) status of engine 1 to determine if engine 1 has been started. If, after five minutes, engine 1 has not started, engine 2 starts.
global:
  image:
    repository:
      name: <YOUR_DOCKER_REPOSITORY>

  topology:
    domains:
    - subdomains:
      - id: 1
        engines:
        - id: 1
          external: false
          processing:
            replicaCount: 2
            tralb:
              replicaCount: 1
          publishing:
            replicaCount: 1
            tralb:
              replicaCount: 1
          checkpointing:
            replicaCount: 1
        - id: 2
          external: false
          processing:
            replicaCount: 1
            tralb:
              replicaCount: 1
          publishing:
            replicaCount: 1
            tralb:
              replicaCount: 1
          checkpointing:
            replicaCount: 1

# Sub Charts
engine: 
  enabled: true

MATRIXX Engine 1 (Active) Pods

The following pods for the first (active) engine are defined as Kubernetes StatefulSets in the matrixx namespace:

  • Two processing pods (proc-s1e1-0 and proc-s1e1-1).
  • One publishing pod (publ-s1e1-0).
  • One checkpointing pod (ckpt-s1e1-0).
  • TRA-PROC (tralb-proc-s1e1-0) associated with the processing pods.
  • TRA-PUB (tralb-publ-s1e1-0) associated with the publishing pod.

MATRIXX Engine 2 (Standby) Pods

The following pods for the second (standby) engine are defined as Kubernetes StatefulSets in the matrixx namespace:

  • One processing pod (proc-s1e2-0).
  • One publishing pod (publ-s1e2-0).
  • One checkpointing pod (ckpt-s1e2-0).
  • TRA-PROC (tralb-proc-s1e2-0) associated with the processing pod.
  • TRA-PUB (tralb-publ-s1e2-0) associated with the publishing pod.

Controller Pods

The following controller pods are also created in the matrixx namespace:

  • engine-controller.
  • Two mgr-engine pods, mgr-engine-s1e1 and mgr-engine-s1e2.