共用方式為


Microsoft.IoTOperations 實例/訊息代理程式

Bicep 資源定義

實體/訊息代理程式資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.IoTOperations/instances/brokers 資源,請將下列 Bicep 新增至範本。

resource symbolicname 'Microsoft.IoTOperations/instances/brokers@2024-11-01' = {
  parent: resourceSymbolicName
  extendedLocation: {
    name: 'string'
    type: 'string'
  }
  name: 'string'
  properties: {
    advanced: {
      clients: {
        maxKeepAliveSeconds: int
        maxMessageExpirySeconds: int
        maxPacketSizeBytes: int
        maxReceiveMaximum: int
        maxSessionExpirySeconds: int
        subscriberQueueLimit: {
          length: int
          strategy: 'string'
        }
      }
      encryptInternalTraffic: 'string'
      internalCerts: {
        duration: 'string'
        privateKey: {
          algorithm: 'string'
          rotationPolicy: 'string'
        }
        renewBefore: 'string'
      }
    }
    cardinality: {
      backendChain: {
        partitions: int
        redundancyFactor: int
        workers: int
      }
      frontend: {
        replicas: int
        workers: int
      }
    }
    diagnostics: {
      logs: {
        level: 'string'
      }
      metrics: {
        prometheusPort: int
      }
      selfCheck: {
        intervalSeconds: int
        mode: 'string'
        timeoutSeconds: int
      }
      traces: {
        cacheSizeMegabytes: int
        mode: 'string'
        selfTracing: {
          intervalSeconds: int
          mode: 'string'
        }
        spanChannelCapacity: int
      }
    }
    diskBackedMessageBuffer: {
      ephemeralVolumeClaimSpec: {
        accessModes: [
          'string'
        ]
        dataSource: {
          apiGroup: 'string'
          kind: 'string'
          name: 'string'
        }
        dataSourceRef: {
          apiGroup: 'string'
          kind: 'string'
          name: 'string'
          namespace: 'string'
        }
        resources: {
          limits: {
            {customized property}: 'string'
          }
          requests: {
            {customized property}: 'string'
          }
        }
        selector: {
          matchExpressions: [
            {
              key: 'string'
              operator: 'string'
              values: [
                'string'
              ]
            }
          ]
          matchLabels: {
            {customized property}: 'string'
          }
        }
        storageClassName: 'string'
        volumeMode: 'string'
        volumeName: 'string'
      }
      maxSize: 'string'
      persistentVolumeClaimSpec: {
        accessModes: [
          'string'
        ]
        dataSource: {
          apiGroup: 'string'
          kind: 'string'
          name: 'string'
        }
        dataSourceRef: {
          apiGroup: 'string'
          kind: 'string'
          name: 'string'
          namespace: 'string'
        }
        resources: {
          limits: {
            {customized property}: 'string'
          }
          requests: {
            {customized property}: 'string'
          }
        }
        selector: {
          matchExpressions: [
            {
              key: 'string'
              operator: 'string'
              values: [
                'string'
              ]
            }
          ]
          matchLabels: {
            {customized property}: 'string'
          }
        }
        storageClassName: 'string'
        volumeMode: 'string'
        volumeName: 'string'
      }
    }
    generateResourceLimits: {
      cpu: 'string'
    }
    memoryProfile: 'string'
  }
}

屬性值

AdvancedSettings

名字 描述 價值
客戶 與所有客戶端相關的組態。 ClientConfig
encryptInternalTraffic 啟用或停用內部流量加密的設定。 'Disabled'
'Enabled'
internalCerts 憑證輪替和私鑰組態。 CertManagerCertOptions

BackendChain

名字 描述 價值
分區 所需的實體後端分割區數目。 int

約束:
最小值 = 1
最大值 = 16 (必要)
redundancyFactor 實體分割區中所需的後端復本 (Pods) 數目。 int

約束:
最小值 = 1
最大值 = 5(必要)
工人 每個復本的邏輯後端背景工作角色數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16

BrokerDiagnostics

名字 描述 價值
原木 資源的診斷記錄設定。 DiagnosticsLogs
指標 資源的計量設定。 計量
selfCheck 自我檢查屬性。 SelfCheck
痕跡 追蹤屬性。 追蹤

BrokerProperties

名字 描述 價值
高深 Broker 的進階設定。 AdvancedSettings
基數 Broker 的基數詳細數據。 基數
診斷 規格會定義 Broker 診斷設定所需的身分識別。 BrokerDiagnostics
diskBackedMessageBuffer 磁碟支援的訊息緩衝區設定。 DiskBackedMessageBuffer
generateResourceLimits 此設定可控制是否要求 Kubernetes CPU 資源限制。 增加複本或背景工作角色的數目會按比例增加所要求的CPU資源數量。 如果啟用此設定且 CPU 資源不足,則會發出錯誤。 GenerateResourceLimits
memoryProfile Broker 的記憶體配置檔。 'High'
'Low'
'Medium'
'Tiny'

基數

名字 描述 價值
backendChain 後端訊息代理程式所需的屬性 BackendChain (必要)
前端 前端所需的屬性 前端 (必要)

CertManagerCertOptions

名字 描述 價值
期間 憑證的存留期。 必須使用 Go 時間指定。持續時間格式 (h m s). 例如,240小時240小時45米45分鐘。 字串 (必要)
privateKey 設定憑證私鑰。 CertManagerPrivateKey (必要)
renewBefore 何時開始更新憑證。 必須使用 Go 時間指定。持續時間格式 (h m s). 例如,240小時240小時45米45分鐘。 字串 (必要)

CertManagerPrivateKey

