다음을 통해 공유


Microsoft.IoTOperations instances/brokers

Bicep 리소스 정의

인스턴스/brokers 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

Resource format

Microsoft.IoTOperations/instances/brokers 리소스를 만들려면 템플릿에 다음 Bicep을 추가합니다.

resource symbolicname 'Microsoft.IoTOperations/instances/brokers@2025-07-01-preview' = {
  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: {
          claims: [
            {
              name: 'string'
            }
          ]
          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: {
          claims: [
            {
              name: 'string'
            }
          ]
          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'
    persistence: {
      dynamicSettings: {
        userPropertyKey: 'string'
        userPropertyValue: 'string'
      }
      encryption: {
        mode: 'string'
      }
      maxSize: 'string'
      persistentVolumeClaimSpec: {
        accessModes: [
          'string'
        ]
        dataSource: {
          apiGroup: 'string'
          kind: 'string'
          name: 'string'
        }
        dataSourceRef: {
          apiGroup: 'string'
          kind: 'string'
          name: 'string'
          namespace: 'string'
        }
        resources: {
          claims: [
            {
              name: 'string'
            }
          ]
          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'
      }
      retain: {
        mode: 'string'
        // For remaining properties, see BrokerRetainMessagesPolicy objects
      }
      stateStore: {
        mode: 'string'
        // For remaining properties, see BrokerStateStorePolicy objects
      }
      subscriberQueue: {
        mode: 'string'
        // For remaining properties, see BrokerSubscriberQueuePolicy objects
      }
    }
  }
}

BrokerRetainMessagesPolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  mode: 'Custom'
  retainSettings: {
    dynamic: {
      mode: 'string'
    }
    topics: [
      'string'
    ]
  }
}

BrokerStateStorePolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  mode: 'Custom'
  stateStoreSettings: {
    dynamic: {
      mode: 'string'
    }
    stateStoreResources: [
      {
        keys: [
          'string'
        ]
        keyType: 'string'
      }
    ]
  }
}

BrokerSubscriberQueuePolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  mode: 'Custom'
  subscriberQueueSettings: {
    dynamic: {
      mode: 'string'
    }
    subscriberClientIds: [
      'string'
    ]
    topics: [
      'string'
    ]
  }
}

Property Values

Microsoft.IoTOperations/instances/brokers

Name Description Value
extendedLocation 리소스의 에지 위치입니다. ExtendedLocation
name 리소스 이름 string

Constraints:
최소 길이 = 3
최대 길이 = 63
패턴 = ^[a-z0-9][a-z0-9-]*[a-z0-9]$(필수)
parent Bicep에서 자식 리소스에 대한 부모 리소스를 지정할 수 있습니다. 자식 리소스가 부모 리소스 외부에서 선언된 경우에만 이 속성을 추가해야 합니다.

자세한 내용은 부모 리소스외부의 자식 리소스 참조하세요.
형식 리소스의 기호 이름: 인스턴스
properties 이 리소스에 대한 리소스별 속성입니다. BrokerProperties

AdvancedSettings

Name Description Value
clients 모든 클라이언트와 관련된 구성입니다. ClientConfig
encryptInternalTraffic 내부 트래픽의 암호화를 사용하거나 사용하지 않도록 설정하는 설정입니다. 'Disabled'
'Enabled'
internalCerts 인증서 회전 및 프라이빗 키 구성. CertManagerCertOptions

BackendChain

Name Description Value
partitions 원하는 실제 백 엔드 파티션 수입니다. int

Constraints:
최소값 = 1
최대값 = 16(필수)
redundancyFactor 실제 파티션에서 원하는 백 엔드 복제본(Pod) 수입니다. int

Constraints:
최소값 = 1
최대값 = 5(필수)
workers 복제본당 논리 백 엔드 작업자 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16

BrokerDiagnostics

Name Description Value
logs 리소스에 대한 진단 로그 설정입니다. DiagnosticsLogs
metrics 리소스에 대한 메트릭 설정입니다. Metrics
selfCheck 자체 검사 속성입니다. SelfCheck
traces 추적 속성입니다. Traces

BrokerPersistence

Name Description Value
dynamicSettings 클라이언트는 CONNECT/SUBSCRIBE/PUBLISH에서 지정된 사용자 특성 키/값을 설정합니다.
선택적으로 고객이 구성 가능한 사용자 속성을 지정하면 지속성을 동적으로 사용하도록 설정됩니다. 기본 사용자 특성 키는 'aio-persistence'이고 값은 'true'입니다.
BrokerPersistenceDynamicSettings
encryption 지속성 데이터베이스의 암호화와 관련된 설정을 제어합니다. 선택 사항, 기본적으로 암호화를 사용하도록 설정합니다. BrokerPersistenceEncryption
maxSize 디스크에 있는 메시지 버퍼의 최대 크기입니다. persistentVolumeClaimSpec을 사용하여 PVC 템플릿을 지정하는 경우 이 크기는 해당 템플릿의 요청 및 제한 크기로 사용됩니다. PVC 템플릿이 지정되지 않은 경우 로컬 경로 프로비저너가 이 크기 제한으로 요청됩니다. Required. string (required)
persistentVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 영구 볼륨을 마운트합니다. diskBackedMessageBuffer와 동일한 개체이지만 액세스 모드 필드를 로 설정 ReadWriteOncePod해야 한다는 제한이 있습니다.

설정하지 않으면 기본 속성이 있는 기본 PVC가 사용됩니다. 무엇보다도 이 PVC는 로컬 경로 프로비저너를 사용하거나 사용하지 않을 수 있는 클러스터 기본 스토리지 클래스를 사용합니다. 사용자가 이 동작을 설정하지 않은 상태로 두거나 스토리지 클래스 필드 없이 설정하고 클러스터 기본값이 로컬 경로 클래스가 아닌 경우 최적이 아닌 동작을 옵트인하는 것입니다.
VolumeClaimSpec
retain 디스크에 유지해야 하는 토픽의 보존된 메시지를 제어합니다. BrokerRetainMessagesPolicy
stateStore 상태 저장소에 대해 디스크에 유지해야 하는 키를 제어합니다. BrokerStateStorePolicy
subscriberQueue 디스크에 유지해야 하는 구독자 메시지 큐를 제어합니다. 중요: 재연결을 용이하게 하기 위해 이 섹션이 설정되지 않은 경우에도 지속성 설정이 지정된 경우 세션 상태 메타데이터는 항상 디스크에 기록됩니다. BrokerSubscriberQueuePolicy

BrokerPersistenceDynamicSettings

Name Description Value
userPropertyKey 지속성을 사용하도록 설정하는 사용자 속성 키입니다. string (required)
userPropertyValue 지속성을 사용하도록 설정하는 사용자 속성 값입니다. string (required)

BrokerPersistenceEncryption

Name Description Value
mode 암호화가 활성화되어 있는지 여부를 결정합니다. 'Disabled'
'Enabled' (required)

BrokerProperties

Name Description Value
advanced Broker의 고급 설정입니다. AdvancedSettings
cardinality broker의 카디널리티 세부 정보입니다. Cardinality
diagnostics 사양은 Broker 진단 설정의 원하는 ID를 정의합니다. BrokerDiagnostics
diskBackedMessageBuffer 디스크 지원 메시지 버퍼의 설정입니다. DiskBackedMessageBuffer
generateResourceLimits 이 설정은 Kubernetes CPU 리소스 제한이 요청되는지 여부를 제어합니다. 복제본 또는 작업자 수를 비례적으로 늘리면 요청된 CPU 리소스의 양이 증가합니다. 이 설정을 사용하도록 설정하고 CPU 리소스가 부족한 경우 오류가 발생합니다. GenerateResourceLimits
memoryProfile Broker의 메모리 프로필입니다. 'High'
'Low'
'Medium'
'Tiny'
persistence 브로커의 지속성 설정입니다. BrokerPersistence

BrokerRetainMessagesCustomPolicy

Name Description Value
mode 'All'은 모든 보존 메시지를 유지하고, 'None'은 아무 메시지도 유지하지 않으며, 'Custom'은 지정된 주제만 유지합니다. 'Custom' (required)
retainSettings 정책에 대한 설정입니다. BrokerRetainMessagesSettings (required)

BrokerRetainMessagesDynamic

Name Description Value
mode BrokerRetainMessagesCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerRetainMessagesPolicy

Name Description Value
mode BrokerRetainMessagesCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

BrokerRetainMessagesSettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerRetainMessagesDynamic
topics 보존된 메시지가 디스크에 유지되는 토픽 목록입니다. 와일드카드 # 및 +가 지원됩니다. string[]

BrokerStateStoreCustomPolicy

Name Description Value
mode 'All'은 모든 키를 유지하고, 'None'은 아무 키도 유지하지 않으며, 'Custom'은 지정된 키만 유지합니다. 'Custom' (required)
stateStoreSettings 정책에 대한 설정입니다. BrokerStateStorePolicySettings (required)

BrokerStateStoreDynamic

Name Description Value
mode BrokerStateStoreCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerStateStorePolicy

Name Description Value
mode BrokerStateStoreCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

BrokerStateStorePolicyResources

Name Description Value
keys 디스크에 유지할 키 목록(필수)입니다. string[] (required)
keyType 디스크에 유지하는 키입니다. 'Binary'
'Pattern'
'String' (required)

BrokerStateStorePolicySettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerStateStoreDynamic
stateStoreResources 디스크에 유지할 키 및 키 유형 목록입니다. BrokerStateStorePolicyResources[]

BrokerSubscriberQueueCustomPolicy

Name Description Value
mode 'All'은 모든 구독자 큐를 유지하고, 'None'은 아무 것도 유지하지 않으며, 'Custom'은 지정된 큐만 유지합니다. 'Custom' (required)
subscriberQueueSettings 사용자 지정 정책, 모드가 사용자 지정인 경우 필요합니다. 모든 그룹의 가입자 대기열은 디스크에 유지됩니다(논리적 OR). BrokerSubscriberQueueCustomPolicySettings (required)

BrokerSubscriberQueueCustomPolicySettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerSubscriberQueueDynamic
subscriberClientIds 구독자의 클라이언트 ID 목록, 와일드카드 * 지원. string[]
topics 각 구독자에 대해 메시지가 디스크에 유지되는 토픽 목록입니다. 와일드카드 # 및 +가 지원됩니다. string[]

BrokerSubscriberQueueDynamic

Name Description Value
mode BrokerSubscriberQueueCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerSubscriberQueuePolicy

Name Description Value
mode BrokerSubscriberQueueCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

Cardinality

Name Description Value
backendChain 백 엔드 브로커 desired 속성 BackendChain (required)
frontend 프런트 엔드 desired 속성 Frontend (required)

CertManagerCertOptions

Name Description Value
duration 인증서의 수명입니다. Go 시간을 사용하여 지정해야 합니다. 기간 형식(h|m|s). 예를 들어 240시간은 240시간, 45분은 45m입니다. string (required)
privateKey 인증서 프라이빗 키의 구성입니다. CertManagerPrivateKey (required)
renewBefore 인증서 갱신을 시작하는 경우 Go 시간을 사용하여 지정해야 합니다. 기간 형식(h|m|s). 예를 들어 240시간은 240시간, 45분은 45m입니다. string (required)

CertManagerPrivateKey

Name Description Value
algorithm 프라이빗 키에 대한 알고리즘입니다. 'Ec256'
'Ec384'
'Ec521'
'Ed25519'
'Rsa2048'
'Rsa4096'
'Rsa8192' (required)
rotationPolicy cert-manager 프라이빗 키 rotationPolicy. 'Always'
'Never' (required)

ClientConfig

Name Description Value
maxKeepAliveSeconds 클라이언트의 연결 유지(초)의 상한입니다. int

Constraints:
최소값 = 0
최대값 = 65535
maxMessageExpirySeconds 메시지 만료 간격의 상한(초)입니다. int

Constraints:
최소값 = 1
최대값 = 4294967295
maxPacketSizeBytes 패킷의 최대 메시지 크기(바이트)입니다. int

Constraints:
최소값 = 1
최대값 = 268435456
maxReceiveMaximum 클라이언트가 CONNECT 패킷에서 요청할 수 있는 수신 최대값의 상한입니다. int

Constraints:
최소값 = 1
최대값 = 65535
maxSessionExpirySeconds 세션 만료 간격의 상한(초)입니다. int

Constraints:
최소값 = 1
최대값 = 4294967295
subscriberQueueLimit 구독자에 대한 큐에 대기 중인 메시지 수에 대한 제한입니다. SubscriberQueueLimit

DiagnosticsLogs

Name Description Value
level 로그 수준입니다. 예 - 'debug', 'info', 'warn', 'error', 'trace'. string

DiskBackedMessageBuffer

Name Description Value
ephemeralVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 메시지 버퍼에 대한 "제네릭 임시 볼륨"을 탑재합니다. 자세한 내용은 <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes>를 참조하세요. VolumeClaimSpec
maxSize 디스크에 있는 메시지 버퍼의 최대 크기입니다. ephemeralVolumeClaimSpec 또는 persistentVolumeClaimSpec 중 하나를 사용하여 PVC 템플릿을 지정하는 경우 이 크기는 해당 템플릿의 요청 및 제한 크기로 사용됩니다. ephemeralVolumeClaimSpec 또는 persistentVolumeClaimSpec을 지정하지 않으면 emptyDir 볼륨이 이 크기로 제한으로 탑재됩니다. 자세한 내용은 <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir>를 참조하세요. string

Constraints:
패턴 = ^[0-9]+[KMGTPE]$(필수)
persistentVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 메시지 버퍼에 대한 영구 볼륨을 탑재합니다. VolumeClaimSpec

ExtendedLocation

Name Description Value
name 확장된 위치의 이름입니다. string (required)
type ExtendedLocation의 형식입니다. 'CustomLocation' (required)

Frontend

Name Description Value
replicas 원하는 프런트 엔드 인스턴스 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16(필수)
workers 인스턴스당 논리적 프런트 엔드 작업자 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16

GenerateResourceLimits

Name Description Value
cpu CPU 리소스 제한을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'

KubernetesReference

Name Description Value
apiGroup APIGroup은 참조되는 리소스에 대한 그룹입니다. APIGroup을 지정하지 않으면 지정된 종류가 핵심 API 그룹에 있어야 합니다. 다른 타사 형식의 경우 APIGroup이 필요합니다. string
kind 종류는 참조되는 리소스의 유형입니다. string (required)
name 이름은 참조되는 리소스의 이름입니다. string (required)
namespace 네임스페이스는 참조되는 리소스의 네임스페이스입니다. 자원에 네임스페이스가 있는 경우 이 필드가 필요합니다. string

LocalKubernetesReference

Name Description Value
apiGroup APIGroup은 참조되는 리소스에 대한 그룹입니다. APIGroup을 지정하지 않으면 지정된 종류가 핵심 API 그룹에 있어야 합니다. 다른 타사 형식의 경우 APIGroup이 필요합니다. string
kind 종류는 참조되는 리소스의 유형입니다. string (required)
name 이름은 참조되는 리소스의 이름입니다. string (required)

Metrics

Name Description Value
prometheusPort 메트릭을 노출할 prometheus 포트입니다. int

Constraints:
최소값 = 0
최대값 = 65535

SelfCheck

Name Description Value
intervalSeconds 자체 검사 간격입니다. int

Constraints:
최소값 = 30
최대값 = 300
mode 자체 확인을 사용/사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'
timeoutSeconds 자체 검사에 대한 시간 제한입니다. int

Constraints:
최소값 = 5
최대값 = 120

SelfTracing

Name Description Value
intervalSeconds 자체 추적 간격입니다. int

Constraints:
최소값 = 1
최대값 = 300
mode 셀프 추적을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'

SubscriberQueueLimit

Name Description Value
length 메시지가 삭제되기 전에 큐의 최대 길이입니다. int

Constraints:
최소값 = 1
strategy 큐에서 메시지를 삭제하는 데 사용하는 전략입니다. 'DropOldest'
'None'

Traces

Name Description Value
cacheSizeMegabytes 캐시 크기(메가바이트)입니다. int

Constraints:
최소값 = 1
최대값 = 128
mode 추적을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'
selfTracing 자체 추적 속성입니다. SelfTracing
spanChannelCapacity 범위 채널 용량입니다. int

Constraints:
최소값 = 1000
최대값 = 100000

VolumeClaimResourceRequirements

Name Description Value
claims 클레임은 spec.resourceClaims에 정의된 이 컨테이너에서 사용되는 리소스의 이름을 나열합니다.

