다음을 통해 공유


Azure Arc의 Azure Container Apps(미리 보기)

Azure Arc 지원 AKS 또는 AKS-HCI 클러스터에서 Container Apps를 실행할 수 있습니다.

Azure Arc 지원 Kubernetes 클러스터에서 실행하면 다음이 가능합니다.

  • Container Apps의 기능을 활용하는 개발자
  • IT 관리자는 내부 인프라에서 Container Apps를 호스팅하여 기업 규정 준수를 유지합니다.

Azure Container Apps를 실행하도록 Azure Arc 지원 Kubernetes 클러스터 설정을 통해 Container Apps용 Kubernetes 클러스터를 설정하는 방법을 알아봅니다.

클러스터를 구성할 때 다음 작업을 수행합니다.

공개 미리 보기 제한 사항

다음 공개 미리 보기 제한 사항은 Azure Arc 지원 Kubernetes의 Azure Container Apps에 적용됩니다.

제한 사항 세부 정보
지원되는 Azure 지역 미국 동부, 서유럽, 동아시아
클러스터 네트워킹 요구 사항 LoadBalancer 서비스 형식을 지원해야 합니다.
노드 OS 요구 사항 Linux 전용입니다.
기능: 관리되는 ID 사용할 수 없음
기능: 관리되는 ID를 사용하여 ACR에서 이미지 끌어오기 사용할 수 없음(관리되는 ID에 따라 다름)
로그 Log Analytics는 클러스터 확장을 사용하여 구성해야 합니다. 애플리케이션별 아님

Important

AKS-HCI에 배포하는 경우 확장을 설치하기 전에 HAProxy를 부하 분산 장치로 설정했는지 확인합니다.

Container Apps 확장에서 만들어진 리소스

Container Apps 확장이 Azure Arc 지원 Kubernetes 클러스터에 설치되면 지정된 릴리스 네임스페이스에 여러 리소스가 만들어집니다. 이러한 리소스를 사용하면 클러스터가 Microsoft.App 리소스 공급자의 확장이 되어 앱 관리 및 운영을 지원할 수 있습니다.

필요에 따라 이벤트 기반 크기 조정을 위해 확장이 KEDA를 설치하도록 선택할 수 있습니다. 그러나 클러스터에는 하나의 KEDA 설치만 허용됩니다. 기존 설치가 있는 경우 클러스터 확장을 설치할 때 KEDA 설치를 사용하지 않도록 설정합니다.

다음 표에는 만들어진 각 수정 버전의 역할이 설명되어 있습니다.

Pod 설명 인스턴스 수 CPU 메모리 Type
<extensionName>-k8se-activator 크기 조정 파이프라인의 일부로 사용 2 100millicpu 500 MB ReplicaSet
<extensionName>-k8se-billing 청구 레코드 생성 - Azure Arc 지원 Kubernetes의 Azure Container Apps는 미리 보기 기간 동안 무료입니다. 3 100millicpu 100MB ReplicaSet
<extensionName>-k8se-containerapp-controller 클러스터에 리소스를 만들고 구성 요소의 상태를 유지 관리하는 핵심 운영자 Pod입니다. 2 100millicpu 1GB ReplicaSet
<extensionName>-k8se-envoy 모든 데이터 평면 http 요청에 대한 프런트 엔드 프록시 계층. 인바운드 트래픽을 올바른 앱으로 라우팅합니다. 3 1코어 1,536MB ReplicaSet
<extensionName>-k8se-envoy-controller Envoy 구성을 생성하는 연산자 2 200millicpu 500 MB ReplicaSet
<extensionName>-k8se-event-processor 시스템에서 사용 가능한 첫 번째 인스턴스를 가져오는 동안 0으로 크기가 조정된 앱에 도움이 되는 대체 라우팅 대상입니다. 2 100millicpu 500 MB ReplicaSet
<extensionName>-k8se-http-scaler KEDA에 크기 조정 정보를 제공하기 위해 인바운드 요청 볼륨을 모니터링합니다. 1 100millicpu 500 MB ReplicaSet
<extensionName>-k8se-keda-cosmosdb-scaler KEDA Cosmos DB 배율 조정기 1 10분 128MB ReplicaSet
<extensionName>-k8se-keda-metrics-apiserver KEDA 메트릭 서버 1 1코어 1,000MB ReplicaSet
<extensionName>-k8se-keda-operator 0/1 ~ N개 인스턴스로 워크로드 스케일 인 및 스케일 아웃 1 100millicpu 500 MB ReplicaSet
<extensionName>-k8se-log-processor 앱 및 기타 구성 요소에서 로그를 수집하고 Log Analytics로 보냅니다. 2 200millicpu 500 MB DaemonSet
<extensionName>-k8se-mdm 메트릭 및 로그 에이전트 2 500millicpu 500 MB ReplicaSet
dapr-metrics Dapr 메트릭 Pod 1 100millicpu 500 MB ReplicaSet
dapr-operator Dapr에 대한 구성 요소 업데이트 및 서비스 엔드포인트를 관리합니다. 1 100millicpu 500 MB ReplicaSet
dapr-placement-server 작업자에만 사용 - 작업자 인스턴스를 Pod에 매핑하는 매핑 테이블을 만듭니다. 1 100millicpu 500 MB StatefulSet
dapr-sentry 서비스 간의 mTLS를 관리하고 CA 역할을 합니다. 2 800millicpu 200MB ReplicaSet