名字 描述 價值
演算法 私鑰的演算法。 'Ec256'
'Ec384'
'Ec521'
'Ed25519'
'Rsa2048'
'Rsa4096'
'Rsa8192' (必要)
rotationPolicy cert-manager 私鑰 rotationPolicy。 'Always'
'Never' (必要)

ClientConfig

名字 描述 價值
maxKeepAliveSeconds 用戶端的 Keep Alive 上限,以秒為單位。 int

約束:
最小值 = 0
最大值 = 65535
maxMessageExpirySeconds 訊息到期間隔的上限,以秒為單位。 int

約束:
最小值 = 1
最大值 = 4294967295
maxPacketSizeBytes 封包的訊息大小上限,以位元組為單位。 int

約束:
最小值 = 1
最大值 = 268435456
maxReceiveMaximum 用戶端可以在 CONNECT 封包中要求的最大接收上限。 int

約束:
最小值 = 1
最大值 = 65535
maxSessionExpirySeconds 會話到期間隔的上限,以秒為單位。 int

約束:
最小值 = 1
最大值 = 4294967295
subscriberQueueLimit 訂閱者佇列訊息數目的限制。 SubscriberQueueLimit

DiagnosticsLogs

名字 描述 價值
水準 記錄層級。 範例 - 'debug'、'info'、'warn'、'error'、'trace'。 字串

DiskBackedMessageBuffer

名字 描述 價值
ephemeralVolumeClaimSpec 使用指定的永續性磁碟區宣告範本來掛接訊息緩衝區的「一般暫時磁碟區」。 如需詳細資訊,請參閱 <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes>。 VolumeClaimSpec
maxSize 磁碟上訊息緩衝區的大小上限。 如果使用其中一個暫時性VolumeClaimSpec 或persistentVolumeClaimSpec 指定PVClaim範本,則此大小會當做該範本的要求和限制大小使用。 如果未指定 ephemeralVolumeClaimSpec 或 persistentVolumeClaimSpec,則會以這個大小作為其限制掛接 emptyDir 磁碟區。 如需詳細資訊,請參閱 <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir>。 字串

約束:
模式 = ^[0-9]+[KMGTPE]$ (必要)
persistentVolumeClaimSpec 使用指定的永續性磁碟區宣告範本,為訊息緩衝區掛接永續性磁碟區。 VolumeClaimSpec

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串 (必要)
類型 ExtendedLocation 的類型。 'CustomLocation' (必要)

前端

名字 描述 價值
副本 所需的前端實例數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16 (必要)
工人 每個實例的邏輯前端背景工作角色數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16

GenerateResourceLimits

名字 描述 價值
中央處理器 啟用/停用CPU資源限制的切換。 'Disabled'
'Enabled'

KubernetesReference

名字 描述 價值
apiGroup APIGroup 是所參考資源的群組。 如果未指定 APIGroup,指定的 Kind 必須位於核心 API 群組中。 對於任何其他第三方類型,需要 APIGroup。 字串
種類是所參考的資源類型 字串 (必要)
名字 Name 是所參考的資源名稱 字串 (必要)
Namespace 命名空間是所參考資源的命名空間。 資源具有命名空間時,需要此欄位。 字串

LocalKubernetesReference

名字 描述 價值
apiGroup APIGroup 是所參考資源的群組。 如果未指定 APIGroup,指定的 Kind 必須位於核心 API 群組中。 對於任何其他第三方類型,需要 APIGroup。 字串
種類是所參考的資源類型 字串 (必要)
名字 Name 是所參考的資源名稱 字串 (必要)

指標

名字 描述 價值
prometheusPort 要公開計量的 prometheus 埠。 int

約束:
最小值 = 0
最大值 = 65535

Microsoft.IoTOperations/instances/brokers

名字 描述 價值
extendedLocation 資源的邊緣位置。 ExtendedLocation (必要)
名字 資源名稱 字串

約束:
最小長度 = 3
最大長度 = 63
模式 = ^[a-z0-9][a-z0-9-]*[a-z0-9]$ (必要)
父母 在 Bicep 中,您可以指定子資源的父資源。 只有在父資源外部宣告子資源時,才需要新增這個屬性。

如需詳細資訊,請參閱 父資源外部的子資源
類型的資源符號名稱:實例
性能 此資源的資源特定屬性。 BrokerProperties

SelfCheck

名字 描述 價值
intervalSeconds 自我檢查間隔。 int

約束:
最小值 = 30
最大值 = 300
模式 啟用/停用自我檢查的切換。 'Disabled'
'Enabled'
timeoutSeconds 自我檢查的逾時。 int

約束:
最小值 = 5
最大值 = 120

SelfTracing

名字 描述 價值
intervalSeconds 自我追蹤間隔。 int

約束:
最小值 = 1
最大值 = 300
模式 啟用/停用自我追蹤的切換。 'Disabled'
'Enabled'

SubscriberQueueLimit

名字 描述 價值
長度 訊息開始卸除之前佇列的最大長度。 int

約束:
最小值 = 1
策略 用來從佇列卸除訊息的策略。 'DropOldest'
'None'

痕跡

名字 描述 價值
cacheSizeMegabytes 快取大小以 MB 為單位。 int

約束:
最小值 = 1
最大值 = 128
模式 啟用/停用追蹤的切換。 'Disabled'
'Enabled'
selfTracing 自我追蹤屬性。 SelfTracing
spanChannelCapacity 範圍通道容量。 int

約束:
最小值 = 1000
最大值 = 100000

VolumeClaimResourceRequirements

名字 描述 價值
限制 限制描述允許的計算資源數量上限。 詳細資訊:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsLimits
請求 要求描述所需的計算資源數量下限。 如果容器省略 Requests,則會在明確指定時預設為 [限制],否則會設定為實作定義的值。 詳細資訊:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsRequests

VolumeClaimResourceRequirementsLimits