이는 알파 필드이며 DynamicResourceAllocation 기능 게이트를 사용하도록 설정해야 합니다.

이 필드는 변경할 수 없습니다. 컨테이너에 대해서만 설정할 수 있습니다.
VolumeClaimResourceRequirementsClaims[]
limits 제한은 허용되는 컴퓨팅 리소스의 최대 양을 설명합니다. 추가 정보: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsLimits
requests 요청은 필요한 컴퓨팅 리소스의 최소 양을 설명합니다. 컨테이너에 대한 요청을 생략하면 명시적으로 지정된 경우 Limits로 기본 설정되고, 그렇지 않으면 구현 정의 값으로 설정됩니다. 추가 정보: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsRequests

VolumeClaimResourceRequirementsClaims

Name Description Value
name 리소스의 이름입니다. 이는 spec.resourceClaims의 리소스 이름과 일치해야 합니다. string (required)

VolumeClaimResourceRequirementsLimits

Name Description Value

VolumeClaimResourceRequirementsRequests

Name Description Value

VolumeClaimSpec

Name Description Value
accessModes AccessModes에는 볼륨에 있어야 하는 원하는 액세스 모드가 포함되어 있습니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 string[]
dataSource 이 필드를 사용하여 다음 중 하나를 지정할 수 있습니다. * 기존 VolumeSnapshot 개체(snapshot.storage.k8s.io/VolumeSnapshot) * 기존 PVC(PersistentVolumeClaim) 프로비저닝 관리자 또는 외부 컨트롤러가 지정된 데이터 원본을 지원할 수 있는 경우 지정된 데이터 원본의 내용에 따라 새 볼륨을 만듭니다. AnyVolumeDataSource 기능 게이트를 사용하는 경우 이 필드는 항상 DataSourceRef 필드와 동일한 내용을 갖습니다. LocalKubernetesReference
dataSourceRef 비어있지 않은 볼륨이 필요한 경우 볼륨을 데이터로 채울 개체를 지정합니다. 비어 있지 않은 API 그룹(코어가 아닌 개체) 또는 PersistentVolumeClaim 개체의 모든 로컬 개체일 수 있습니다. 이 필드를 지정하면 지정된 개체의 형식이 설치된 일부 볼륨 채우기 또는 동적 프로비저닝자와 일치하는 경우에만 볼륨 바인딩이 성공합니다. 이 필드는 DataSource 필드의 기능을 대체하므로 두 필드가 모두 비어있지 않은 경우 동일한 값을 가져야 합니다. 이전 버전과의 호환성을 위해 필드 중 하나가 비어 있고 다른 필드가 비어 있지 않으면 두 필드(DataSource 및 DataSourceRef)가 자동으로 동일한 값으로 설정됩니다. DataSource와 DataSourceRef 간에는 두 가지 중요한 차이점이 있습니다. * DataSource는 두 가지 특정 형식의 개체만 허용하지만 DataSourceRef는 비코어 개체와 PersistentVolumeClaim 개체를 허용합니다. * DataSource는 허용되지 않는 값(삭제)을 무시하지만, DataSourceRef는 모든 값을 유지하고 허용되지 않는 값을 지정하면 오류를 생성합니다. (베타) 이 필드를 사용하려면 AnyVolumeDataSource 기능 게이트를 사용하도록 설정해야 합니다. KubernetesReference
resources 리소스는 볼륨에 있어야 하는 최소 리소스를 나타냅니다. RecoverVolumeExpansionFailure 기능을 사용하는 경우 사용자는 이전 값보다 낮지만 클레임의 상태 필드에 기록된 용량보다 높은 리소스 요구 사항을 지정할 수 있습니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources VolumeClaimResourceRequirements
selector 바인딩을 고려할 볼륨에 대한 레이블 쿼리입니다. VolumeClaimSpecSelector
storageClassName 클레임에 필요한 StorageClass의 이름입니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 string
volumeMode volumeMode는 클레임에 필요한 볼륨 유형을 정의합니다. 파일 시스템의 값은 클레임 사양에 포함되지 않은 경우에 암시됩니다. 베타 기능입니다. string
volumeName VolumeName은 이 클레임을 지원하는 PersistentVolume에 대한 바인딩 참조입니다. string

VolumeClaimSpecSelector

Name Description Value
matchExpressions MatchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 ANDed입니다. VolumeClaimSpecSelectorMatchExpressions[]
matchLabels MatchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자가 "In"이고, 값 배열에 "value"만 포함하는 matchExpressions의 요소와 같습니다. 요구 사항은 ANDed입니다. VolumeClaimSpecSelectorMatchLabels

VolumeClaimSpecSelectorMatchExpressions

Name Description Value
key 키는 선택기가 적용되는 레이블 키입니다. string (required)
operator 연산자는 값 집합에 대한 키의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. 'DoesNotExist'
'Exists'
'In'
'NotIn' (required)
values 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn이면 값 배열이 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist이면 값 배열이 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 대체됩니다. string[]

VolumeClaimSpecSelectorMatchLabels

Name Description Value

ARM 템플릿 리소스 정의

인스턴스/brokers 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

Resource format

Microsoft.IoTOperations/instances/brokers 리소스를 만들려면 템플릿에 다음 JSON을 추가합니다.

{
  "type": "Microsoft.IoTOperations/instances/brokers",
  "apiVersion": "2025-07-01-preview",
  "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": {
          "claims": [
            {
              "name": "string"
            }
          ],
          "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": {
          "claims": [
            {
              "name": "string"
            }
          ],
          "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",
    "persistence": {
      "dynamicSettings": {
        "userPropertyKey": "string",
        "userPropertyValue": "string"
      },
      "encryption": {
        "mode": "string"
      },
      "maxSize": "string",
      "persistentVolumeClaimSpec": {
        "accessModes": [ "string" ],
        "dataSource": {
          "apiGroup": "string",
          "kind": "string",
          "name": "string"
        },
        "dataSourceRef": {
          "apiGroup": "string",
          "kind": "string",
          "name": "string",
          "namespace": "string"
        },
        "resources": {
          "claims": [
            {
              "name": "string"
            }
          ],
          "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"
      },
      "retain": {
        "mode": "string"
        // For remaining properties, see BrokerRetainMessagesPolicy objects
      },
      "stateStore": {
        "mode": "string"
        // For remaining properties, see BrokerStateStorePolicy objects
      },
      "subscriberQueue": {
        "mode": "string"
        // For remaining properties, see BrokerSubscriberQueuePolicy objects
      }
    }
  }
}

BrokerRetainMessagesPolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  "mode": "Custom",
  "retainSettings": {
    "dynamic": {
      "mode": "string"
    },
    "topics": [ "string" ]
  }
}

BrokerStateStorePolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  "mode": "Custom",
  "stateStoreSettings": {
    "dynamic": {
      "mode": "string"
    },
    "stateStoreResources": [
      {
        "keys": [ "string" ],
        "keyType": "string"
      }
    ]
  }
}

BrokerSubscriberQueuePolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  "mode": "Custom",
  "subscriberQueueSettings": {
    "dynamic": {
      "mode": "string"
    },
    "subscriberClientIds": [ "string" ],
    "topics": [ "string" ]
  }
}

Property Values

Microsoft.IoTOperations/instances/brokers

Name Description Value
apiVersion api 버전 '2025-07-01-preview'
extendedLocation 리소스의 에지 위치입니다. ExtendedLocation
name 리소스 이름 string

Constraints:
최소 길이 = 3
최대 길이 = 63
패턴 = ^[a-z0-9][a-z0-9-]*[a-z0-9]$(필수)
properties 이 리소스에 대한 리소스별 속성입니다. BrokerProperties
type 리소스 종류 'Microsoft.IoTOperations/instances/brokers'

AdvancedSettings

Name Description Value
clients 모든 클라이언트와 관련된 구성입니다. ClientConfig
encryptInternalTraffic 내부 트래픽의 암호화를 사용하거나 사용하지 않도록 설정하는 설정입니다. 'Disabled'
'Enabled'
internalCerts 인증서 회전 및 프라이빗 키 구성. CertManagerCertOptions

BackendChain

Name Description Value
partitions 원하는 실제 백 엔드 파티션 수입니다. int

