KubeMQ
ConnectorsAWS (SQS & SNS)Reference

Configuration

Reference table of the ten CONNECTORS_AWS_* environment variables for the KubeMQ AWS connector, with TOML, Env, and Docker equivalents.

Field-by-field reference for the KubeMQ AWS connector's Connectors.Aws config block. See Configuration concepts for why the connector is opt-in and how the two credential postures work.

Configuration fields

All values below are verified against the connector source (AwsConfig struct and defaultAwsConfig). Compound camelCase fields are snake-split in their env form — e.g. MaxInflightPerQueueCONNECTORS_AWS_MAX_INFLIGHT_PER_QUEUE, AccountIdCONNECTORS_AWS_ACCOUNT_ID.

Env varDefaultTypeMeaning / validation
CONNECTORS_AWS_ENABLEfalseboolOpt-in. true opens the listener on Port; false skips the connector entirely.
CONNECTORS_AWS_PORT"4566"stringThe listener port (the LocalStack convention). Must differ from any enabled Grpc/Rest/Http port. A single TCP listener; POST / and GET / both dispatch.
CONNECTORS_AWS_REGION"kubemq"stringThe ARN region segment; informational only. NOT enforced in SigV4 — any region in the credential scope signs successfully.
CONNECTORS_AWS_ACCOUNT_ID"000000000000"stringA single configurable 12-digit value (validated). There is no cross-account support; QueueOwnerAWSAccountId is accepted and ignored.
CONNECTORS_AWS_ADVERTISED_URL""stringOverrides the host in returned queue URLs; must be scheme://host[:port]. When empty, the request Host is used. Resolution parses the path only, so stale hosts in saved URLs still work.
CONNECTORS_AWS_CREDENTIALS_DATA""stringA JSON (optionally base64-encoded) array of static SigV4 credentials — the env/operator path for a secured connector. When set, SigV4 is fully verified.
CONNECTORS_AWS_MAX_INFLIGHT_PER_QUEUE20000intPer-queue / per-node cap on received-but-not-deleted (in-flight) messages; exceeding it returns OverLimit.
CONNECTORS_AWS_MAX_CONCURRENT_POLLS1024intThe parked long-poll slot pool. When exhausted, a ReceiveMessage degrades to a short poll rather than erroring.
CONNECTORS_AWS_READ_TIMEOUT60intPer-action context deadline in seconds for synchronous ops. ReceiveMessage is exempt and gets at least a ~25 s budget.
CONNECTORS_AWS_BODY_LIMIT"2M"stringRequest body size cap.

The AwsConfig struct has 11 fields, of which 10 are env-bound. The 11th, the structured Credentials array, has no env binding — it is file/structured-config only. CONNECTORS_AWS_CREDENTIALS_DATA is the env path for static credentials, and merges with any file-only Credentials (Data wins on duplicates).

Configuring the connector

The same settings can be supplied through a TOML config file, environment variables, or docker run flags. Every environment variable uses the CONNECTORS_AWS_ prefix (with the underscore between CONNECTORS and AWS).

config.toml
[Connectors.Aws]
  Enable = true
  Port = "4566"
  Region = "kubemq"
  AccountId = "000000000000"
  AdvertisedUrl = ""
  CredentialsData = ""
  MaxInflightPerQueue = 20000
  MaxConcurrentPolls = 1024
  ReadTimeout = 60
  BodyLimit = "2M"
aws.env
CONNECTORS_AWS_ENABLE=true
CONNECTORS_AWS_PORT=4566
CONNECTORS_AWS_REGION=kubemq
CONNECTORS_AWS_ACCOUNT_ID=000000000000
CONNECTORS_AWS_ADVERTISED_URL=
CONNECTORS_AWS_CREDENTIALS_DATA=
CONNECTORS_AWS_MAX_INFLIGHT_PER_QUEUE=20000
CONNECTORS_AWS_MAX_CONCURRENT_POLLS=1024
CONNECTORS_AWS_READ_TIMEOUT=60
CONNECTORS_AWS_BODY_LIMIT=2M
docker run -d \  --name kubemq \  -p 4566:4566 \  -p 50000:50000 \  -e KUBEMQ_TOKEN=YOUR_LICENSE_KEY \  -e CONNECTORS_AWS_ENABLE=true \  -e CONNECTORS_AWS_ADVERTISED_URL=http://kubemq.example.com:4566 \  -e CONNECTORS_AWS_MAX_INFLIGHT_PER_QUEUE=50000 \  europe-docker.pkg.dev/kubemq/images/kubemq:next

Because the connector is opt-in (as are all six wire-protocol connectors), the Docker example must include -e CONNECTORS_AWS_ENABLE=true — without it, no AWS listener binds. Set =false to turn it off again.

Was this page helpful?

On this page