名字 描述 價值

VolumeClaimResourceRequirementsRequests

名字 描述 價值

VolumeClaimSpec

名字 描述 價值
accessModes AccessModes 包含磁碟區應該擁有的所需存取模式。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 string[]
dataSource 此欄位可用來指定下列其中一項:* 現有的 VolumeSnapshot 物件 (snapshot.storage.k8s.io/VolumeSnapshot) * 現有的PVClaim (PersistentVolumeClaim) 如果布建器或外部控制器可以支援指定的數據源,則會根據指定數據源的內容建立新的磁碟區。 如果已啟用 AnyVolumeDataSource 功能閘道,此字段一律會有與 DataSourceRef 字段相同的內容。 LocalKubernetesReference
dataSourceRef 指定要從中填入數據磁碟區的物件,如果需要非空白磁碟區。 這可能是來自非空白 API 群組(非核心物件)或 PersistentVolumeClaim 物件的任何本機物件。 指定此欄位時,只有在指定的物件類型符合某些已安裝的磁碟區填入器或動態布建器時,磁碟區系結才會成功。 此欄位會取代 DataSource 欄位的功能,因此,如果這兩個字段都是非空白的,則必須具有相同的值。 為了回溯相容性,如果其中一個字段是空的,而且另一個是非空白的,這兩個字段都會自動設定為相同的值。 DataSource 和 DataSourceRef 之間有兩個重要差異:* 雖然 DataSource 只允許兩種特定類型的物件,DataSourceRef 允許任何非核心物件,以及 PersistentVolumeClaim 物件。 * 雖然 DataSource 會忽略不允許的值(卸除這些值),但 DataSourceRef 會保留所有值,並在指定不允許的值時產生錯誤。 (Beta)使用此欄位需要啟用 AnyVolumeDataSource 功能閘道。 KubernetesReference
資源 資源代表磁碟區應該擁有的最低資源。 如果已啟用 RecoverVolumeExpansionFailure 功能,則允許使用者指定低於先前值的資源需求,但仍必須高於宣告狀態字段中記錄的容量。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources VolumeClaimResourceRequirements
選擇器 卷標查詢要考慮用於系結的磁碟區。 VolumeClaimSpecSelector
storageClassName 宣告所需的 StorageClass 名稱。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 字串
volumeMode volumeMode 會定義宣告所需的磁碟區類型。 當宣告規格中未包含時,會隱含 Filesystem 的值。這是 Beta 功能。 字串
volumeName VolumeName 是可備份此宣告之 PersistentVolume 的系結參考。 字串

VolumeClaimSpecSelector

名字 描述 價值
matchExpressions MatchExpressions 是標籤選取器需求的清單。 需求為 ANDed。 VolumeClaimSpecSelectorMatchExpressions[]
matchLabels MatchLabels 是 {key,value} 組的對應。 matchLabels 對應中的單一 {key,value} 相當於 matchExpressions 的專案,其索引鍵字段為 “key”,運算符為 “In”,而值數組只包含 “value”。 需求為 ANDed。 VolumeClaimSpecSelectorMatchLabels

VolumeClaimSpecSelectorMatchExpressions

名字 描述 價值
鑰匙 key 是選取器所套用的標籤索引鍵。 字串 (必要)
算子 運算子代表索引鍵與一組值的關聯性。 有效運算子為 In、NotIn、Exists 和 DoesNotExist。 'DoesNotExist'
'Exists'
'In'
'NotIn' (必要)
values 是字串值的陣列。 如果運算子為 In 或 NotIn,則值陣列必須是非空白的。 如果運算子為 Exists 或 DoesNotExist,則值陣列必須是空的。 此陣列會在策略式合併修補期間取代。 string[]

VolumeClaimSpecSelectorMatchLabels

名字 描述 價值

ARM 樣本資源定義

實體/訊息代理程式資源類型可以使用目標作業來部署:

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.IoTOperations/instances/brokers 資源,請將下列 JSON 新增至範本。

{
  "type": "Microsoft.IoTOperations/instances/brokers",
  "apiVersion": "2024-11-01",
  "name": "string",
  "extendedLocation": {
    "name": "string",
    "type": "string"
  },
  "properties": {
    "advanced": {
      "clients": {
        "maxKeepAliveSeconds": "int",
        "maxMessageExpirySeconds": "int",
        "maxPacketSizeBytes": "int",
        "maxReceiveMaximum": "int",
        "maxSessionExpirySeconds": "int",
        "subscriberQueueLimit": {
          "length": "int",
          "strategy": "string"
        }
      },
      "encryptInternalTraffic": "string",
      "internalCerts": {
        "duration": "string",
        "privateKey": {
          "algorithm": "string",
          "rotationPolicy": "string"
        },
        "renewBefore": "string"
      }
    },
    "cardinality": {
      "backendChain": {
        "partitions": "int",
        "redundancyFactor": "int",
        "workers": "int"
      },
      "frontend": {
        "replicas": "int",
        "workers": "int"
      }
    },
    "diagnostics": {
      "logs": {
        "level": "string"
      },
      "metrics": {
        "prometheusPort": "int"
      },
      "selfCheck": {
        "intervalSeconds": "int",
        "mode": "string",
        "timeoutSeconds": "int"
      },
      "traces": {
        "cacheSizeMegabytes": "int",
        "mode": "string",
        "selfTracing": {
          "intervalSeconds": "int",
          "mode": "string"
        },
        "spanChannelCapacity": "int"
      }
    },
    "diskBackedMessageBuffer": {
      "ephemeralVolumeClaimSpec": {
        "accessModes": [ "string" ],
        "dataSource": {
          "apiGroup": "string",
          "kind": "string",
          "name": "string"
        },
        "dataSourceRef": {
          "apiGroup": "string",
          "kind": "string",
          "name": "string",
          "namespace": "string"
        },
        "resources": {
          "limits": {
            "{customized property}": "string"
          },
          "requests": {
            "{customized property}": "string"
          }
        },
        "selector": {
          "matchExpressions": [
            {
              "key": "string",
              "operator": "string",
              "values": [ "string" ]
            }
          ],
          "matchLabels": {
            "{customized property}": "string"
          }
        },
        "storageClassName": "string",
        "volumeMode": "string",
        "volumeName": "string"
      },
      "maxSize": "string",
      "persistentVolumeClaimSpec": {
        "accessModes": [ "string" ],
        "dataSource": {
          "apiGroup": "string",
          "kind": "string",
          "name": "string"
        },
        "dataSourceRef": {
          "apiGroup": "string",
          "kind": "string",
          "name": "string",
          "namespace": "string"
        },
        "resources": {
          "limits": {
            "{customized property}": "string"
          },
          "requests": {
            "{customized property}": "string"
          }
        },
        "selector": {
          "matchExpressions": [
            {
              "key": "string",
              "operator": "string",
              "values": [ "string" ]
            }
          ],
          "matchLabels": {
            "{customized property}": "string"
          }
        },
        "storageClassName": "string",
        "volumeMode": "string",
        "volumeName": "string"
      }
    },
    "generateResourceLimits": {
      "cpu": "string"
    },
    "memoryProfile": "string"
  }
}

