@@ -135,12 +135,77 @@ kubectl apply -f <path-to-yaml-file>
135
135
136
136
## Configure MQTT broker advanced settings
137
137
138
- | Name | Type | Default Value | Description |
139
- | ------------------------| -------------------------| ---------------| ----------------------------------------------------------------|
140
- | clients | ClientConfig | | Configurations related to All Clients. |
141
- | encryptInternalTraffic | Encrypt | Enabled | The setting to enable or disable encryption of internal Traffic. |
142
- | internalCerts | CertManagerCertOptions | | Certificate rotation and private key configuration. |
143
- | tolerations | NodeTolerations | | The details of Tolerations that are applied to all Broker pods.|
138
+ The following table lists the properties of the broker advanced settings that include client configurations, encryption of internal traffic, certificate rotation, and node tolerations.
139
+
140
+ | Name | Type | Description |
141
+ | -------------------------------------| --------------------------| -----------------------------------------------------------------------------|
142
+ | clients | ClientConfig | Configurations related to all clients |
143
+ | clients.maxKeepAliveSeconds | ` integer ` | Upper bound of a client's keep alive, in seconds |
144
+ | clients.maxMessageExpirySeconds | ` integer ` | Upper bound of message expiry interval, in seconds |
145
+ | clients.maxReceiveMaximum | ` integer ` | Upper bound of receive maximum that a client can request in the CONNECT packet |
146
+ | clients.maxSessionExpirySeconds | ` integer ` | Upper bound of session expiry interval, in seconds |
147
+ | clients.subscriberQueueLimit | ` SubscriberQueueLimit ` | The limit on the number of queued messages for a subscriber |
148
+ | clients.subscriberQueueLimit.length | ` integer ` | The maximum length of the queue before messages are dropped |
149
+ | clients.subscriberQueueLimit.strategy | ` SubscriberMessageDropStrategy ` | The strategy for dropping messages from the queue |
150
+ | clients.subscriberQueueLimit.strategy.DropOldest | ` string ` | The oldest message is dropped |
151
+ | clients.subscriberQueueLimit.strategy.None | ` string ` | Messages are never dropped |
152
+ | encryptInternalTraffic | Encrypt | The setting to enable or disable encryption of internal traffic |
153
+ | encryptInternalTraffic.Disabled | ` string ` | Disable internal traffic encryption |
154
+ | encryptInternalTraffic.Enabled | ` string ` | Enable internal traffic encryption |
155
+ | internalCerts | CertManagerCertOptions | Certificate rotation and private key configuration |
156
+ | internalCerts.duration | ` string ` | Lifetime of certificate. Must be specified using a * Go* * time.Duration* format (h| m| s). For example, 240h for 240 hours and 45m for 45 minutes. |
157
+ | internalCerts.privateKey | ` CertManagerPrivateKey ` | Configuration of certificate private key |
158
+ | internalCerts.renewBefore | ` string ` | Duration before renewing a certificate. Must be specified using a * Go* * time.Duration* format (h| m| s). For example, 240h for 240 hours and 45m for 45 minutes. |
159
+ | internalCerts.privateKey.algorithm | PrivateKeyAlgorithm | Algorithm for private key |
160
+ | internalCerts.privateKey.rotationPolicy | PrivateKeyRotationPolicy | Cert-manager private key rotation policy |
161
+ | internalCerts.privateKey.algorithm.Ec256 | ` string ` | Algorithm - EC256 |
162
+ | internalCerts.privateKey.algorithm.Ec384 | ` string ` | Algorithm - EC384 |
163
+ | internalCerts.privateKey.algorithm.Ec521 | ` string ` | Algorithm - EC521 |
164
+ | internalCerts.privateKey.algorithm.Ed25519 | ` string ` | Algorithm - Ed25519|
165
+ | internalCerts.privateKey.algorithm.Rsa2048 | ` string ` | Algorithm - RSA2048|
166
+ | internalCerts.privateKey.algorithm.Rsa4096 | ` string ` | Algorithm - RSA4096|
167
+ | internalCerts.privateKey.algorithm.Rsa8192 | ` string ` | Algorithm - RSA8192|
168
+ | internalCerts.privateKey.rotationPolicy.Always | ` string ` | Always rotate key |
169
+ | internalCerts.privateKey.rotationPolicy.Never | ` string ` | Never rotate key |
170
+ | tolerations | NodeTolerations | The details of tolerations that are applied to all * Broker* pods |
171
+ | tolerations.effect | ` string ` | Toleration effect |
172
+ | tolerations.key | ` string ` | Toleration key |
173
+ | tolerations.operator | ` TolerationOperator ` | Toleration operator. For example, "Exists" or "Equal". |
174
+ | tolerations.value | ` string ` | Toleration value |
175
+ | tolerations.operator.Equal | ` string ` | Equal operator |
176
+ | tolerations.operator.Exists | ` string ` | Exists operator |
177
+
178
+ Here's an example of a * Broker* with advanced settings:
179
+
180
+ ``` yml
181
+ apiVersion : mq.iotoperations.azure.com/v1beta1
182
+ kind : Broker
183
+ metadata :
184
+ name : broker
185
+ namespace : azure-iot-operations
186
+ spec :
187
+ advanced :
188
+ clients :
189
+ maxSessionExpirySeconds : 282277
190
+ maxMessageExpirySeconds : 1622
191
+ subscriberQueueLimit :
192
+ length : 1000
193
+ strategy : DropOldest
194
+ maxReceiveMaximum : 15000
195
+ maxKeepAliveSeconds : 300
196
+ encryptInternalTraffic : Enabled
197
+ internalCerts :
198
+ duration : 240h
199
+ renewBefore : 45m
200
+ privateKey :
201
+ algorithm : Rsa2048
202
+ rotationPolicy : Always
203
+ tolerations :
204
+ effect : string
205
+ key : string
206
+ operator : Equal
207
+ value : string
208
+ ` ` `
144
209
145
210
## Configure MQTT broker diagnostic settings
146
211
@@ -170,7 +235,7 @@ If you don't specify settings, default values are used. The following table show
170
235
| `probeImage` | true | String |mcr.microsoft.com/azureiotoperations/diagnostics-probe:0.4.0-preview | Image used for self check |
171
236
172
237
173
- Here's an example of a Broker CR with metrics and tracing enabled and self-check disabled:
238
+ Here's an example of a * Broker* custom resource with metrics and tracing enabled and self-check disabled :
174
239
175
240
` ` ` yml
176
241
apiVersion: mq.iotoperations.azure.com/v1beta1
0 commit comments