Constraints:
최소값 = 1
최대값 = 16(필수)
redundancyFactor 실제 파티션에서 원하는 백 엔드 복제본(Pod) 수입니다. int

Constraints:
최소값 = 1
최대값 = 5(필수)
workers 복제본당 논리 백 엔드 작업자 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16

BrokerDiagnostics

Name Description Value
logs 리소스에 대한 진단 로그 설정입니다. DiagnosticsLogs
metrics 리소스에 대한 메트릭 설정입니다. Metrics
selfCheck 자체 검사 속성입니다. SelfCheck
traces 추적 속성입니다. Traces

BrokerPersistence

Name Description Value
dynamicSettings 클라이언트는 CONNECT/SUBSCRIBE/PUBLISH에서 지정된 사용자 특성 키/값을 설정합니다.
선택적으로 고객이 구성 가능한 사용자 속성을 지정하면 지속성을 동적으로 사용하도록 설정됩니다. 기본 사용자 특성 키는 'aio-persistence'이고 값은 'true'입니다.
BrokerPersistenceDynamicSettings
encryption 지속성 데이터베이스의 암호화와 관련된 설정을 제어합니다. 선택 사항, 기본적으로 암호화를 사용하도록 설정합니다. BrokerPersistenceEncryption
maxSize 디스크에 있는 메시지 버퍼의 최대 크기입니다. persistentVolumeClaimSpec을 사용하여 PVC 템플릿을 지정하는 경우 이 크기는 해당 템플릿의 요청 및 제한 크기로 사용됩니다. PVC 템플릿이 지정되지 않은 경우 로컬 경로 프로비저너가 이 크기 제한으로 요청됩니다. Required. string (required)
persistentVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 영구 볼륨을 마운트합니다. diskBackedMessageBuffer와 동일한 개체이지만 액세스 모드 필드를 로 설정 ReadWriteOncePod해야 한다는 제한이 있습니다.

설정하지 않으면 기본 속성이 있는 기본 PVC가 사용됩니다. 무엇보다도 이 PVC는 로컬 경로 프로비저너를 사용하거나 사용하지 않을 수 있는 클러스터 기본 스토리지 클래스를 사용합니다. 사용자가 이 동작을 설정하지 않은 상태로 두거나 스토리지 클래스 필드 없이 설정하고 클러스터 기본값이 로컬 경로 클래스가 아닌 경우 최적이 아닌 동작을 옵트인하는 것입니다.
VolumeClaimSpec
retain 디스크에 유지해야 하는 토픽의 보존된 메시지를 제어합니다. BrokerRetainMessagesPolicy
stateStore 상태 저장소에 대해 디스크에 유지해야 하는 키를 제어합니다. BrokerStateStorePolicy
subscriberQueue 디스크에 유지해야 하는 구독자 메시지 큐를 제어합니다. 중요: 재연결을 용이하게 하기 위해 이 섹션이 설정되지 않은 경우에도 지속성 설정이 지정된 경우 세션 상태 메타데이터는 항상 디스크에 기록됩니다. BrokerSubscriberQueuePolicy

BrokerPersistenceDynamicSettings

Name Description Value
userPropertyKey 지속성을 사용하도록 설정하는 사용자 속성 키입니다. string (required)
userPropertyValue 지속성을 사용하도록 설정하는 사용자 속성 값입니다. string (required)

BrokerPersistenceEncryption

Name Description Value
mode 암호화가 활성화되어 있는지 여부를 결정합니다. 'Disabled'
'Enabled' (required)

BrokerProperties

Name Description Value
advanced Broker의 고급 설정입니다. AdvancedSettings
cardinality broker의 카디널리티 세부 정보입니다. Cardinality
diagnostics 사양은 Broker 진단 설정의 원하는 ID를 정의합니다. BrokerDiagnostics
diskBackedMessageBuffer 디스크 지원 메시지 버퍼의 설정입니다. DiskBackedMessageBuffer
generateResourceLimits 이 설정은 Kubernetes CPU 리소스 제한이 요청되는지 여부를 제어합니다. 복제본 또는 작업자 수를 비례적으로 늘리면 요청된 CPU 리소스의 양이 증가합니다. 이 설정을 사용하도록 설정하고 CPU 리소스가 부족한 경우 오류가 발생합니다. GenerateResourceLimits
memoryProfile Broker의 메모리 프로필입니다. 'High'
'Low'
'Medium'
'Tiny'
persistence 브로커의 지속성 설정입니다. BrokerPersistence

BrokerRetainMessagesCustomPolicy

Name Description Value
mode 'All'은 모든 보존 메시지를 유지하고, 'None'은 아무 메시지도 유지하지 않으며, 'Custom'은 지정된 주제만 유지합니다. 'Custom' (required)
retainSettings 정책에 대한 설정입니다. BrokerRetainMessagesSettings (required)

BrokerRetainMessagesDynamic

Name Description Value
mode BrokerRetainMessagesCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerRetainMessagesPolicy

Name Description Value
mode BrokerRetainMessagesCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

BrokerRetainMessagesSettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerRetainMessagesDynamic
topics 보존된 메시지가 디스크에 유지되는 토픽 목록입니다. 와일드카드 # 및 +가 지원됩니다. string[]

BrokerStateStoreCustomPolicy

Name Description Value
mode 'All'은 모든 키를 유지하고, 'None'은 아무 키도 유지하지 않으며, 'Custom'은 지정된 키만 유지합니다. 'Custom' (required)
stateStoreSettings 정책에 대한 설정입니다. BrokerStateStorePolicySettings (required)

BrokerStateStoreDynamic

Name Description Value
mode BrokerStateStoreCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerStateStorePolicy

Name Description Value
mode BrokerStateStoreCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

BrokerStateStorePolicyResources

Name Description Value
keys 디스크에 유지할 키 목록(필수)입니다. string[] (required)
keyType 디스크에 유지하는 키입니다. 'Binary'
'Pattern'
'String' (required)

BrokerStateStorePolicySettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerStateStoreDynamic
stateStoreResources 디스크에 유지할 키 및 키 유형 목록입니다. BrokerStateStorePolicyResources[]

BrokerSubscriberQueueCustomPolicy

Name Description Value
mode 'All'은 모든 구독자 큐를 유지하고, 'None'은 아무 것도 유지하지 않으며, 'Custom'은 지정된 큐만 유지합니다. 'Custom' (required)
subscriberQueueSettings 사용자 지정 정책, 모드가 사용자 지정인 경우 필요합니다. 모든 그룹의 가입자 대기열은 디스크에 유지됩니다(논리적 OR). BrokerSubscriberQueueCustomPolicySettings (required)

BrokerSubscriberQueueCustomPolicySettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerSubscriberQueueDynamic
subscriberClientIds 구독자의 클라이언트 ID 목록, 와일드카드 * 지원. string[]
topics 각 구독자에 대해 메시지가 디스크에 유지되는 토픽 목록입니다. 와일드카드 # 및 +가 지원됩니다. string[]

BrokerSubscriberQueueDynamic

Name Description Value
mode BrokerSubscriberQueueCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerSubscriberQueuePolicy

Name Description Value
mode BrokerSubscriberQueueCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

Cardinality

Name Description Value
backendChain 백 엔드 브로커 desired 속성 BackendChain (required)
frontend 프런트 엔드 desired 속성 Frontend (required)

CertManagerCertOptions

Name Description Value
duration 인증서의 수명입니다. Go 시간을 사용하여 지정해야 합니다. 기간 형식(h|m|s). 예를 들어 240시간은 240시간, 45분은 45m입니다. string (required)
privateKey 인증서 프라이빗 키의 구성입니다. CertManagerPrivateKey (required)
renewBefore 인증서 갱신을 시작하는 경우 Go 시간을 사용하여 지정해야 합니다. 기간 형식(h|m|s). 예를 들어 240시간은 240시간, 45분은 45m입니다. string (required)

CertManagerPrivateKey

Name Description Value
algorithm 프라이빗 키에 대한 알고리즘입니다. 'Ec256'
'Ec384'
'Ec521'
'Ed25519'
'Rsa2048'
'Rsa4096'
'Rsa8192' (required)
rotationPolicy cert-manager 프라이빗 키 rotationPolicy. 'Always'
'Never' (required)

ClientConfig

Name Description Value
maxKeepAliveSeconds 클라이언트의 연결 유지(초)의 상한입니다. int