屬性值

AdvancedSettings

名字 描述 價值
客戶 與所有客戶端相關的組態。 ClientConfig
encryptInternalTraffic 啟用或停用內部流量加密的設定。 'Disabled'
'Enabled'
internalCerts 憑證輪替和私鑰組態。 CertManagerCertOptions

BackendChain

名字 描述 價值
分區 所需的實體後端分割區數目。 int

約束:
最小值 = 1
最大值 = 16 (必要)
redundancyFactor 實體分割區中所需的後端復本 (Pods) 數目。 int

約束:
最小值 = 1
最大值 = 5(必要)
工人 每個復本的邏輯後端背景工作角色數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16

BrokerDiagnostics

名字 描述 價值
原木 資源的診斷記錄設定。 DiagnosticsLogs
指標 資源的計量設定。 計量
selfCheck 自我檢查屬性。 SelfCheck
痕跡 追蹤屬性。 追蹤

BrokerProperties

名字 描述 價值
高深 Broker 的進階設定。 AdvancedSettings
基數 Broker 的基數詳細數據。 基數
診斷 規格會定義 Broker 診斷設定所需的身分識別。 BrokerDiagnostics
diskBackedMessageBuffer 磁碟支援的訊息緩衝區設定。 DiskBackedMessageBuffer
generateResourceLimits 此設定可控制是否要求 Kubernetes CPU 資源限制。 增加複本或背景工作角色的數目會按比例增加所要求的CPU資源數量。 如果啟用此設定且 CPU 資源不足,則會發出錯誤。 GenerateResourceLimits
memoryProfile Broker 的記憶體配置檔。 'High'
'Low'
'Medium'
'Tiny'

基數

名字 描述 價值
backendChain 後端訊息代理程式所需的屬性 BackendChain (必要)
前端 前端所需的屬性 前端 (必要)

CertManagerCertOptions

名字 描述 價值
期間 憑證的存留期。 必須使用 Go 時間指定。持續時間格式 (h m s). 例如,240小時240小時45米45分鐘。 字串 (必要)
privateKey 設定憑證私鑰。 CertManagerPrivateKey (必要)
renewBefore 何時開始更新憑證。 必須使用 Go 時間指定。持續時間格式 (h m s). 例如,240小時240小時45米45分鐘。 字串 (必要)

CertManagerPrivateKey

名字 描述 價值
演算法 私鑰的演算法。 'Ec256'
'Ec384'
'Ec521'
'Ed25519'
'Rsa2048'
'Rsa4096'
'Rsa8192' (必要)
rotationPolicy cert-manager 私鑰 rotationPolicy。 'Always'
'Never' (必要)

ClientConfig

名字 描述 價值
maxKeepAliveSeconds 用戶端的 Keep Alive 上限,以秒為單位。 int

約束:
最小值 = 0
最大值 = 65535
maxMessageExpirySeconds 訊息到期間隔的上限,以秒為單位。 int

約束:
最小值 = 1
最大值 = 4294967295
maxPacketSizeBytes 封包的訊息大小上限,以位元組為單位。 int

約束:
最小值 = 1
最大值 = 268435456
maxReceiveMaximum 用戶端可以在 CONNECT 封包中要求的最大接收上限。 int

約束:
最小值 = 1
最大值 = 65535
maxSessionExpirySeconds 會話到期間隔的上限,以秒為單位。 int

約束:
最小值 = 1
最大值 = 4294967295
subscriberQueueLimit 訂閱者佇列訊息數目的限制。 SubscriberQueueLimit

DiagnosticsLogs

名字 描述 價值
水準 記錄層級。 範例 - 'debug'、'info'、'warn'、'error'、'trace'。 字串

DiskBackedMessageBuffer

名字 描述 價值
ephemeralVolumeClaimSpec 使用指定的永續性磁碟區宣告範本來掛接訊息緩衝區的「一般暫時磁碟區」。 如需詳細資訊,請參閱 <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes>。 VolumeClaimSpec
maxSize 磁碟上訊息緩衝區的大小上限。 如果使用其中一個暫時性VolumeClaimSpec 或persistentVolumeClaimSpec 指定PVClaim範本,則此大小會當做該範本的要求和限制大小使用。 如果未指定 ephemeralVolumeClaimSpec 或 persistentVolumeClaimSpec,則會以這個大小作為其限制掛接 emptyDir 磁碟區。 如需詳細資訊,請參閱 <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir>。 字串

