Skip to content

Advanced Mqtt Broker Config

Paymaun edited this page Jul 19, 2024 · 1 revision

Currently the IoT Ops mqtt broker configuration cannot be changed after deployment. To support this limitation starting in AIO CLI 0.6.0*, the az iot ops init command supports custom broker configurations via --broker-config-file.

The --broker-config-file should point to a file in JSON format with the desired broker configuration. Bicep input is not yet supported but is on the roadmap. The broker config file should contain the desired properties of the ARM microsoft.iotoperations/instances/brokers resource.

Example

{
    "advanced": {
      "encryptInternalTraffic": "Enabled"
    },
    "cardinality": {
      "backendChain": {
        "partitions": 2,
        "redundancyFactor": 2,
        "workers": 2
      },
      "frontend": {
        "replicas": 2,
        "workers": 2
      }
    },
    "diagnostics": {
      "logs": {
        "level": "info"
      },
      "metrics": {
        "prometheusPort": 9600
      },
      "selfCheck": {
        "intervalSeconds": 30,
        "mode": "Enabled",
        "timeoutSeconds": 15
      },
      "traces": {
        "cacheSizeMegabytes": 16,
        "mode": "Enabled",
        "selfTracing": {
          "intervalSeconds": 30,
          "mode": "Enabled"
        },
        "spanChannelCapacity": 1000
      }
    },
    "generateResourceLimits": {
      "cpu": "Disabled"
    },
    "memoryProfile": "Medium",
}
Clone this wiki locally