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 |
---|