Constraints:
최소값 = 0
최대값 = 65535
maxMessageExpirySeconds 메시지 만료 간격의 상한(초)입니다. int

Constraints:
최소값 = 1
최대값 = 4294967295
maxPacketSizeBytes 패킷의 최대 메시지 크기(바이트)입니다. int

Constraints:
최소값 = 1
최대값 = 268435456
maxReceiveMaximum 클라이언트가 CONNECT 패킷에서 요청할 수 있는 수신 최대값의 상한입니다. int

Constraints:
최소값 = 1
최대값 = 65535
maxSessionExpirySeconds 세션 만료 간격의 상한(초)입니다. int

Constraints:
최소값 = 1
최대값 = 4294967295
subscriberQueueLimit 구독자에 대한 큐에 대기 중인 메시지 수에 대한 제한입니다. SubscriberQueueLimit

DiagnosticsLogs

Name Description Value
level 로그 수준입니다. 예 - 'debug', 'info', 'warn', 'error', 'trace'. string

DiskBackedMessageBuffer

Name Description Value
ephemeralVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 메시지 버퍼에 대한 "제네릭 임시 볼륨"을 탑재합니다. 자세한 내용은 <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes>를 참조하세요. VolumeClaimSpec
maxSize 디스크에 있는 메시지 버퍼의 최대 크기입니다. ephemeralVolumeClaimSpec 또는 persistentVolumeClaimSpec 중 하나를 사용하여 PVC 템플릿을 지정하는 경우 이 크기는 해당 템플릿의 요청 및 제한 크기로 사용됩니다. ephemeralVolumeClaimSpec 또는 persistentVolumeClaimSpec을 지정하지 않으면 emptyDir 볼륨이 이 크기로 제한으로 탑재됩니다. 자세한 내용은 <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir>를 참조하세요. string

Constraints:
패턴 = ^[0-9]+[KMGTPE]$(필수)
persistentVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 메시지 버퍼에 대한 영구 볼륨을 탑재합니다. VolumeClaimSpec

ExtendedLocation

Name Description Value
name 확장된 위치의 이름입니다. string (required)
type ExtendedLocation의 형식입니다. 'CustomLocation' (required)

Frontend

Name Description Value
replicas 원하는 프런트 엔드 인스턴스 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16(필수)
workers 인스턴스당 논리적 프런트 엔드 작업자 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16

GenerateResourceLimits

Name Description Value
cpu CPU 리소스 제한을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'

KubernetesReference

Name Description Value
apiGroup APIGroup은 참조되는 리소스에 대한 그룹입니다. APIGroup을 지정하지 않으면 지정된 종류가 핵심 API 그룹에 있어야 합니다. 다른 타사 형식의 경우 APIGroup이 필요합니다. string
kind 종류는 참조되는 리소스의 유형입니다. string (required)
name 이름은 참조되는 리소스의 이름입니다. string (required)
namespace 네임스페이스는 참조되는 리소스의 네임스페이스입니다. 자원에 네임스페이스가 있는 경우 이 필드가 필요합니다. string

LocalKubernetesReference

Name Description Value
apiGroup APIGroup은 참조되는 리소스에 대한 그룹입니다. APIGroup을 지정하지 않으면 지정된 종류가 핵심 API 그룹에 있어야 합니다. 다른 타사 형식의 경우 APIGroup이 필요합니다. string
kind 종류는 참조되는 리소스의 유형입니다. string (required)
name 이름은 참조되는 리소스의 이름입니다. string (required)

Metrics

Name Description Value
prometheusPort 메트릭을 노출할 prometheus 포트입니다. int

Constraints:
최소값 = 0
최대값 = 65535

SelfCheck

Name Description Value
intervalSeconds 자체 검사 간격입니다. int

Constraints:
최소값 = 30
최대값 = 300
mode 자체 확인을 사용/사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'
timeoutSeconds 자체 검사에 대한 시간 제한입니다. int

Constraints:
최소값 = 5
최대값 = 120

SelfTracing

Name Description Value
intervalSeconds 자체 추적 간격입니다. int

Constraints:
최소값 = 1
최대값 = 300
mode 셀프 추적을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'

SubscriberQueueLimit

Name Description Value
length 메시지가 삭제되기 전에 큐의 최대 길이입니다. int

Constraints:
최소값 = 1
strategy 큐에서 메시지를 삭제하는 데 사용하는 전략입니다. 'DropOldest'
'None'

Traces

Name Description Value
cacheSizeMegabytes 캐시 크기(메가바이트)입니다. int

Constraints:
최소값 = 1
최대값 = 128
mode 추적을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'
selfTracing 자체 추적 속성입니다. SelfTracing
spanChannelCapacity 범위 채널 용량입니다. int

Constraints:
최소값 = 1000
최대값 = 100000

VolumeClaimResourceRequirements

Name Description Value
claims 클레임은 spec.resourceClaims에 정의된 이 컨테이너에서 사용되는 리소스의 이름을 나열합니다.

이는 알파 필드이며 DynamicResourceAllocation 기능 게이트를 사용하도록 설정해야 합니다.

이 필드는 변경할 수 없습니다. 컨테이너에 대해서만 설정할 수 있습니다.
VolumeClaimResourceRequirementsClaims[]
limits 제한은 허용되는 컴퓨팅 리소스의 최대 양을 설명합니다. 추가 정보: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsLimits
requests 요청은 필요한 컴퓨팅 리소스의 최소 양을 설명합니다. 컨테이너에 대한 요청을 생략하면 명시적으로 지정된 경우 Limits로 기본 설정되고, 그렇지 않으면 구현 정의 값으로 설정됩니다. 추가 정보: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsRequests

VolumeClaimResourceRequirementsClaims

Name Description Value
name 리소스의 이름입니다. 이는 spec.resourceClaims의 리소스 이름과 일치해야 합니다. string (required)

VolumeClaimResourceRequirementsLimits

Name Description Value

VolumeClaimResourceRequirementsRequests

Name Description Value

VolumeClaimSpec

Name Description Value
accessModes AccessModes에는 볼륨에 있어야 하는 원하는 액세스 모드가 포함되어 있습니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 string[]
dataSource 이 필드를 사용하여 다음 중 하나를 지정할 수 있습니다. * 기존 VolumeSnapshot 개체(snapshot.storage.k8s.io/VolumeSnapshot) * 기존 PVC(PersistentVolumeClaim) 프로비저닝 관리자 또는 외부 컨트롤러가 지정된 데이터 원본을 지원할 수 있는 경우 지정된 데이터 원본의 내용에 따라 새 볼륨을 만듭니다. AnyVolumeDataSource 기능 게이트를 사용하는 경우 이 필드는 항상 DataSourceRef 필드와 동일한 내용을 갖습니다. LocalKubernetesReference
dataSourceRef 비어있지 않은 볼륨이 필요한 경우 볼륨을 데이터로 채울 개체를 지정합니다. 비어 있지 않은 API 그룹(코어가 아닌 개체) 또는 PersistentVolumeClaim 개체의 모든 로컬 개체일 수 있습니다. 이 필드를 지정하면 지정된 개체의 형식이 설치된 일부 볼륨 채우기 또는 동적 프로비저닝자와 일치하는 경우에만 볼륨 바인딩이 성공합니다. 이 필드는 DataSource 필드의 기능을 대체하므로 두 필드가 모두 비어있지 않은 경우 동일한 값을 가져야 합니다. 이전 버전과의 호환성을 위해 필드 중 하나가 비어 있고 다른 필드가 비어 있지 않으면 두 필드(DataSource 및 DataSourceRef)가 자동으로 동일한 값으로 설정됩니다. DataSource와 DataSourceRef 간에는 두 가지 중요한 차이점이 있습니다. * DataSource는 두 가지 특정 형식의 개체만 허용하지만 DataSourceRef는 비코어 개체와 PersistentVolumeClaim 개체를 허용합니다. * DataSource는 허용되지 않는 값(삭제)을 무시하지만, DataSourceRef는 모든 값을 유지하고 허용되지 않는 값을 지정하면 오류를 생성합니다. (베타) 이 필드를 사용하려면 AnyVolumeDataSource 기능 게이트를 사용하도록 설정해야 합니다. KubernetesReference
resources 리소스는 볼륨에 있어야 하는 최소 리소스를 나타냅니다. RecoverVolumeExpansionFailure 기능을 사용하는 경우 사용자는 이전 값보다 낮지만 클레임의 상태 필드에 기록된 용량보다 높은 리소스 요구 사항을 지정할 수 있습니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources VolumeClaimResourceRequirements
selector 바인딩을 고려할 볼륨에 대한 레이블 쿼리입니다. VolumeClaimSpecSelector
storageClassName 클레임에 필요한 StorageClass의 이름입니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 string
volumeMode volumeMode는 클레임에 필요한 볼륨 유형을 정의합니다. 파일 시스템의 값은 클레임 사양에 포함되지 않은 경우에 암시됩니다. 베타 기능입니다. string
volumeName VolumeName은 이 클레임을 지원하는 PersistentVolume에 대한 바인딩 참조입니다. string