Azure Arc의 Azure Container Apps(미리 보기)에 대한 FAQ

가격은 얼마인가요?

Azure Arc 지원 Kubernetes의 Azure Container Apps는 공개 미리 보기 기간 동안 무료입니다.

어떤 Container Apps 기능이 지원되나요?

미리 보기 기간 동안 특정 Azure 컨테이너 앱 기능의 유효성이 검사됩니다. 지원되는 경우 Azure Portal의 왼쪽 탐색 옵션이 활성화됩니다. 아직 지원되지 않는 기능은 회색으로 표시됩니다.

관리 ID를 지원하나요?

관리 ID는 지원되지 않습니다. Azure Arc에서 실행할 때 앱에 관리 ID를 할당할 수 없습니다. 앱에 다른 Azure 리소스 작업을 위한 ID가 필요한 경우 대신 애플리케이션 서비스 주체를 사용하는 것이 좋습니다.

스케일링 한도가 있나요?

Azure Arc 지원 Kubernetes에서 Azure Container Apps와 함께 배포된 모든 애플리케이션은 기본 Kubernetes 클러스터의 제한 내에서 크기 조정할 수 있습니다. 클러스터에 사용 가능한 컴퓨팅 리소스(주로 CPU 및 메모리)가 부족하면 애플리케이션은 Kubernetes가 사용 가능한 리소스로 예약할 수 있는 애플리케이션 인스턴스 수로 스케일링됩니다.

어떤 로그가 수집되나요?

시스템 구성 요소와 애플리케이션 모두에 대한 로그는 표준 출력에 기록됩니다.

두 로그 유형 모두를 표준 Kubernetes 도구를 사용하여 분석을 위해 수집할 수 있습니다. 또한 Log Analytics 작업 영역을 사용하여 애플리케이션 환경 클러스터 확장을 구성할 수 있으며 모든 로그를 해당 작업 영역으로 보냅니다.

기본적으로 시스템 구성 요소의 로그는 Azure 팀으로 전송됩니다. 애플리케이션 로그는 전송되지 않습니다. logProcessor.enabled=false를 확장 구성 설정으로 설정하여 이러한 로그가 전송되지 않도록 방지할 수 있습니다. 이 구성 설정은 Log Analytics 작업 영역에도 애플리케이션이 전달되지 않습니다. 로그 프로세서를 사용하지 않도록 설정하면 지원 사례에 필요한 시간에 영향을 줄 수 있으며 다른 방법을 통해 표준 출력에서 로그를 수집하라는 메시지가 표시됩니다.