約束:
模式 = ^[0-9]+[KMGTPE]$ (必要)
persistentVolumeClaimSpec 使用指定的永續性磁碟區宣告範本,為訊息緩衝區掛接永續性磁碟區。 VolumeClaimSpec

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串 (必要)
類型 ExtendedLocation 的類型。 'CustomLocation' (必要)

前端

名字 描述 價值
副本 所需的前端實例數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16 (必要)
工人 每個實例的邏輯前端背景工作角色數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16

GenerateResourceLimits

名字 描述 價值
中央處理器 啟用/停用CPU資源限制的切換。 'Disabled'
'Enabled'

KubernetesReference

名字 描述 價值
apiGroup APIGroup 是所參考資源的群組。 如果未指定 APIGroup,指定的 Kind 必須位於核心 API 群組中。 對於任何其他第三方類型,需要 APIGroup。 字串
種類是所參考的資源類型 字串 (必要)
名字 Name 是所參考的資源名稱 字串 (必要)
Namespace 命名空間是所參考資源的命名空間。 資源具有命名空間時,需要此欄位。 字串

LocalKubernetesReference

名字 描述 價值
apiGroup APIGroup 是所參考資源的群組。 如果未指定 APIGroup,指定的 Kind 必須位於核心 API 群組中。 對於任何其他第三方類型,需要 APIGroup。 字串
種類是所參考的資源類型 字串 (必要)
名字 Name 是所參考的資源名稱 字串 (必要)

指標

名字 描述 價值
prometheusPort 要公開計量的 prometheus 埠。 int

約束:
最小值 = 0
最大值 = 65535

Microsoft.IoTOperations/instances/brokers

名字 描述 價值
apiVersion API 版本 '2024-11-01'
extendedLocation 資源的邊緣位置。 ExtendedLocation (必要)
名字 資源名稱 字串

約束:
最小長度 = 3
最大長度 = 63
模式 = ^[a-z0-9][a-z0-9-]*[a-z0-9]$ (必要)
性能 此資源的資源特定屬性。 BrokerProperties
類型 資源類型 'Microsoft.IoTOperations/instances/brokers'

SelfCheck

名字 描述 價值
intervalSeconds 自我檢查間隔。 int

約束:
最小值 = 30
最大值 = 300
模式 啟用/停用自我檢查的切換。 'Disabled'
'Enabled'
timeoutSeconds 自我檢查的逾時。 int

約束:
最小值 = 5
最大值 = 120

SelfTracing

名字 描述 價值
intervalSeconds 自我追蹤間隔。 int

約束:
最小值 = 1
最大值 = 300
模式 啟用/停用自我追蹤的切換。 'Disabled'
'Enabled'

SubscriberQueueLimit

名字 描述 價值
長度 訊息開始卸除之前佇列的最大長度。 int

約束:
最小值 = 1
策略 用來從佇列卸除訊息的策略。 'DropOldest'
'None'

痕跡

名字 描述 價值
cacheSizeMegabytes 快取大小以 MB 為單位。 int

約束:
最小值 = 1
最大值 = 128
模式 啟用/停用追蹤的切換。 'Disabled'
'Enabled'
selfTracing 自我追蹤屬性。 SelfTracing
spanChannelCapacity 範圍通道容量。 int

約束:
最小值 = 1000
最大值 = 100000

VolumeClaimResourceRequirements

名字 描述 價值
限制 限制描述允許的計算資源數量上限。 詳細資訊:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsLimits
請求 要求描述所需的計算資源數量下限。 如果容器省略 Requests,則會在明確指定時預設為 [限制],否則會設定為實作定義的值。 詳細資訊:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsRequests

VolumeClaimResourceRequirementsLimits

名字 描述 價值

VolumeClaimResourceRequirementsRequests

名字 描述 價值

VolumeClaimSpec

名字 描述 價值
accessModes AccessModes 包含磁碟區應該擁有的所需存取模式。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 string[]
dataSource 此欄位可用來指定下列其中一項:* 現有的 VolumeSnapshot 物件 (snapshot.storage.k8s.io/VolumeSnapshot) * 現有的PVClaim (PersistentVolumeClaim) 如果布建器或外部控制器可以支援指定的數據源,則會根據指定數據源的內容建立新的磁碟區。 如果已啟用 AnyVolumeDataSource 功能閘道,此字段一律會有與 DataSourceRef 字段相同的內容。 LocalKubernetesReference
dataSourceRef 指定要從中填入數據磁碟區的物件,如果需要非空白磁碟區。 這可能是來自非空白 API 群組(非核心物件)或 PersistentVolumeClaim 物件的任何本機物件。 指定此欄位時,只有在指定的物件類型符合某些已安裝的磁碟區填入器或動態布建器時,磁碟區系結才會成功。 此欄位會取代 DataSource 欄位的功能,因此,如果這兩個字段都是非空白的,則必須具有相同的值。 為了回溯相容性,如果其中一個字段是空的,而且另一個是非空白的,這兩個字段都會自動設定為相同的值。 DataSource 和 DataSourceRef 之間有兩個重要差異:* 雖然 DataSource 只允許兩種特定類型的物件,DataSourceRef 允許任何非核心物件,以及 PersistentVolumeClaim 物件。 * 雖然 DataSource 會忽略不允許的值(卸除這些值),但 DataSourceRef 會保留所有值,並在指定不允許的值時產生錯誤。 (Beta)使用此欄位需要啟用 AnyVolumeDataSource 功能閘道。 KubernetesReference
資源 資源代表磁碟區應該擁有的最低資源。 如果已啟用 RecoverVolumeExpansionFailure 功能,則允許使用者指定低於先前值的資源需求,但仍必須高於宣告狀態字段中記錄的容量。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources VolumeClaimResourceRequirements
選擇器 卷標查詢要考慮用於系結的磁碟區。 VolumeClaimSpecSelector
storageClassName 宣告所需的 StorageClass 名稱。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 字串
volumeMode volumeMode 會定義宣告所需的磁碟區類型。 當宣告規格中未包含時,會隱含 Filesystem 的值。這是 Beta 功能。 字串
volumeName VolumeName 是可備份此宣告之 PersistentVolume 的系結參考。 字串

