런타임 컨텍스트에 따라 다양한 인수 및 주석을 사용하여 Dapr을 구성할 수 있습니다. Azure Container Apps에서 사용할 수 있는 Dapr 구성은 애플리케이션 범위 변경으로 간주됩니다. 여러 수정 모드에서 컨테이너 앱을 실행하는 경우 이러한 설정을 변경해도 새 수정 버전이 만들어지지 않습니다. 대신, 모든 기존 수정 버전이 최신 값으로 구성되도록 다시 시작됩니다.
Azure Container Apps는 Dapr을 사용하도록 설정하고 구성할 수 있는 세 가지 채널을 제공합니다.
- Azure CLI
- Bicep 또는 ARM(Azure Resource Manager) 템플릿과 같은 IaC(Infrastructure as Code) 템플릿
- Azure Portal
다음 표에서는 Azure Container Apps에서 Dapr을 사용하도록 설정하기 위해 현재 지원되는 Dapr 사이드카 구성 목록을 간략하게 설명합니다.
컨테이너 앱 CLI | 템플릿 필드 | 설명 |
---|---|---|
--enable-dapr |
dapr.enabled |
컨테이너 앱에서 Dapr을 사용하도록 설정합니다. |
--dapr-app-port |
dapr.appPort |
애플리케이션이 수신하는 포트는 Dapr이 애플리케이션과 통신하는 데 사용할 것입니다. |
--dapr-app-protocol |
dapr.appProtocol |
애플리케이션에서 사용 중인 프로토콜을 Dapr에 알려줍니다. 유효한 옵션은 http 또는 grpc 입니다. 기본 설정은 .입니다 http . |
--dapr-app-id |
dapr.appId |
서비스 검색, 상태 캡슐화 및 pub/sub 소비자 ID에 사용되는 컨테이너 앱에 대한 고유한 Dapr 식별자입니다. |
--dapr-max-request-size |
dapr.httpMaxRequestSize |
대용량 파일 업로드를 처리하기 위해 요청 본문 http 및 grpc 서버의 최대 크기를 설정합니다. 기본 설정은 .입니다 4 MB . |
--dapr-read-buffer-size |
dapr.httpReadBufferSize |
다중 KB 헤더를 보낼 때 처리할 http 헤더 읽기 버퍼의 최대 크기를 설정합니다. 기본 설정은 .입니다 4 KB . |
--dapr-api-logging |
dapr.enableApiLogging |
애플리케이션에서 Dapr 사이드카로의 API 호출을 볼 수 있습니다. |
--dapr-log-level |
dapr.logLevel |
Dapr 사이드카의 로그 수준을 설정합니다. 허용되는 값: 디버그, 오류, 정보, 경고 기본 설정은 .입니다 info . |
--dapr-app-health-enabled |
dapr.appHealth.enabled |
선택적 구성으로 부울 형식을 사용하여 컨테이너 앱의 앱 상태 점검을 활성화합니다. 기본 설정은 .입니다 false . |
--dapr-app-health-path |
dapr.appHealth.path |
앱 채널이 HTTP일 때 Dapr이 상태 프로브에 대해 호출하는 경로를 설정합니다. 앱 채널이 gRPC를 사용하는 경우 이 값은 무시됩니다. 기본 설정은 .입니다 /healthz . |
--dapr-app-health-probe-interval |
dapr.appHealth.probeIntervalSeconds |
각 상태 프로브 사이의 시간(초)입니다. 기본 설정은 .입니다 3 . |
--dapr-app-health-probe-timeout |
dapr.appHealth.probeTimeoutMilliseconds |
상태 프로브 요청에 대한 시간 제한(밀리초)입니다. 이 값은 값보다 probeIntervalSeconds 작아야 합니다. 기본 설정은 .입니다 500 . |
--dapr-app-health-threshold |
dapr.appHealth.threshold |
앱이 비정상으로 간주되기 전의 최대 연속 오류 수입니다. 기본 설정은 .입니다 3 . |
--dapr-max-concurrency |
dapr.maxConcurrency |
애플리케이션의 동시성을 제한합니다. 유효한 값은 .보다 0 큰 숫자입니다.
-1 는 동시성에 제한이 없음을 의미합니다. |
CLI 사용
Azure CLI를 사용하여 컨테이너 앱에서 Dapr을 사용하도록 설정할 수 있습니다.
az containerapp dapr enable
Bicep 또는 ARM 사용
IaC 템플릿을 사용하는 경우 컨테이너 앱 리소스 정의의 properties.configuration
섹션에서 다음 인수를 지정합니다.
dapr: {
enabled: true
appId: 'nodeapp'
appProtocol: 'http'
appPort: 3000
httpReadBufferSize: 30
httpMaxRequestSize: 10
logLevel: 'debug'
enableApiLogging: true
appHealth: {
enabled: true
path: '/health'
probeIntervalSeconds: 3
probeTimeoutMilliseconds: 1000
threshold: 3
},
maxConcurrency: 10
}
Azure 포털 사용하기
컨테이너 앱의 포털 보기를 통해 Dapr을 사용하도록 설정할 수도 있습니다.
참고 항목
시작하기 전에 사용자 고유의 Dapr 구성 요소를 이미 만들었는지 확인합니다. 포털에서 컨테이너 앱 환경을 통해 Dapr 구성 요소를 연결할 수 있습니다.
Azure Portal에서 컨테이너 앱으로 이동하고 왼쪽 메뉴의 설정 아래에서 Dapr을 선택합니다.
기본적으로 Dapr은 사용되지 않습니다. 사용을 선택하여 Dapr 설정을 확장합니다.
구성 요소 앱 ID를 입력하고 적절한 제목을 선택합니다. 해당하는 경우 구성 요소 헤더 아래에서 컨테이너 앱 환경에 Dapr 구성 요소를 추가하고 관리하는 링크를 선택합니다.