공급자 등록 오류가 표시되는 경우 어떻게 해야 하나요?

Azure Container Apps 연결된 환경 리소스를 만들 때 일부 구독에 "등록된 리소스 공급자를 찾을 수 없음" 오류가 표시될 수 있습니다. 오류 세부 정보에는 유효한 것으로 간주되는 위치 및 API 버전 세트가 포함될 수 있습니다. 이 오류 메시지가 반환되면 구독을 Microsoft.App 공급자에 다시 등록해야 합니다. 공급자를 다시 등록해도 기존 애플리케이션이나 API에는 영향을 미치지 않습니다. 다시 등록하려면 Azure CLI를 사용하여 az provider register --namespace Microsoft.App --wait를 실행합니다. 그런 다음 연결된 환경 명령을 다시 시도합니다.

Windows 노드에 확장을 설치할 수 있나요?

아니요. Windows 노드에 확장을 설치할 수 없습니다. 확장은 Linux 노드에 설치를 지원합니다.

Arm64 기반 클러스터에 Container Apps 확장을 배포할 수 있나요?

Arm64 기반 클러스터는 현재 지원되지 않습니다.

확장 릴리스 정보

Container Apps 확장 v1.0.46(2022년 12월)

  • Container Apps 확장의 최초 공개 미리 보기 릴리스

Container Apps 확장 v1.0.47(2023년 1월)

  • Envoy를 1.0.24로 업그레이드

Container Apps 확장 v1.0.48(2023년 2월)

  • EasyAuth 컨테이너에 프로브 추가
  • dapr-operator에 대한 메모리 제한 증가
  • 플랫폼 헤더 덮어쓰기 방지 추가

Container Apps 확장 v1.0.49(2023년 2월)

  • KEDA를 2.9.1로, Dapr을 1.9.5로 업그레이드
  • Envoy 컨트롤러 리소스 제한을 200m CPU로 늘림
  • Container App Controller 리소스 제한을 1GB 메모리로 늘림
  • EasyAuth 사이드카 리소스 제한을 50m CPU로 줄임
  • 누락된 메트릭 값에 대한 KEDA 오류 로깅 해결

Container Apps 확장 v1.0.50(2023년 3월)

  • 퍼블릭 클라우드와 동기화된 업데이트된 로깅 이미지

Container Apps 확장 v1.5.1(2023년 4월)

  • 새 버전 관리 번호 형식
  • Dapr을 1.10.4로 업그레이드
  • 새 수정 버전을 배포한 후 Envoy 규모 유지 관리
  • 기본 시작 프로브가 컨테이너에 추가되는 시점으로 변경. 개발자가 시작 및 준비 프로브 중 하나만 정의할 경우 기본 시작 프로브가 추가됨
  • 사용자 지정 컨테이너에 CONTAINER_APP_REPLICA_NAME 환경 변수 추가
  • 여러 수정 버전이 중지된 경우 성능 향상

Container Apps 확장 v1.12.8(2023년 6월)

  • OSS Fluent Bit를 2.1.2로, Dapr을 1.10.6으로 업데이트
  • 사용자 지정 포트에 노출되는 컨테이너 레지스트리에 대한 지원
  • 컨테이너 앱이 중지될 때 수정 버전 활성화/비활성화 사용
  • init 컨테이너를 반환하지 않는 수정 버전 목록 수정
  • cors 정책에 대해 기본 허용 헤더가 추가됨

Container Apps 확장 v1.12.9(2023년 7월)

  • EasyAuth 사이드카 컨테이너에 대한 부 업데이트
  • 확장 모니터링 에이전트 업데이트

Container Apps 확장 v1.17.8(2023년 8월)

  • EasyAuth를 1.6.16으로, Dapr을 1.10.8로, Envoy를 1.25.6으로 업데이트
  • Azure Container App 작업에 대한 볼륨 탑재 지원 추가
  • TCP 수신 유형을 사용하는 애플리케이션에 대한 IP 제한을 추가함
  • 노출된 포트가 여러 개 있는 Container Apps에 대한 지원을 추가함

