KubeMQ
ConnectorsAMQP 1.0Reference

Configuration

Field-by-field reference for the KubeMQ AMQP 1.0 connector's 14 settings, validation rules, and TOML/env/Docker examples.

Field-by-field reference for the 14 settings under Connectors.Amqp10.*, their validation rules, and the equivalent TOML, environment variable, and Docker forms. For the enable/disable flow and the DefaultPattern bare-address fallback, see Configuration concepts.

Configuration fields

All fields live under [Connectors.Amqp10]. Defaults are taken verbatim from the server's Amqp10Config struct.

Prop

Type

Validation rules

Validation is skipped entirely when Enable is false — a disabled connector is always valid regardless of the other fields. When the connector is enabled, the server rejects an invalid config at startup with these rules:

FieldRule
Port / TlsPorteach in 0..65535. If both are 0, validation fails — at least one listener must be enabled.
MaxFrameSize>= 512
MaxMessageSize> 0
SessionMax1..65535
MaxLinksPerSession>= 1
MaxConnections>= 0 (0 = unlimited)
IdleTimeoutSeconds>= 0 (0 = disabled)
DefaultPatternexactly one of queues, events, events-store, commands, queries
GetBatchSize1..1024
MaxUnsettledPerLink>= 1
DefaultRpcTimeoutSeconds>= 1
RpcMaxPending>= 1

Port and TlsPort are shared with the RabbitMQ (AMQP 0-9-1) connector. Setting Port equal to the 0-9-1 port is intentionally accepted — the validation step does not cross-check the two, and the amqpmux dedupes the bind so both dialects coexist on one listener. See Architecture for the dispatch detail. The TLS listener binds only when the server-global Security block is configured.

Configuring the connector

The same settings can be supplied through a TOML config file, environment variables, or docker run flags. Each environment variable is derived from its dotted config key by snake-casing the field, stripping the . separators, and upper-casing — so Connectors.Amqp10.TlsPort becomes CONNECTORS_AMQP10_TLS_PORT.

config.toml
[Connectors.Amqp10]
  Enable = true
  Port = 5672
  TlsPort = 5671
  MaxFrameSize = 131072
  MaxMessageSize = 104857600
  SessionMax = 256
  MaxLinksPerSession = 256
  MaxConnections = 1000
  IdleTimeoutSeconds = 120
  DefaultPattern = "queues"
  GetBatchSize = 32
  MaxUnsettledPerLink = 1024
  DefaultRpcTimeoutSeconds = 30
  RpcMaxPending = 512
amqp10.env
CONNECTORS_AMQP10_ENABLE=true
CONNECTORS_AMQP10_PORT=5672
CONNECTORS_AMQP10_TLS_PORT=5671
CONNECTORS_AMQP10_MAX_FRAME_SIZE=131072
CONNECTORS_AMQP10_MAX_MESSAGE_SIZE=104857600
CONNECTORS_AMQP10_SESSION_MAX=256
CONNECTORS_AMQP10_MAX_LINKS_PER_SESSION=256
CONNECTORS_AMQP10_MAX_CONNECTIONS=1000
CONNECTORS_AMQP10_IDLE_TIMEOUT_SECONDS=120
CONNECTORS_AMQP10_DEFAULT_PATTERN=queues
CONNECTORS_AMQP10_GET_BATCH_SIZE=32
CONNECTORS_AMQP10_MAX_UNSETTLED_PER_LINK=1024
CONNECTORS_AMQP10_DEFAULT_RPC_TIMEOUT_SECONDS=30
CONNECTORS_AMQP10_RPC_MAX_PENDING=512
docker run -d \  --name kubemq \  -p 5672:5672 \  -p 5671:5671 \  -p 50000:50000 \  -e KUBEMQ_TOKEN=YOUR_LICENSE_KEY \  -e CONNECTORS_AMQP10_ENABLE=true \  -e CONNECTORS_AMQP10_MAX_CONNECTIONS=5000 \  -e CONNECTORS_AMQP10_DEFAULT_RPC_TIMEOUT_SECONDS=60 \  europe-docker.pkg.dev/kubemq/images/kubemq:next

The Docker example includes CONNECTORS_AMQP10_ENABLE=true — without it the connector stays disabled and port 5672 is not bound. Set CONNECTORS_AMQP10_ENABLE=false only when you want to turn the connector off.

Was this page helpful?

On this page