Sensor and Gateway controllers are the components which manage Sensor and Gateway objects respectively.
Sensor and Gateway are Kubernetes Custom Resources. For more information on K8 CRDs visit here.
instance-id and the
namespace for the controller.
# The gateway-controller configmap includes configuration information for the gateway-controller apiVersion: v1 kind: ConfigMap metadata: name: gateway-controller-configmap data: config: | instanceID: argo-events # mandatory namespace: my-custom-namespace # optional
namespace: If you don't provide namespace, controller will watch all namespaces for gateway resource.
instanceID: it is used to map a gateway or sensor object to a controller.
e.g. when you create a gateway with label
gateways.argoproj.io/gateway-controller-instanceid: argo-events, a
controller with label
argo-events will process that gateway.
instanceID is used to horizontally scale controllers, so you won't end up overwhelming a single controller with large
number of gateways or sensors. Also keep in mind that
instanceID has nothing to do with namespace where you are
deploying controllers and gateways/sensors objects.