VolumeClaimSpecSelector

名字 描述 價值
matchExpressions MatchExpressions 是標籤選取器需求的清單。 需求為 ANDed。 VolumeClaimSpecSelectorMatchExpressions[]
matchLabels MatchLabels 是 {key,value} 組的對應。 matchLabels 對應中的單一 {key,value} 相當於 matchExpressions 的專案,其索引鍵字段為 “key”,運算符為 “In”,而值數組只包含 “value”。 需求為 ANDed。 VolumeClaimSpecSelectorMatchLabels

VolumeClaimSpecSelectorMatchExpressions

名字 描述 價值
鑰匙 key 是選取器所套用的標籤索引鍵。 字串 (必要)
算子 運算子代表索引鍵與一組值的關聯性。 有效運算子為 In、NotIn、Exists 和 DoesNotExist。 'DoesNotExist'
'Exists'
'In'
'NotIn' (必要)
values 是字串值的陣列。 如果運算子為 In 或 NotIn,則值陣列必須是非空白的。 如果運算子為 Exists 或 DoesNotExist,則值陣列必須是空的。 此陣列會在策略式合併修補期間取代。 string[]

VolumeClaimSpecSelectorMatchLabels

名字 描述 價值

Terraform (AzAPI 提供者) 資源定義

實體/訊息代理程式資源類型可以使用目標作業來部署:

  • 資源群組

如需每個 API 版本中已變更屬性的清單,請參閱 變更記錄檔

資源格式

若要建立 Microsoft.IoTOperations/instances/brokers 資源,請將下列 Terraform 新增至範本。

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.IoTOperations/instances/brokers@2024-11-01"
  name = "string"
  body = jsonencode({
    extendedLocation = {
      name = "string"
      type = "string"
    }
    properties = {
      advanced = {
        clients = {
          maxKeepAliveSeconds = int
          maxMessageExpirySeconds = int
          maxPacketSizeBytes = int
          maxReceiveMaximum = int
          maxSessionExpirySeconds = int
          subscriberQueueLimit = {
            length = int
            strategy = "string"
          }
        }
        encryptInternalTraffic = "string"
        internalCerts = {
          duration = "string"
          privateKey = {
            algorithm = "string"
            rotationPolicy = "string"
          }
          renewBefore = "string"
        }
      }
      cardinality = {
        backendChain = {
          partitions = int
          redundancyFactor = int
          workers = int
        }
        frontend = {
          replicas = int
          workers = int
        }
      }
      diagnostics = {
        logs = {
          level = "string"
        }
        metrics = {
          prometheusPort = int
        }
        selfCheck = {
          intervalSeconds = int
          mode = "string"
          timeoutSeconds = int
        }
        traces = {
          cacheSizeMegabytes = int
          mode = "string"
          selfTracing = {
            intervalSeconds = int
            mode = "string"
          }
          spanChannelCapacity = int
        }
      }
      diskBackedMessageBuffer = {
        ephemeralVolumeClaimSpec = {
          accessModes = [
            "string"
          ]
          dataSource = {
            apiGroup = "string"
            kind = "string"
            name = "string"
          }
          dataSourceRef = {
            apiGroup = "string"
            kind = "string"
            name = "string"
            namespace = "string"
          }
          resources = {
            limits = {
              {customized property} = "string"
            }
            requests = {
              {customized property} = "string"
            }
          }
          selector = {
            matchExpressions = [
              {
                key = "string"
                operator = "string"
                values = [
                  "string"
                ]
              }
            ]
            matchLabels = {
              {customized property} = "string"
            }
          }
          storageClassName = "string"
          volumeMode = "string"
          volumeName = "string"
        }
        maxSize = "string"
        persistentVolumeClaimSpec = {
          accessModes = [
            "string"
          ]
          dataSource = {
            apiGroup = "string"
            kind = "string"
            name = "string"
          }
          dataSourceRef = {
            apiGroup = "string"
            kind = "string"
            name = "string"
            namespace = "string"
          }
          resources = {
            limits = {
              {customized property} = "string"
            }
            requests = {
              {customized property} = "string"
            }
          }
          selector = {
            matchExpressions = [
              {
                key = "string"
                operator = "string"
                values = [
                  "string"
                ]
              }
            ]
            matchLabels = {
              {customized property} = "string"
            }
          }
          storageClassName = "string"
          volumeMode = "string"
          volumeName = "string"
        }
      }
      generateResourceLimits = {
        cpu = "string"
      }
      memoryProfile = "string"
    }
  })
}

屬性值

AdvancedSettings

名字 描述 價值
客戶 與所有客戶端相關的組態。 ClientConfig
encryptInternalTraffic 啟用或停用內部流量加密的設定。 'Disabled'
'Enabled'
internalCerts 憑證輪替和私鑰組態。 CertManagerCertOptions

BackendChain

名字 描述 價值
分區 所需的實體後端分割區數目。 int

約束:
最小值 = 1
最大值 = 16 (必要)
redundancyFactor 實體分割區中所需的後端復本 (Pods) 數目。 int

約束:
最小值 = 1
最大值 = 5(必要)
工人 每個復本的邏輯後端背景工作角色數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16