VolumeClaimSpecSelector

Name Description Value
matchExpressions MatchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 ANDed입니다. VolumeClaimSpecSelectorMatchExpressions[]
matchLabels MatchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자가 "In"이고, 값 배열에 "value"만 포함하는 matchExpressions의 요소와 같습니다. 요구 사항은 ANDed입니다. VolumeClaimSpecSelectorMatchLabels

VolumeClaimSpecSelectorMatchExpressions

Name Description Value
key 키는 선택기가 적용되는 레이블 키입니다. string (required)
operator 연산자는 값 집합에 대한 키의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. 'DoesNotExist'
'Exists'
'In'
'NotIn' (required)
values 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn이면 값 배열이 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist이면 값 배열이 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 대체됩니다. string[]

VolumeClaimSpecSelectorMatchLabels

Name Description Value

Usage Examples

Terraform(AzAPI 공급자) 리소스 정의

인스턴스/brokers 리소스 종류는 다음을 대상으로 하는 작업으로 배포할 수 있습니다.

  • Resource groups

각 API 버전에서 변경된 속성 목록은 변경 로그참조하세요.

Resource format

Microsoft.IoTOperations/instances/brokers 리소스를 만들려면 템플릿에 다음 Terraform을 추가합니다.

resource "azapi_resource" "symbolicname" {
  type = "Microsoft.IoTOperations/instances/brokers@2025-07-01-preview"
  name = "string"
  parent_id = "string"
  body = {
    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 = {
            claims = [
              {
                name = "string"
              }
            ]
            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 = {
            claims = [
              {
                name = "string"
              }
            ]
            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"
      persistence = {
        dynamicSettings = {
          userPropertyKey = "string"
          userPropertyValue = "string"
        }
        encryption = {
          mode = "string"
        }
        maxSize = "string"
        persistentVolumeClaimSpec = {
          accessModes = [
            "string"
          ]
          dataSource = {
            apiGroup = "string"
            kind = "string"
            name = "string"
          }
          dataSourceRef = {
            apiGroup = "string"
            kind = "string"
            name = "string"
            namespace = "string"
          }
          resources = {
            claims = [
              {
                name = "string"
              }
            ]
            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"
        }
        retain = {
          mode = "string"
          // For remaining properties, see BrokerRetainMessagesPolicy objects
        }
        stateStore = {
          mode = "string"
          // For remaining properties, see BrokerStateStorePolicy objects
        }
        subscriberQueue = {
          mode = "string"
          // For remaining properties, see BrokerSubscriberQueuePolicy objects
        }
      }
    }
  }
}

BrokerRetainMessagesPolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  mode = "Custom"
  retainSettings = {
    dynamic = {
      mode = "string"
    }
    topics = [
      "string"
    ]
  }
}

BrokerStateStorePolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  mode = "Custom"
  stateStoreSettings = {
    dynamic = {
      mode = "string"
    }
    stateStoreResources = [
      {
        keys = [
          "string"
        ]
        keyType = "string"
      }
    ]
  }
}

BrokerSubscriberQueuePolicy objects

mode 속성을 설정하여 개체 형식을 지정합니다.

사용자 정의의 경우 다음을 사용합니다.

{
  mode = "Custom"
  subscriberQueueSettings = {
    dynamic = {
      mode = "string"
    }
    subscriberClientIds = [
      "string"
    ]
    topics = [
      "string"
    ]
  }
}

Property Values

Microsoft.IoTOperations/instances/brokers

Name Description Value
extendedLocation 리소스의 에지 위치입니다. ExtendedLocation
name 리소스 이름 string

Constraints:
최소 길이 = 3
최대 길이 = 63
패턴 = ^[a-z0-9][a-z0-9-]*[a-z0-9]$(필수)
parent_id 이 리소스의 부모인 리소스의 ID입니다. 형식 리소스의 ID: 인스턴스
properties 이 리소스에 대한 리소스별 속성입니다. BrokerProperties
type 리소스 종류 "Microsoft.IoTOperations/instances/brokers@2025-07-01-preview"

AdvancedSettings

Name Description Value
clients 모든 클라이언트와 관련된 구성입니다. ClientConfig
encryptInternalTraffic 내부 트래픽의 암호화를 사용하거나 사용하지 않도록 설정하는 설정입니다. 'Disabled'
'Enabled'
internalCerts 인증서 회전 및 프라이빗 키 구성. CertManagerCertOptions

BackendChain

Name Description Value
partitions 원하는 실제 백 엔드 파티션 수입니다. int

Constraints:
최소값 = 1
최대값 = 16(필수)
redundancyFactor 실제 파티션에서 원하는 백 엔드 복제본(Pod) 수입니다. int

Constraints:
최소값 = 1
최대값 = 5(필수)
workers 복제본당 논리 백 엔드 작업자 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16

BrokerDiagnostics

Name Description Value
logs 리소스에 대한 진단 로그 설정입니다. DiagnosticsLogs
metrics 리소스에 대한 메트릭 설정입니다. Metrics
selfCheck 자체 검사 속성입니다. SelfCheck
traces 추적 속성입니다. Traces

BrokerPersistence

Name Description Value
dynamicSettings 클라이언트는 CONNECT/SUBSCRIBE/PUBLISH에서 지정된 사용자 특성 키/값을 설정합니다.
선택적으로 고객이 구성 가능한 사용자 속성을 지정하면 지속성을 동적으로 사용하도록 설정됩니다. 기본 사용자 특성 키는 'aio-persistence'이고 값은 'true'입니다.
BrokerPersistenceDynamicSettings
encryption 지속성 데이터베이스의 암호화와 관련된 설정을 제어합니다. 선택 사항, 기본적으로 암호화를 사용하도록 설정합니다. BrokerPersistenceEncryption
maxSize 디스크에 있는 메시지 버퍼의 최대 크기입니다. persistentVolumeClaimSpec을 사용하여 PVC 템플릿을 지정하는 경우 이 크기는 해당 템플릿의 요청 및 제한 크기로 사용됩니다. PVC 템플릿이 지정되지 않은 경우 로컬 경로 프로비저너가 이 크기 제한으로 요청됩니다. Required. string (required)
persistentVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 영구 볼륨을 마운트합니다. diskBackedMessageBuffer와 동일한 개체이지만 액세스 모드 필드를 로 설정 ReadWriteOncePod해야 한다는 제한이 있습니다.

설정하지 않으면 기본 속성이 있는 기본 PVC가 사용됩니다. 무엇보다도 이 PVC는 로컬 경로 프로비저너를 사용하거나 사용하지 않을 수 있는 클러스터 기본 스토리지 클래스를 사용합니다. 사용자가 이 동작을 설정하지 않은 상태로 두거나 스토리지 클래스 필드 없이 설정하고 클러스터 기본값이 로컬 경로 클래스가 아닌 경우 최적이 아닌 동작을 옵트인하는 것입니다.
VolumeClaimSpec
retain 디스크에 유지해야 하는 토픽의 보존된 메시지를 제어합니다. BrokerRetainMessagesPolicy
stateStore 상태 저장소에 대해 디스크에 유지해야 하는 키를 제어합니다. BrokerStateStorePolicy
subscriberQueue 디스크에 유지해야 하는 구독자 메시지 큐를 제어합니다. 중요: 재연결을 용이하게 하기 위해 이 섹션이 설정되지 않은 경우에도 지속성 설정이 지정된 경우 세션 상태 메타데이터는 항상 디스크에 기록됩니다. BrokerSubscriberQueuePolicy

BrokerPersistenceDynamicSettings

