Azure Container Registry 여러 SKU에서 사용할 수 있습니다. 가격 책정 계획 또는 계층이라고도 하는 이러한 SKU는 예측 가능한 가격 책정을 지원하고 Azure 프라이빗 컨테이너 레지스트리의 다양한 용량 및 사용 패턴에 맞춥니다.
레지스트리를 만들 때 레지스트리의 기능 및 제한을 결정하는 가격 책정 계획을 선택합니다. 이미지 수, 스토리지 요구 사항 및 성능 요구 사항과 같은 예상 사용 패턴에 맞는 계획을 선택합니다.
Azure Container Registry는 기본, 표준 및 프리미엄의 세 가지 요금제 옵션을 제공합니다. 각 SKU는 개발 및 테스트에서 프로덕션 워크로드에 이르기까지 다양한 시나리오를 수용할 수 있는 다양한 기능 및 제한 집합을 제공합니다.
| SKU | 설명 |
|---|---|
| 기본 | Azure Container Registry 대해 학습하는 개발자를 위한 비용 최적화 진입점입니다. 기본 레지스트리에는 Microsoft Entra 인증 통합, 이미지 삭제 및 webhooks 같은 표준 및 프리미엄 레지스트리와 동일한 기능이 대부분 있습니다. 그러나 포함된 스토리지 및 이미지 처리량은 낮은 사용 시나리오에 가장 적합하며 일부 기능은 사용할 수 없습니다. |
| 표준 | Standard 레지스트리는 Basic과 동일한 성능을 제공하되, 포함된 스토리지 제한과 이미지 처리량은 더 높습니다. 표준 레지스트리는 많은 프로덕션 시나리오의 요구를 충족합니다. |
| 프리미엄 | Premium 레지스트리는 포함된 스토리지 및 동시 작업 수가 가장 높으며 고용량 시나리오를 지원합니다. 높은 이미지 처리량 외에도 Premium은 여러 지역에서 단일 레지스트리를 관리하여 고가용성을 위한 지역 복제 , 레지스트리에 대한 액세스를 제한하는 프라이빗 엔드포인트가 있는 프라이빗 링크 , 대규모 동시 배포를 위한 더 높은 API 동시성 및 대역폭 처리량과 같은 기능을 추가합니다. |
각 SKU에는 특정 양의 무료 스토리지가 포함되며, 추가 스토리지는 GB당 속도로 사용할 수 있습니다. 또한 각 SKU에는 다른 최대 스토리지 제한이 있습니다.
기본, 표준 및 프리미엄 SKU는 모두 동일한 프로그래밍 방식 기능과 데이터 평면 API를 제공합니다. 또한 모든 SKU는 Azure에서 전체적으로 관리하는 이미지 스토리지의 이점을 누릴 수 있으며, 모든 지원 지역의 SKU에는 Azure Container Registry의 영역 중복성 기능이 기본적으로 활성화되어 있습니다. 그러나 프리미엄 SKU는 더 넓은 범위의 기능을 가능하게 하고 더 높은 제한을 가합니다.
SKU 기능 및 제한
다음 표에서는 Basic, Standard 및 Premium SKU의 기능 및 레지스트리 제한에 대해 자세히 설명합니다.
| 리소스 | 기본 | 표준 | 프리미엄 |
|---|---|---|---|
| 포함된 스토리지1(GiB) | 10 | 100 | 500 |
| 스토리지 한도(TiB) | 40 | 40 | 100 |
| 최대 이미지 레이어 크기(GiB) | 200 | 200 | 200 |
| 최대 매니페스트 크기(MiB) | 4 | 4 | 4 |
| Webhook | 2 | 10 | 500 |
| 프라이빗 엔드포인트가 있는 프라이빗 링크 | 해당 없음 | 해당 없음 | 지원됨 |
| • 프라이빗 엔드포인트 | 해당 없음 | 해당 없음 | 200 |
| 공용 IP 네트워크 규칙 | 해당 없음 | 해당 없음 | 200 |
| 서비스 엔드포인트 VNet 액세스 | 해당 없음 | 해당 없음 | Preview |
| • 가상 네트워크 규칙 | 해당 없음 | 해당 없음 | 100 |
| Microsoft Entra 역할 할당을 사용하는 리포지토리 범위 권한 | 지원됨 | 지원됨 | 지원됨 |
| Microsoft Entra가 아닌 토큰 및 범위 맵이 있는 리포지토리 범위 권한 | 지원됨 | 지원됨 | 지원됨 |
| • 비 Microsoft Entra 토큰 | 100 | 500 | 50,000 |
| • 비 Microsoft Entra 토큰 범위 맵 | 100 | 500 | 50,000 |
| • 비 Microsoft Entra 토큰 범위 맵당 작업 | 500 | 500 | 500 |
| • Microsoft Entra 이외의 토큰 범위 맵당 리포지토리2개 | 500 | 500 | 500 |
| 익명 끌어오기 액세스 | 해당 없음 | 지원됨 | 지원됨 |
| 지역에서 복제 | 해당 없음 | 해당 없음 | 지원됨 |
| 전용 데이터 엔드포인트 | 해당 없음 | 해당 없음 | 지원됨 |
| 가용성 영역 | 지원됨 | 지원됨 | 지원됨 |
| 콘텐츠 신뢰 | 해당 없음 | 해당 없음 | 지원됨 |
| 고객 관리형 키 | 해당 없음 | 해당 없음 | 지원됨 |
| 연결된 레지스트리 | 해당 없음 | 해당 없음 | 지원됨 |
| 아티팩트 스트리밍 | 해당 없음 | 해당 없음 | 지원됨 |
| 아티팩트 캐시 규칙 | 해당 없음 | 지원됨 | 지원됨 |
| IP 액세스 규칙 구성 | 해당 없음 | 해당 없음 | 지원됨 |
| 태그가 지정되지 않은 매니페스트에 대한 보존 정책 | 해당 없음 | 해당 없음 | 지원됨 |
| 아티팩트 전송 | 해당 없음 | 해당 없음 | 지원됨 |
| 내보내기 정책 | 해당 없음 | 해당 없음 | 지원됨 |
| 작업에 대한 전용 에이전트 풀 | 해당 없음 | 해당 없음 | 지원됨 |
1 각 계층의 일별 요금에 포함된 스토리지입니다. 추가 스토리지는 GiB당 일일 추가 요금으로 레지스트리 스토리지 제한까지 사용할 수 있습니다. 요금 정보는 Azure Container Registry 가격 책정 참조하세요. 레지스트리 스토리지 제한을 초과하는 스토리지가 필요한 경우 Azure 지원에 문의하세요.
2 개별 작업 의 content/delete, content/read, content/write, metadata/read, metadata/write 비 Microsoft Entra 토큰의 범위 맵마다 리포지토리 제한이 적용됩니다.
참고
Azure Support 문의하여 이 표에 나열된 몇 가지 제한을 늘릴 수 있습니다. 예를 들어 프라이빗 엔드포인트 제한, 제한 또는 대역폭 제약 조건으로 인한 이미지 푸시 및 끌어오기 성능 또는 일반 스토리지 제한에 대한 증가를 요청할 수 있습니다.
각 Azure Container Registry SKU에 대한 가격 정보는 컨테이너 레지스트리 가격 책정 참조하세요. 데이터 전송 가격 책정에 대한 자세한 내용은 대역폭 가격 책정을 참조하세요.
레지스트리 이미지 끌어오기 및 푸시 성능 제한
대용량 작업 중 API 동시성, 대역폭 처리량 및 제한은 주로 이미지 끌어오기 및 푸시 성능에 영향을 줍니다. 레지스트리 SKU, 네트워크 구성 및 클라이언트 구성에 따라 이러한 요소가 결정됩니다.
API 동시성 및 대역폭 처리량 제한
SKU는 API 동시성 및 대역폭 처리량을 결정합니다. SKU가 높을수록 이미지 나열, 삭제, 푸시 및 끌어와 같은 데이터 평면 작업에 더 많은 동시 작업과 더 큰 대역폭이 지원됩니다.
다음 요소는 이미지를 끌어오고 푸시하는 동안 API 동시성 및 대역폭 처리량에 영향을 줍니다.
- 이미지 계층의 수 및 크기
- 레지스트리의 이미지에서 레이어 다시 사용
- 각 작업에 필요한 추가 API 호출
- 동시에 여러 노드에서 이미지를 끌어당기는 Kubernetes 배포와 같은 동시 배포의 크기 조정
다음 클라이언트 환경 요소는 성능에 영향을 줍니다.
- 동시 작업을 위한 Docker 디먼 또는 Podman 구성
- 컨테이너 런타임 구성, 예를 들어
containerd또는 CRI-O 동시성 설정 - 클러스터 구성 또는 클러스터 데이터 평면 설정
다음 네트워크 요소는 성능에 영향을 줍니다.
- 클라이언트에서 레지스트리로의 네트워크 홉에 대한 네트워크 대역폭 및 대기 시간
- 방화벽 규칙 및 프록시 설정과 같은 클라이언트 쪽 네트워크 구성
- 레지스트리 또는 가장 가까운 복제본까지의 지리적 거리(지리적 복제된 경우)
이미지 푸시 및 끌어오기 중에 발생하는 API 작업에 대한 자세한 내용은 Docker HTTP API V2 설명서를 참조하세요. 문제 해결에 대한 도움말은 레지스트리 성능 문제를 참조하세요.
제어 및 대역폭 제약 조건
요청 볼륨이 많은 기간 동안 HTTP 429 Too many requests 오류 또는 느린 대역폭 처리량으로 제한이 발생할 수 있습니다. 이러한 문제를 완화하려면 다음을 수행합니다.
- 지수 백오프를 사용하여 재시도 논리를 구현합니다.
- 동시 요청 속도를 줄입니다.
- 여러 노드에서 동시 이미지 끌어오기를 줄이기 위해 대규모 배포 공간을 확보합니다.
참고
지속적인 API 제한 또는 느린 대역폭 처리량이 발생하는 경우 레지스트리의 SKU 를 더 높은 값으로 업데이트하는 것이 좋습니다. Azure 지원에 제한 증량을 요청할 수도 있습니다.
레지스트리 사용량 표시
사용량 정보는 레지스트리가 한도에 근접할 때 SKU 변경 에 대한 결정을 내리는 데 도움이 되며 사용량을 관리하는 데 도움이 됩니다.
레지스트리의 SKU 제한과 비교하여 레지스트리의 현재 스토리지 및 기타 리소스 사용량에 대한 스냅샷을 얻으려면 Azure 포털에서 레지스트리의 Overview 페이지를 확인합니다. az acr show-usage(Azure CLI), Get-AzContainer와 같은 API를 사용할 수도 있습니다.RegistryUsage(Azure PowerShell) 또는 Registries - 사용량 나열(REST API).
참고
레지스트리의 스토리지 사용량이 최근 레지스트리 작업을 모두 반영하지 않을 수 있습니다. 레지스트리의 StorageUsed 측정항목을 모니터링하여 최신 정보를 확인하십시오.
레지스트리의 SKU에 따라 사용량 정보에는 해당 SKU의 제한과 함께 다음의 일부 또는 전부가 포함됩니다.
- 바이트 단위로 사용된 스토리지
- 웹후크 수
- 지역 복제 수(홈 복제본 포함)
- 프라이빗 엔드포인트 수
- IP 액세스 규칙 수
- 가상 네트워크 규칙 수
지역 복제 레지스트리에서 홈 지역에 대한 스토리지 사용량이 표시됩니다. 총 스토리지 양에 대한 복제본 수를 곱합니다.
레지스트리 SKU 변경
Azure 포털에서 또는 Azure CLI 또는 Azure PowerShell 사용하여 레지스트리의 SKU를 변경할 수 있습니다. 전환하려는 SKU에 필요한 최대 스토리지 용량이 있는 한 SKU 간에 자유롭게 이동할 수 있습니다.
레지스트리의 SKU를 변경하는 경우 레지스트리 작업에 가동 중지 시간이나 영향이 없습니다. 그러나 프리미엄에서 더 낮은 SKU로 이동하는 경우 프리미엄과 관련된 기능은 사용하지 않도록 설정됩니다. 경우에 따라 SKU를 전환하기 전에 이러한 기능과 관련된 리소스를 제거해야 합니다. 예를 들어 프리미엄에서 표준 또는 기본으로 전환하려면 먼저 지역 복제 또는 연결된 레지스트리를 삭제해야 합니다.
Azure 포털에서 SKU를 변경하려면 컨테이너 레지스트리로 이동합니다. 서비스 메뉴의 설정에서 속성을 선택합니다. 가격 책정 계획에 대한 옵션을 변경한 다음 저장을 선택합니다.
Azure CLI 사용하여 SKU를 변경하려면 az acr update 명령을 사용합니다. 예를 들어 Premium으로 전환하려면:
az acr update --name myContainerRegistry --sku Premium
Azure PowerShell 사용하여 SKU를 변경하려면 Update-AzContainerRegistry cmdlet을 사용합니다. 예를 들어 Premium으로 전환하려면:
Update-AzContainerRegistry -ResourceGroupName myResourceGroup -Name myContainerRegistry -Sku Premium
관련 콘텐츠
예정된 Azure Container Registry 기능에 대한 자세한 내용은 GitHub Roadmap 참조하세요.