BrokerDiagnostics

名字 描述 價值
原木 資源的診斷記錄設定。 DiagnosticsLogs
指標 資源的計量設定。 計量
selfCheck 自我檢查屬性。 SelfCheck
痕跡 追蹤屬性。 追蹤

BrokerProperties

名字 描述 價值
高深 Broker 的進階設定。 AdvancedSettings
基數 Broker 的基數詳細數據。 基數
診斷 規格會定義 Broker 診斷設定所需的身分識別。 BrokerDiagnostics
diskBackedMessageBuffer 磁碟支援的訊息緩衝區設定。 DiskBackedMessageBuffer
generateResourceLimits 此設定可控制是否要求 Kubernetes CPU 資源限制。 增加複本或背景工作角色的數目會按比例增加所要求的CPU資源數量。 如果啟用此設定且 CPU 資源不足,則會發出錯誤。 GenerateResourceLimits
memoryProfile Broker 的記憶體配置檔。 'High'
'Low'
'Medium'
'Tiny'

基數

名字 描述 價值
backendChain 後端訊息代理程式所需的屬性 BackendChain (必要)
前端 前端所需的屬性 前端 (必要)

CertManagerCertOptions

名字 描述 價值
期間 憑證的存留期。 必須使用 Go 時間指定。持續時間格式 (h m s). 例如,240小時240小時45米45分鐘。 字串 (必要)
privateKey 設定憑證私鑰。 CertManagerPrivateKey (必要)
renewBefore 何時開始更新憑證。 必須使用 Go 時間指定。持續時間格式 (h m s). 例如,240小時240小時45米45分鐘。 字串 (必要)

CertManagerPrivateKey

名字 描述 價值
演算法 私鑰的演算法。 'Ec256'
'Ec384'
'Ec521'
'Ed25519'
'Rsa2048'
'Rsa4096'
'Rsa8192' (必要)
rotationPolicy cert-manager 私鑰 rotationPolicy。 'Always'
'Never' (必要)

ClientConfig

名字 描述 價值
maxKeepAliveSeconds 用戶端的 Keep Alive 上限,以秒為單位。 int

約束:
最小值 = 0
最大值 = 65535
maxMessageExpirySeconds 訊息到期間隔的上限,以秒為單位。 int

約束:
最小值 = 1
最大值 = 4294967295
maxPacketSizeBytes 封包的訊息大小上限,以位元組為單位。 int

約束:
最小值 = 1
最大值 = 268435456
maxReceiveMaximum 用戶端可以在 CONNECT 封包中要求的最大接收上限。 int

約束:
最小值 = 1
最大值 = 65535
maxSessionExpirySeconds 會話到期間隔的上限,以秒為單位。 int

約束:
最小值 = 1
最大值 = 4294967295
subscriberQueueLimit 訂閱者佇列訊息數目的限制。 SubscriberQueueLimit

DiagnosticsLogs

名字 描述 價值
水準 記錄層級。 範例 - 'debug'、'info'、'warn'、'error'、'trace'。 字串

DiskBackedMessageBuffer

名字 描述 價值
ephemeralVolumeClaimSpec 使用指定的永續性磁碟區宣告範本來掛接訊息緩衝區的「一般暫時磁碟區」。 如需詳細資訊,請參閱 <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes>。 VolumeClaimSpec
maxSize 磁碟上訊息緩衝區的大小上限。 如果使用其中一個暫時性VolumeClaimSpec 或persistentVolumeClaimSpec 指定PVClaim範本,則此大小會當做該範本的要求和限制大小使用。 如果未指定 ephemeralVolumeClaimSpec 或 persistentVolumeClaimSpec,則會以這個大小作為其限制掛接 emptyDir 磁碟區。 如需詳細資訊,請參閱 <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir>。 字串

約束:
模式 = ^[0-9]+[KMGTPE]$ (必要)
persistentVolumeClaimSpec 使用指定的永續性磁碟區宣告範本,為訊息緩衝區掛接永續性磁碟區。 VolumeClaimSpec

ExtendedLocation

名字 描述 價值
名字 擴充位置的名稱。 字串 (必要)
類型 ExtendedLocation 的類型。 'CustomLocation' (必要)

前端

名字 描述 價值
副本 所需的前端實例數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16 (必要)
工人 每個實例的邏輯前端背景工作角色數目(Pod)。 int

約束:
最小值 = 1
最大值 = 16

GenerateResourceLimits

名字 描述 價值
中央處理器 啟用/停用CPU資源限制的切換。 'Disabled'
'Enabled'

KubernetesReference

名字 描述 價值
apiGroup APIGroup 是所參考資源的群組。 如果未指定 APIGroup,指定的 Kind 必須位於核心 API 群組中。 對於任何其他第三方類型,需要 APIGroup。 字串
種類是所參考的資源類型 字串 (必要)
名字 Name 是所參考的資源名稱 字串 (必要)
Namespace 命名空間是所參考資源的命名空間。 資源具有命名空間時,需要此欄位。 字串

LocalKubernetesReference

名字 描述 價值
apiGroup APIGroup 是所參考資源的群組。 如果未指定 APIGroup,指定的 Kind 必須位於核心 API 群組中。 對於任何其他第三方類型,需要 APIGroup。 字串
種類是所參考的資源類型 字串 (必要)
名字 Name 是所參考的資源名稱 字串 (必要)

指標

名字 描述 價值
prometheusPort 要公開計量的 prometheus 埠。 int

約束:
最小值 = 0
最大值 = 65535

Microsoft.IoTOperations/instances/brokers

名字 描述 價值
extendedLocation 資源的邊緣位置。 ExtendedLocation (必要)
名字 資源名稱 字串

