Start a gateway runner.
The iagctl runner command starts a gateway runner instance that listens for service execution requests from a gateway server in the same cluster. The runner executes the request and returns the result to the core gateway server. Runners enable distributed gateway deployments by offloading automation execution to dedicated nodes.
You can link multiple gateway servers together if they share the following properties:
GATEWAY_STORE_BACKEND configuration variable to etcd or dynamodb.GATEWAY_APPLICATION_CLUSTER_ID value. All resources saved to a gateway database are linked to the cluster ID that was set at the time of creation. When multiple gateway instances read from the same shared database with the same cluster ID, they all have access to the same resources.For more information, see Choose a deployment architecture.
By default, a gateway server handles all requests including creating, deleting, and viewing resources as well as executing automations.
When you set the GATEWAY_SERVER_DISTRIBUTED_EXECUTION configuration variable to true, the core server continues to accept all requests but sends automation execution to runner nodes in the same cluster. The core server accepts requests and delegates execution to the runners.
You can scale out to as many runner nodes as needed. When a core server receives a service execution request, it round-robins across all runner nodes connected to the same etcd server with the same GATEWAY_APPLICATION_CLUSTER_ID. The runner returns the execution result to the core server, which passes it back to the requesting client.
To verify that your runner is correctly configured to receive requests, review the GATEWAY_RUNNER_* configuration variables in the gateway reference documentation.