Name Description Value
userPropertyKey 지속성을 사용하도록 설정하는 사용자 속성 키입니다. string (required)
userPropertyValue 지속성을 사용하도록 설정하는 사용자 속성 값입니다. string (required)

BrokerPersistenceEncryption

Name Description Value
mode 암호화가 활성화되어 있는지 여부를 결정합니다. 'Disabled'
'Enabled' (required)

BrokerProperties

Name Description Value
advanced Broker의 고급 설정입니다. AdvancedSettings
cardinality broker의 카디널리티 세부 정보입니다. Cardinality
diagnostics 사양은 Broker 진단 설정의 원하는 ID를 정의합니다. BrokerDiagnostics
diskBackedMessageBuffer 디스크 지원 메시지 버퍼의 설정입니다. DiskBackedMessageBuffer
generateResourceLimits 이 설정은 Kubernetes CPU 리소스 제한이 요청되는지 여부를 제어합니다. 복제본 또는 작업자 수를 비례적으로 늘리면 요청된 CPU 리소스의 양이 증가합니다. 이 설정을 사용하도록 설정하고 CPU 리소스가 부족한 경우 오류가 발생합니다. GenerateResourceLimits
memoryProfile Broker의 메모리 프로필입니다. 'High'
'Low'
'Medium'
'Tiny'
persistence 브로커의 지속성 설정입니다. BrokerPersistence

BrokerRetainMessagesCustomPolicy

Name Description Value
mode 'All'은 모든 보존 메시지를 유지하고, 'None'은 아무 메시지도 유지하지 않으며, 'Custom'은 지정된 주제만 유지합니다. 'Custom' (required)
retainSettings 정책에 대한 설정입니다. BrokerRetainMessagesSettings (required)

BrokerRetainMessagesDynamic

Name Description Value
mode BrokerRetainMessagesCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerRetainMessagesPolicy

Name Description Value
mode BrokerRetainMessagesCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

BrokerRetainMessagesSettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerRetainMessagesDynamic
topics 보존된 메시지가 디스크에 유지되는 토픽 목록입니다. 와일드카드 # 및 +가 지원됩니다. string[]

BrokerStateStoreCustomPolicy

Name Description Value
mode 'All'은 모든 키를 유지하고, 'None'은 아무 키도 유지하지 않으며, 'Custom'은 지정된 키만 유지합니다. 'Custom' (required)
stateStoreSettings 정책에 대한 설정입니다. BrokerStateStorePolicySettings (required)

BrokerStateStoreDynamic

Name Description Value
mode BrokerStateStoreCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerStateStorePolicy

Name Description Value
mode BrokerStateStoreCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

BrokerStateStorePolicyResources

Name Description Value
keys 디스크에 유지할 키 목록(필수)입니다. string[] (required)
keyType 디스크에 유지하는 키입니다. 'Binary'
'Pattern'
'String' (required)

BrokerStateStorePolicySettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerStateStoreDynamic
stateStoreResources 디스크에 유지할 키 및 키 유형 목록입니다. BrokerStateStorePolicyResources[]

BrokerSubscriberQueueCustomPolicy

Name Description Value
mode 'All'은 모든 구독자 큐를 유지하고, 'None'은 아무 것도 유지하지 않으며, 'Custom'은 지정된 큐만 유지합니다. 'Custom' (required)
subscriberQueueSettings 사용자 지정 정책, 모드가 사용자 지정인 경우 필요합니다. 모든 그룹의 가입자 대기열은 디스크에 유지됩니다(논리적 OR). BrokerSubscriberQueueCustomPolicySettings (required)

BrokerSubscriberQueueCustomPolicySettings

Name Description Value
dynamic MQTT 클라이언트가 사용자 특성을 통해 MQTTv5 디스크 지속성을 요청할 수 있는지 여부를 제어합니다. 다른 그룹(논리적 OR)과 함께 작동합니다. BrokerSubscriberQueueDynamic
subscriberClientIds 구독자의 클라이언트 ID 목록, 와일드카드 * 지원. string[]
topics 각 구독자에 대해 메시지가 디스크에 유지되는 토픽 목록입니다. 와일드카드 # 및 +가 지원됩니다. string[]

BrokerSubscriberQueueDynamic

Name Description Value
mode BrokerSubscriberQueueCustomPolicy의 모드입니다. 'Disabled'
'Enabled' (required)

BrokerSubscriberQueuePolicy

Name Description Value
mode BrokerSubscriberQueueCustomPolicy 형식에 대해 'Custom'으로 설정합니다. 'Custom' (required)

Cardinality

Name Description Value
backendChain 백 엔드 브로커 desired 속성 BackendChain (required)
frontend 프런트 엔드 desired 속성 Frontend (required)

CertManagerCertOptions

Name Description Value
duration 인증서의 수명입니다. Go 시간을 사용하여 지정해야 합니다. 기간 형식(h|m|s). 예를 들어 240시간은 240시간, 45분은 45m입니다. string (required)
privateKey 인증서 프라이빗 키의 구성입니다. CertManagerPrivateKey (required)
renewBefore 인증서 갱신을 시작하는 경우 Go 시간을 사용하여 지정해야 합니다. 기간 형식(h|m|s). 예를 들어 240시간은 240시간, 45분은 45m입니다. string (required)

CertManagerPrivateKey

Name Description Value
algorithm 프라이빗 키에 대한 알고리즘입니다. 'Ec256'
'Ec384'
'Ec521'
'Ed25519'
'Rsa2048'
'Rsa4096'
'Rsa8192' (required)
rotationPolicy cert-manager 프라이빗 키 rotationPolicy. 'Always'
'Never' (required)

ClientConfig

Name Description Value
maxKeepAliveSeconds 클라이언트의 연결 유지(초)의 상한입니다. int

Constraints:
최소값 = 0
최대값 = 65535
maxMessageExpirySeconds 메시지 만료 간격의 상한(초)입니다. int

Constraints:
최소값 = 1
최대값 = 4294967295
maxPacketSizeBytes 패킷의 최대 메시지 크기(바이트)입니다. int

Constraints:
최소값 = 1
최대값 = 268435456
maxReceiveMaximum 클라이언트가 CONNECT 패킷에서 요청할 수 있는 수신 최대값의 상한입니다. int

Constraints:
최소값 = 1
최대값 = 65535
maxSessionExpirySeconds 세션 만료 간격의 상한(초)입니다. int

Constraints:
최소값 = 1
최대값 = 4294967295
subscriberQueueLimit 구독자에 대한 큐에 대기 중인 메시지 수에 대한 제한입니다. SubscriberQueueLimit

DiagnosticsLogs

Name Description Value
level 로그 수준입니다. 예 - 'debug', 'info', 'warn', 'error', 'trace'. string

DiskBackedMessageBuffer

Name Description Value
ephemeralVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 메시지 버퍼에 대한 "제네릭 임시 볼륨"을 탑재합니다. 자세한 내용은 <https://kubernetes.io/docs/concepts/storage/ephemeral-volumes/#generic-ephemeral-volumes>를 참조하세요. VolumeClaimSpec
maxSize 디스크에 있는 메시지 버퍼의 최대 크기입니다. ephemeralVolumeClaimSpec 또는 persistentVolumeClaimSpec 중 하나를 사용하여 PVC 템플릿을 지정하는 경우 이 크기는 해당 템플릿의 요청 및 제한 크기로 사용됩니다. ephemeralVolumeClaimSpec 또는 persistentVolumeClaimSpec을 지정하지 않으면 emptyDir 볼륨이 이 크기로 제한으로 탑재됩니다. 자세한 내용은 <https://kubernetes.io/docs/concepts/storage/volumes/#emptydir>를 참조하세요. string

Constraints:
패턴 = ^[0-9]+[KMGTPE]$(필수)
persistentVolumeClaimSpec 지정된 영구 볼륨 클레임 템플릿을 사용하여 메시지 버퍼에 대한 영구 볼륨을 탑재합니다. VolumeClaimSpec

ExtendedLocation

Name Description Value
name 확장된 위치의 이름입니다. string (required)
type ExtendedLocation의 형식입니다. 'CustomLocation' (required)

Frontend

Name Description Value
replicas 원하는 프런트 엔드 인스턴스 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16(필수)
workers 인스턴스당 논리적 프런트 엔드 작업자 수(Pod)입니다. int

Constraints:
최소값 = 1
최대값 = 16

GenerateResourceLimits