約束:
最小長度 = 3
最大長度 = 63
模式 = ^[a-z0-9][a-z0-9-]*[a-z0-9]$ (必要)
parent_id 此資源為父系之資源的標識碼。 類型的資源標識碼:實例
性能 此資源的資源特定屬性。 BrokerProperties
類型 資源類型 “Microsoft.IoTOperations/instances/brokers@2024-11-01”

SelfCheck

名字 描述 價值
intervalSeconds 自我檢查間隔。 int

約束:
最小值 = 30
最大值 = 300
模式 啟用/停用自我檢查的切換。 'Disabled'
'Enabled'
timeoutSeconds 自我檢查的逾時。 int

約束:
最小值 = 5
最大值 = 120

SelfTracing

名字 描述 價值
intervalSeconds 自我追蹤間隔。 int

約束:
最小值 = 1
最大值 = 300
模式 啟用/停用自我追蹤的切換。 'Disabled'
'Enabled'

SubscriberQueueLimit

名字 描述 價值
長度 訊息開始卸除之前佇列的最大長度。 int

約束:
最小值 = 1
策略 用來從佇列卸除訊息的策略。 'DropOldest'
'None'

痕跡

名字 描述 價值
cacheSizeMegabytes 快取大小以 MB 為單位。 int

約束:
最小值 = 1
最大值 = 128
模式 啟用/停用追蹤的切換。 'Disabled'
'Enabled'
selfTracing 自我追蹤屬性。 SelfTracing
spanChannelCapacity 範圍通道容量。 int

約束:
最小值 = 1000
最大值 = 100000

VolumeClaimResourceRequirements

名字 描述 價值
限制 限制描述允許的計算資源數量上限。 詳細資訊:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsLimits
請求 要求描述所需的計算資源數量下限。 如果容器省略 Requests,則會在明確指定時預設為 [限制],否則會設定為實作定義的值。 詳細資訊:https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsRequests

VolumeClaimResourceRequirementsLimits

名字 描述 價值

VolumeClaimResourceRequirementsRequests

名字 描述 價值

VolumeClaimSpec

名字 描述 價值
accessModes AccessModes 包含磁碟區應該擁有的所需存取模式。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 string[]
dataSource 此欄位可用來指定下列其中一項:* 現有的 VolumeSnapshot 物件 (snapshot.storage.k8s.io/VolumeSnapshot) * 現有的PVClaim (PersistentVolumeClaim) 如果布建器或外部控制器可以支援指定的數據源,則會根據指定數據源的內容建立新的磁碟區。 如果已啟用 AnyVolumeDataSource 功能閘道,此字段一律會有與 DataSourceRef 字段相同的內容。 LocalKubernetesReference
dataSourceRef 指定要從中填入數據磁碟區的物件,如果需要非空白磁碟區。 這可能是來自非空白 API 群組(非核心物件)或 PersistentVolumeClaim 物件的任何本機物件。 指定此欄位時,只有在指定的物件類型符合某些已安裝的磁碟區填入器或動態布建器時,磁碟區系結才會成功。 此欄位會取代 DataSource 欄位的功能,因此,如果這兩個字段都是非空白的,則必須具有相同的值。 為了回溯相容性,如果其中一個字段是空的,而且另一個是非空白的,這兩個字段都會自動設定為相同的值。 DataSource 和 DataSourceRef 之間有兩個重要差異:* 雖然 DataSource 只允許兩種特定類型的物件,DataSourceRef 允許任何非核心物件,以及 PersistentVolumeClaim 物件。 * 雖然 DataSource 會忽略不允許的值(卸除這些值),但 DataSourceRef 會保留所有值,並在指定不允許的值時產生錯誤。 (Beta)使用此欄位需要啟用 AnyVolumeDataSource 功能閘道。 KubernetesReference
資源 資源代表磁碟區應該擁有的最低資源。 如果已啟用 RecoverVolumeExpansionFailure 功能,則允許使用者指定低於先前值的資源需求,但仍必須高於宣告狀態字段中記錄的容量。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources VolumeClaimResourceRequirements
選擇器 卷標查詢要考慮用於系結的磁碟區。 VolumeClaimSpecSelector
storageClassName 宣告所需的 StorageClass 名稱。 詳細資訊:https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 字串
volumeMode volumeMode 會定義宣告所需的磁碟區類型。 當宣告規格中未包含時,會隱含 Filesystem 的值。這是 Beta 功能。 字串
volumeName VolumeName 是可備份此宣告之 PersistentVolume 的系結參考。 字串

VolumeClaimSpecSelector

名字 描述 價值
matchExpressions MatchExpressions 是標籤選取器需求的清單。 需求為 ANDed。 VolumeClaimSpecSelectorMatchExpressions[]
matchLabels MatchLabels 是 {key,value} 組的對應。 matchLabels 對應中的單一 {key,value} 相當於 matchExpressions 的專案,其索引鍵字段為 “key”,運算符為 “In”,而值數組只包含 “value”。 需求為 ANDed。 VolumeClaimSpecSelectorMatchLabels

VolumeClaimSpecSelectorMatchExpressions

名字 描述 價值
鑰匙 key 是選取器所套用的標籤索引鍵。 字串 (必要)
算子 運算子代表索引鍵與一組值的關聯性。 有效運算子為 In、NotIn、Exists 和 DoesNotExist。 'DoesNotExist'
'Exists'
'In'
'NotIn' (必要)
values 是字串值的陣列。 如果運算子為 In 或 NotIn,則值陣列必須是非空白的。 如果運算子為 Exists 或 DoesNotExist,則值陣列必須是空的。 此陣列會在策略式合併修補期間取代。 string[]

VolumeClaimSpecSelectorMatchLabels

名字 描述 價值