Create a Swarm Cluster

A single Docker swarm cluster enables you to horizontally scale API Portal. Worker nodes can be added to or removed from the swarm, adjusting API Portal's overall capacity. Additional manager nodes provide fault tolerance, but reduce overall performance.
apip42
A single Docker swarm cluster enables you to horizontally scale API Portal. Worker nodes can be added to or removed from the swarm, adjusting API Portal's overall capacity. Additional manager nodes provide fault tolerance, but reduce overall performance.
A high availability (HA) solution includes multiple swarm clusters with a load balancer.
Configure and Deploy a Single Swarm Cluster
To create and deploy a swarm cluster:
  1. Deploy an image using the guidelines for a hardened image. 
  2. Copy the license file and portal package to the VM:
    scp apim-portal-<VERSION>.tar.gz portal@your-portal-host:/tmp
  3. Extract the portal package:
    sudo tar zxvf /tmp/apim-portal-<VERSION>.tar.gz -C /opt/
  4. Configure the portal:
    sudo ./config.sh
    APIM Portal configuration PORTAL_DOMAIN: example.com PORTAL_LICENSE_FILENAME: /opt/license.xml PORTAL_ENROLL_NOTIFICATION_EMAIL: youremail@yourdomain.com PORTAL_ENABLE_ANALYTICS: n Do you want to keep these settings? [Y/n]: Y Done.
  5. Edit 
    portal.conf
    The database configuration must point to the external database.
    PORTAL_DOMAIN=example.com PORTAL_LICENSE_FILENAME=/opt/LICENSE.xml PORTAL_ENROLL_NOTIFICATION_EMAIL=noreply@mail.example.com PORTAL_ENABLE_ANALYTICS=y PORTAL_DATABASE_TYPE=mysql PORTAL_DATABASE_HOST=mydb.com PORTAL_DATABASE_PORT=3306 PORTAL_DATABASE_USERNAME=admin PORTAL_DATABASE_PASSWORD=password
  6. Start the portal and wait for the docker containers to be downloaded:
    sudo ./portal.sh
A single portal swarm is deployed.
You can deploy multiple portal swarms. However, they must have the same configuration, and the same certificates and keys. Also, with analytics enabled, data reported will not be the aggregate of all swarms, but rather per-swarm. With an external JARVIS implementation, aggregate analytics can be reported.
Single Cluster Diagram
singleCluster
singleCluster