Name Description Value
cpu CPU 리소스 제한을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'

KubernetesReference

Name Description Value
apiGroup APIGroup은 참조되는 리소스에 대한 그룹입니다. APIGroup을 지정하지 않으면 지정된 종류가 핵심 API 그룹에 있어야 합니다. 다른 타사 형식의 경우 APIGroup이 필요합니다. string
kind 종류는 참조되는 리소스의 유형입니다. string (required)
name 이름은 참조되는 리소스의 이름입니다. string (required)
namespace 네임스페이스는 참조되는 리소스의 네임스페이스입니다. 자원에 네임스페이스가 있는 경우 이 필드가 필요합니다. string

LocalKubernetesReference

Name Description Value
apiGroup APIGroup은 참조되는 리소스에 대한 그룹입니다. APIGroup을 지정하지 않으면 지정된 종류가 핵심 API 그룹에 있어야 합니다. 다른 타사 형식의 경우 APIGroup이 필요합니다. string
kind 종류는 참조되는 리소스의 유형입니다. string (required)
name 이름은 참조되는 리소스의 이름입니다. string (required)

Metrics

Name Description Value
prometheusPort 메트릭을 노출할 prometheus 포트입니다. int

Constraints:
최소값 = 0
최대값 = 65535

SelfCheck

Name Description Value
intervalSeconds 자체 검사 간격입니다. int

Constraints:
최소값 = 30
최대값 = 300
mode 자체 확인을 사용/사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'
timeoutSeconds 자체 검사에 대한 시간 제한입니다. int

Constraints:
최소값 = 5
최대값 = 120

SelfTracing

Name Description Value
intervalSeconds 자체 추적 간격입니다. int

Constraints:
최소값 = 1
최대값 = 300
mode 셀프 추적을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'

SubscriberQueueLimit

Name Description Value
length 메시지가 삭제되기 전에 큐의 최대 길이입니다. int

Constraints:
최소값 = 1
strategy 큐에서 메시지를 삭제하는 데 사용하는 전략입니다. 'DropOldest'
'None'

Traces

Name Description Value
cacheSizeMegabytes 캐시 크기(메가바이트)입니다. int

Constraints:
최소값 = 1
최대값 = 128
mode 추적을 사용하거나 사용하지 않도록 설정할 토글입니다. 'Disabled'
'Enabled'
selfTracing 자체 추적 속성입니다. SelfTracing
spanChannelCapacity 범위 채널 용량입니다. int

Constraints:
최소값 = 1000
최대값 = 100000

VolumeClaimResourceRequirements

Name Description Value
claims 클레임은 spec.resourceClaims에 정의된 이 컨테이너에서 사용되는 리소스의 이름을 나열합니다.

이는 알파 필드이며 DynamicResourceAllocation 기능 게이트를 사용하도록 설정해야 합니다.

이 필드는 변경할 수 없습니다. 컨테이너에 대해서만 설정할 수 있습니다.
VolumeClaimResourceRequirementsClaims[]
limits 제한은 허용되는 컴퓨팅 리소스의 최대 양을 설명합니다. 추가 정보: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsLimits
requests 요청은 필요한 컴퓨팅 리소스의 최소 양을 설명합니다. 컨테이너에 대한 요청을 생략하면 명시적으로 지정된 경우 Limits로 기본 설정되고, 그렇지 않으면 구현 정의 값으로 설정됩니다. 추가 정보: https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/ VolumeClaimResourceRequirementsRequests

VolumeClaimResourceRequirementsClaims

Name Description Value
name 리소스의 이름입니다. 이는 spec.resourceClaims의 리소스 이름과 일치해야 합니다. string (required)

VolumeClaimResourceRequirementsLimits

Name Description Value

VolumeClaimResourceRequirementsRequests

Name Description Value

VolumeClaimSpec

Name Description Value
accessModes AccessModes에는 볼륨에 있어야 하는 원하는 액세스 모드가 포함되어 있습니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#access-modes-1 string[]
dataSource 이 필드를 사용하여 다음 중 하나를 지정할 수 있습니다. * 기존 VolumeSnapshot 개체(snapshot.storage.k8s.io/VolumeSnapshot) * 기존 PVC(PersistentVolumeClaim) 프로비저닝 관리자 또는 외부 컨트롤러가 지정된 데이터 원본을 지원할 수 있는 경우 지정된 데이터 원본의 내용에 따라 새 볼륨을 만듭니다. AnyVolumeDataSource 기능 게이트를 사용하는 경우 이 필드는 항상 DataSourceRef 필드와 동일한 내용을 갖습니다. LocalKubernetesReference
dataSourceRef 비어있지 않은 볼륨이 필요한 경우 볼륨을 데이터로 채울 개체를 지정합니다. 비어 있지 않은 API 그룹(코어가 아닌 개체) 또는 PersistentVolumeClaim 개체의 모든 로컬 개체일 수 있습니다. 이 필드를 지정하면 지정된 개체의 형식이 설치된 일부 볼륨 채우기 또는 동적 프로비저닝자와 일치하는 경우에만 볼륨 바인딩이 성공합니다. 이 필드는 DataSource 필드의 기능을 대체하므로 두 필드가 모두 비어있지 않은 경우 동일한 값을 가져야 합니다. 이전 버전과의 호환성을 위해 필드 중 하나가 비어 있고 다른 필드가 비어 있지 않으면 두 필드(DataSource 및 DataSourceRef)가 자동으로 동일한 값으로 설정됩니다. DataSource와 DataSourceRef 간에는 두 가지 중요한 차이점이 있습니다. * DataSource는 두 가지 특정 형식의 개체만 허용하지만 DataSourceRef는 비코어 개체와 PersistentVolumeClaim 개체를 허용합니다. * DataSource는 허용되지 않는 값(삭제)을 무시하지만, DataSourceRef는 모든 값을 유지하고 허용되지 않는 값을 지정하면 오류를 생성합니다. (베타) 이 필드를 사용하려면 AnyVolumeDataSource 기능 게이트를 사용하도록 설정해야 합니다. KubernetesReference
resources 리소스는 볼륨에 있어야 하는 최소 리소스를 나타냅니다. RecoverVolumeExpansionFailure 기능을 사용하는 경우 사용자는 이전 값보다 낮지만 클레임의 상태 필드에 기록된 용량보다 높은 리소스 요구 사항을 지정할 수 있습니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources VolumeClaimResourceRequirements
selector 바인딩을 고려할 볼륨에 대한 레이블 쿼리입니다. VolumeClaimSpecSelector
storageClassName 클레임에 필요한 StorageClass의 이름입니다. 추가 정보: https://kubernetes.io/docs/concepts/storage/persistent-volumes#class-1 string
volumeMode volumeMode는 클레임에 필요한 볼륨 유형을 정의합니다. 파일 시스템의 값은 클레임 사양에 포함되지 않은 경우에 암시됩니다. 베타 기능입니다. string
volumeName VolumeName은 이 클레임을 지원하는 PersistentVolume에 대한 바인딩 참조입니다. string

VolumeClaimSpecSelector

Name Description Value
matchExpressions MatchExpressions는 레이블 선택기 요구 사항 목록입니다. 요구 사항은 ANDed입니다. VolumeClaimSpecSelectorMatchExpressions[]
matchLabels MatchLabels는 {key,value} 쌍의 맵입니다. matchLabels 맵의 단일 {key,value}는 키 필드가 "key"이고, 연산자가 "In"이고, 값 배열에 "value"만 포함하는 matchExpressions의 요소와 같습니다. 요구 사항은 ANDed입니다. VolumeClaimSpecSelectorMatchLabels

VolumeClaimSpecSelectorMatchExpressions

Name Description Value
key 키는 선택기가 적용되는 레이블 키입니다. string (required)
operator 연산자는 값 집합에 대한 키의 관계를 나타냅니다. 유효한 연산자는 In, NotIn, Exists 및 DoesNotExist입니다. 'DoesNotExist'
'Exists'
'In'
'NotIn' (required)
values 값은 문자열 값의 배열입니다. 연산자가 In 또는 NotIn이면 값 배열이 비어 있지 않아야 합니다. 연산자가 Exists 또는 DoesNotExist이면 값 배열이 비어 있어야 합니다. 이 배열은 전략적 병합 패치 중에 대체됩니다. string[]

VolumeClaimSpecSelectorMatchLabels

Name Description Value