Container Apps 확장 v1.23.5(2023년 12월)

  • Envoy를 1.27.2로, KEDA를 v2.10.0으로, EasyAuth를 1.6.20으로, Dapr을 1.11로 업데이트
  • Envoy를 최대 TLS 1.3으로 설정
  • 로그 프로세서 Pod에서 충돌을 해결하기 위한 수정 사항
  • 이미지 끌어오기 비밀 검색 문제에 대한 수정 사항
  • 가능한 경우 사용 가능한 노드에 배포하도록 Envoy 배치 업데이트
  • 수정 버전 충돌의 결과로 컨테이너 앱을 프로비전하지 못한 경우 프로비전 상태를 실패로 설정

Container Apps 확장 v1.30.6(2024년 1월)

  • KEDA를 v2.12로, Envoy SC 이미지를 v1.0.4로, Dapr 이미지를 v1.11.6으로 업데이트
  • Envoy 경로에 대한 기본 응답 시간 제한을 1,800초로 추가함
  • Fluent bit 기본 로그 수준을 경로로 변경함
  • 로그 내보내기를 보장하기 위해 작업 Pod 삭제 지연
  • 실패한 작업 실행에 대한 작업 Pod 삭제 문제를 해결함
  • 일시 중단 상태의 작업이 Pod를 삭제하지 못했는지 확인
  • TCP 애플리케이션에 대한 HTTPOptions를 확인하지 않도록 업데이트
  • 애플리케이션이 HTTP 또는 HTTPS에서 수신 대기하도록 허용
  • 작업을 일시 중단하는 기능 추가
  • KEDA 배율 조정기가 작업 실행을 중지한 후 작업을 만들지 못하는 문제를 해결함
  • 클러스터 재부팅이 있는 경우 Container App Job에 startingDeadlineSeconds 추가
  • Envoy 액세스 로그 서버에서 많은 로깅을 제거함
  • Azure Arc 지원 Kubernetes의 Azure Container Apps에 대한 모니터링 구성 버전을 업데이트함

Container Apps 확장 v1.36.15(2024년 4월)

  • Dapr을 v1.12로 업데이트하고 Dapr Metrics를 v0.6으로 업데이트
  • 고객이 Dapr에서 Azure SDK 디버그 로깅을 사용하도록 허용
  • 메모리 사용량에 따라 Envoy 크기 조정
  • Envoy 로그 형식을 Json으로 변경
  • 추가 Envoy 메트릭 내보내기
  • 로그 콘텐츠를 구문 분석하지 못한 경우 Envoy 로그를 처음 1,024자로 자릅니다.
  • 로컬 프록시에서 SIGTERM을 정상적으로 처리
  • KEDA를 통해 다양한 네임스페이스를 사용하는 기능 허용
  • 크기 조정 규칙 이름에 대한 유효성 검사가 추가됨
  • 기본적으로 수정 버전 GC를 사용하도록 설정됨
  • 사이드카에 대한 메트릭 방출 사용하도록 설정됨
  • 작업 실행에 VolumeMount가 추가됨
  • 작업에 대한 웹후크 엔드포인트에 대한 유효성 검사가 추가됨

Container Apps 확장 v1.37.1(2024년 7월)

  • MISE를 지원하도록 EasyAuth 업데이트

Container Apps 확장 v1.37.2(2024년 9월)

  • 네트워크 시간 제한 문제를 해결하기 위해 Dapr-Metrics 이미지를 v0.6.8로 업데이트했습니다.
  • 클러스터가 프록시 뒤에 연결될 때 MDSD 컨테이너가 시작되지 않는 로그 프로세서에서 해결된 문제

Container Apps 확장 v1.37.7(2024년 10월)

  • 끌어올 수 없는 경우 컨테이너가 충돌하는 MDM Init 컨테이너와 관련된 해결된 문제
  • Logic Apps 하이브리드 배포 모델에 대한 지원 추가(공개 미리 보기)

다음 단계

Container Apps 연결 환경 만들기(미리 보기)