M

azure-validate

작성자 microsoft

azure-validate는 Azure 배포 이전에 실행하는 사전 검증(pre-deployment validation) 스킬입니다. 실제 배포를 실행하기 전에 구성, IaC(Bicep 또는 Terraform), Azure Developer CLI (azd) 프로젝트, 권한, 리전, 정책 등을 점검해 문제를 미리 찾아냅니다.

Stars0
즐겨찾기0
댓글0
카테고리Deployment
설치 명령어
npx skills add https://github.com/microsoft/azure-skills --skill azure-validate
개요

개요

azure-validate란 무엇인가요?

azure-validate는 Azure 애플리케이션과 인프라를 실제 배포하기 전에 깊이 있는 사전 점검(preflight check)을 수행하도록 설계된 배포 검증 스킬입니다. azure-prepare가 생성한 승인된 배포 계획을 읽어들인 후, 구성, IaC(Bicep 또는 Terraform), Azure Developer CLI (azd) 워크플로, Azure CLI (azcli) 스크립트, 정책, 리전, 필요한 권한을 검증합니다.

이 스킬은 워크플로 상으로는 배포 단계에 속하지만, Azure 환경을 위한 자동화된 테스트 스위트처럼 동작합니다. 배포 계획이 안전하게 실행될 수 있는지, 애플리케이션이 실제로 배포 준비가 되었는지 확인하는 데 도움을 줍니다.

언제 이 스킬을 사용해야 하나요?

다음과 같은 경우 azure-validate를 사용하세요.

  • 앱과 인프라가 배포 준비가 되었는지 확인하고 싶을 때
  • azure.yaml 또는 Bicep 템플릿을 azd provision 또는 azd deploy 실행 전 검증할 때
  • Terraform 또는 순수 Azure CLI 스크립트에 대해 사전 배포 점검을 수행할 때
  • Azure 구독, 리전, 쿼터 선택이 적절한지 확인할 때
  • 계획된 리소스가 Azure Policy를 준수하는지 검증할 때
  • 흔히 발생하는 Azure CLI 및 IaC 검증 오류를 미리 잡고 싶을 때
  • CI/CD 파이프라인에서 반복되는 배포 실패를 분석하고 해결하고 싶을 때

가장 잘 맞는 순서는 다음과 같습니다.

azure-prepareazure-validateazure-deploy

azure-validate는 어떤 사용자를 위한 스킬인가요?

azure-validate는 다음과 같은 사용자를 대상으로 합니다.

  • Azure 위에서 애플리케이션을 개발하는 백엔드 및 클라우드 개발자
  • 안정적인 배포를 책임지는 DevOps 및 플랫폼 엔지니어
  • 인프라 도구로 Bicep, Terraform, azd 또는 azcli를 표준으로 사용하는 팀
  • 일관된 자동 사전 배포 점검이 필요한 CI/CD 담당자

여러 환경(dev/test/prod 등)에 배포를 자주 수행하거나, 조직 전체 정책 및 리전 규정을 준수해야 하는 경우, 이 스킬은 반복 가능한 검증 레이어를 제공합니다.

어떤 문제를 해결해 주나요?

azure-validate는 다음과 같은 이슈를 사전에 잡아 실패하거나 부분적으로만 성공하는 배포를 줄이는 데 도움을 줍니다.

  • azure.yaml 또는 IaC 파일의 누락되었거나 잘못된 구성
  • 특정 서비스에 대해 잘못 설정되었거나 지원되지 않는 Azure 리전 사용
  • 배포를 차단하는 Azure Policy 위반 사항
  • 인증 및 권한 문제(예: 필요한 역할 누락)
  • Bicep 및 템플릿에서 자주 발생하는 Azure CLI 검증 오류
  • azd, azcli, Bicep, Terraform 사이에서 인프라 정의가 서로 맞지 않는 문제

이러한 문제를 프로덕션이나 파이프라인 후반부에서 발견하는 대신, 검증 단계에서 명확한 참조 자료와 수정 레시피와 함께 surfaced 하도록 도와줍니다.

azure-validate가 적합하지 않은 경우는 언제인가요?

이 스킬은 다음 용도로는 설계되지 않았습니다.

  • 비-Azure 배포(다른 클라우드 또는 온프레미스 전용 환경)
  • 배포 이후 모니터링, 헬스 체크, 관측(Observability)
  • 애플리케이션 레벨 테스트(단위 테스트, 통합 테스트, UI 테스트)
  • azure-prepare가 생성한 배포 계획 없이 진행되는 단발성 수동 배포

IaC나 구조화된 계획 파일(예: azure-prepare가 생성한 .azure/plan.md)을 사용하지 않는 경우 azure-validate의 이점을 충분히 누리기 어렵습니다.

사용 방법

1. 설치 및 초기 설정

스킬 목록에 azure-validate 추가하기

microsoft/azure-skills 리포지토리에서 스킬을 설치합니다.

npx skills add https://github.com/microsoft/azure-skills --skill azure-validate

이렇게 하면 azure-validate 워크플로를 에이전트 또는 도구 환경에서 사용할 수 있게 됩니다.

필수 워크플로 순서

azure-validate를 실행하기 전에 다음 조건을 만족해야 합니다.

  • azure-prepare가 성공적으로 실행되었고,
  • 상태가 Approved 이상인 .azure/plan.md 파일이 존재할 것

지원되는 워크플로 순서는 다음과 같이 엄격합니다.

azure-prepareazure-validateazure-deploy

.azure/plan.md가 없거나 승인되지 않은 상태라면, 진행을 멈추고 먼저 azure-prepare를 실행해야 합니다.

2. 핵심 트리거와 규칙 이해하기

주요 트리거

다음이 필요할 때 azure-validate를 사용하세요.

  • 앱이 배포 준비가 되었는지 확인해야 할 때
  • azure.yaml 또는 Bicep 템플릿을 검증해야 할 때
  • 리소스를 프로비저닝하기 전 사전 점검을 수행할 때
  • IaC 또는 CLI 단계에서 발생하는 Azure 배포 오류를 트러블슈팅할 때

꼭 지켜야 할 핵심 규칙

스킬 가이드와 공유 global-rules 참조에 따른 규칙은 다음과 같습니다.

  1. azure-validate는 반드시 azure-prepare 실행 이후, 실제 배포 전에만 실행합니다.
  2. 검증 실패는 차단(blocking) 이슈로 간주합니다. 문제가 해결되기 전에는 azure-deploy로 진행하지 마세요.
  3. 삭제, 덮어쓰기, 큰 비용 또는 보안 영향이 있는 작업처럼 파괴적이거나 영향이 큰 작업은 항상 references/global-rules.md에 설명된 대로 ask_user를 사용해 사용자에게 명시적으로 확인을 받아야 합니다.
  4. Azure 구독이나 리전을 임의로 가정하지 마세요. 관련된 경우 반드시 사용자에게 확인을 받아야 합니다.

3. 인프라 유형별 검증 레시피 활용하기

이 스킬에는 다양한 인프라 접근 방식에 맞춘 검증 레시피가 references/recipes/ 아래에 포함되어 있습니다.

Azure Developer CLI (azd) 프로젝트용

  • 먼저 references/recipes/azd/README.md를 확인하세요.
  • 환경 구성을 검증할 때는 references/recipes/azd/environment.md를 사용합니다.
  • 일반적인 azd 검증 및 배포 오류를 해석하고 해결할 때는 references/recipes/azd/errors.md를 참고하세요.
  • .NET Aspire 기반 프로젝트의 경우, 추가 점검 항목은 references/recipes/azd/aspire.md에서 확인합니다.

이 가이드를 활용하면 azure.yaml, 애플리케이션 연결 구성, 환경 설정이 azd 프로비저닝 전에 유효한지 검증할 수 있습니다.

Azure CLI (azcli) + Bicep 워크플로용

  • 전체 AZCLI 검증 체크리스트는 references/recipes/azcli/README.md에서 시작하세요. 여기에는 다음이 포함됩니다.
    • Azure CLI 설치 여부 확인 (az version)
    • 로그인 및 구독 설정
    • Bicep 컴파일 (az bicep build)
    • 템플릿 검증 및 what-if 프리뷰 실행
  • 자주 발생하는 az 오류 메시지(토큰 문제, MFA, 권한 문제, 템플릿 검증 실패 등)에 대한 빠른 해결책은 references/recipes/azcli/errors.md에서 확인할 수 있습니다.

이 조합을 통해 Azure CLI 기반의 Bicep 배포를 단계별로 검증하는 구체적인 절차를 마련할 수 있습니다.

Bicep 중심 인프라용

  • Bicep 전용 검증 워크플로는 references/recipes/bicep/README.md를 확인하세요.
  • 일반적인 Bicep 검증 문제와 해결 방법은 references/recipes/bicep/errors.md에 정리되어 있습니다.

이 검증을 로컬 워크플로나 CI 파이프라인에 통합하면, 전체 배포를 실행하기 전에 템플릿과 파라미터가 유효한지 미리 보장할 수 있습니다.

Terraform 기반 배포용

  • Terraform 계획 및 apply 단계와 azure-validate를 맞추는 방법은 references/recipes/terraform/README.md를 참고하세요.
  • 대표적인 Terraform 검증 오류와 Azure 권한 관련 오류 및 해결책은 references/recipes/terraform/errors.md에 정리되어 있습니다.

이 레시피들은 어떤 환경에서든 terraform apply를 실행하기 전에 Terraform 인프라와 Azure 계정 구성이 올바르게 준비되었는지 검증하는 데 도움을 줍니다.

4. 정책, 리전, 쿼터 준비 상태 검증하기

Azure Policy 검증

계획된 배포가 해당 구독에 할당된 Azure Policy를 준수하는지 확인하려면 references/policy-validation.md를 가이드로 사용하세요.

일반적인 흐름은 다음과 같습니다.

  1. 현재 구독 ID를 가져옵니다.

    az account show --query id -o tsv
    
  2. 참조 문서에 나온 대로 Azure policy MCP 통합을 사용해 해당 구독의 정책을 나열하고 검토합니다.

  3. 정책 위반(허용되지 않는 SKU, 태그 누락, 제한된 리소스 타입, 위치 제한, 네트워크 보안 규칙 등)을 해결한 후 다음 단계로 진행합니다.

정책 준수 여부가 확인된 뒤에만 배포를 계속 진행해야 합니다.

리전 가용성과 쿼터 점검

아키텍처에 포함된 모든 서비스가 요청한 리전에서 지원되는지, 그리고 쿼터가 충분한지 교차 확인하려면 references/region-availability.md를 사용하세요.

다음과 같이 리전 제한이 있는 서비스에는 특히 중요합니다.

  • Azure Static Web Apps
  • Azure OpenAI (모델별로 리전 지원이 다를 수 있음)

참조 문서에 안내된 MCP 도구(쿼터 및 리전 가용성 확인용)를 활용해, 지원되지 않는 리전이나 부족한 용량으로 인해 배포가 실패하는 일을 방지하세요.

5. 앱 및 함수 검증 예시

Aspire + Azure Functions 시크릿 저장소

.NET Aspire와 Azure Functions를 함께 사용하는 경우 references/aspire-functions-secrets.md를 참고하세요.

  • 앱 호스트에 identity 기반 스토리지를 사용하는 AddAzureFunctionsProject가 포함되어 있는지 확인합니다.
  • AzureWebJobsSecretStorageType이 올바르게 구성되어 있는지 확인합니다.
  • 안내에 따라 .WithEnvironment("AzureWebJobsSecretStorageType", "Files")를 포함한 권장 수정 사항을 프로비저닝 전에 반영합니다.

이 검증 단계를 azd provision 이전에 수행하면, 서버리스 배포를 막는 Functions 시크릿 저장소 관련 일반적인 문제를 예방할 수 있습니다.

6. CI/CD 파이프라인에서 azure-validate 사용하기

azure-validate는 에이전트 스킬로 작성되었지만, 그 단계와 참조 자료는 자동화된 파이프라인에 그대로 매핑하기 좋습니다.

  • 레시피를 파이프라인 단계로 활용하세요(예: 배포 작업 전에 Bicep 검증 및 what-if 실행).
  • 레시피 또는 정책 점검에서 발생한 모든 검증 오류에 대해 파이프라인을 실패 처리합니다.
  • 개발자가 문제를 해결할 수 있도록 파이프라인 로그에 references/* 파일의 링크나 관련 스니펫을 노출하세요.

이렇게 하면 azure-validate를 모든 환경에 공통으로 적용되는 사전 배포 게이트로 활용할 수 있습니다.

7. 더 깊은 커스터마이징을 위해 살펴볼 파일

azure-validate를 워크플로에 맞게 조정하려면 리포지토리의 다음 핵심 파일을 확인하세요.

  • SKILL.md – 이 스킬에 대한 공식 지침, 트리거, 규칙, 단계 순서가 정리되어 있습니다.
  • references/global-rules.md – 파괴적 작업, 구독 및 리전 처리에 대한 필수 글로벌 규칙입니다.
  • references/policy-validation.md – 자세한 정책 검증 사용법입니다.
  • references/region-availability.md – 리전 제약이 있는 서비스에 대한 리전 및 쿼터 가이드입니다.
  • references/aspire-functions-secrets.md – Aspire + Azure Functions 시크릿 저장소 검증 가이드입니다.
  • references/recipes/README.md – azd, azcli, Bicep, Terraform 검증 레시피 인덱스입니다.

전체 워크플로를 그대로 복사하기보다, 이 파일들을 빌딩 블록으로 활용해 자신에게 맞는 흐름을 구성하는 것이 좋습니다.

FAQ

azure-validate는 반드시 사용해야 하나요? 없이도 배포할 수 있나요?

이 스킬은 azure-prepareazure-deploy 사이에서 실행되도록 설계되었습니다. 기술적으로는 azure-validate를 실행하지 않고도 배포할 수 있지만, 공식 가이드에서는 필수 게이트로 간주할 것을 권장합니다. 이 단계를 건너뛰면 배포 실패, 정책 차단, 리전/권한 관련 문제 발생 위험이 커집니다.

azure-validate를 사용하기 전에 반드시 azure-prepare를 실행해야 하나요?

네. azure-validate는 azure-prepare가 이미 실행되었고, 상태가 Approved 이상인 .azure/plan.md 파일이 존재한다는 가정을 전제로 합니다. 해당 파일이 없거나 승인되지 않았다면, azure-validate를 사용하기 전에 반드시 azure-prepare를 먼저 실행해야 합니다.

azure-validate는 어떤 인프라 도구를 지원하나요?

azure-validate는 다음 도구에 대한 레시피와 가이드를 제공합니다.

  • Azure Developer CLI (azd)
  • Bicep 템플릿을 사용하는 Azure CLI (azcli)
  • Bicep 기반 인프라
  • Terraform

references/recipes/ 아래에서 사용 중인 스택에 맞는 레시피를 선택해서 사용할 수 있습니다.

CI/CD 파이프라인에서도 azure-validate를 사용할 수 있나요?

예. 비록 에이전트 스킬로 작성되었지만, 검증 단계, 오류 가이드, 정책/리전 점검은 CI/CD에 적합합니다. GitHub Actions, Azure DevOps 등 파이프라인에서 레시피와 점검 항목을 그대로 반영하여, 검증이 성공했을 때만 배포가 진행되도록 구성할 수 있습니다.

azure-validate가 Azure 리소스를 직접 변경하나요?

azure-validate는 검증과 사전 점검에 초점을 맞추고 있습니다. 가이드에서는 파괴적이거나 영향이 큰 작업은 항상 ask_userglobal-rules 파일을 통해 사용자에게 명시적으로 확인을 받도록 강조합니다. 일반적인 사용 시나리오에서는 리소스를 되돌릴 수 없는 방식으로 변경하기보다, 검토·검증·계획에 중점을 둡니다.

azure-validate는 Azure Policy 및 거버넌스에 어떻게 도움이 되나요?

이 스킬에는 구독의 정책을 조회하고, 배포 전에 정책 준수 여부를 검토하는 방법을 보여주는 references/policy-validation.md가 포함되어 있습니다. 이 가이드를 따르면 허용되지 않는 리소스 타입, SKU, 태그, 리전 등을 미리 감지하여, 조직의 거버넌스 규칙에 맞는 배포 계획을 수립할 수 있습니다.

Azure Static Web Apps, Azure OpenAI처럼 리전별 제약이 있는 서비스는 어떻게 처리하나요?

references/region-availability.md에는 리전 지원이 제한된 서비스 목록과, 쿼터 및 가용성을 확인할 수 있는 공식 Azure 문서와 MCP 도구 링크가 제공됩니다. azure-validate는 이 참조를 확인해 필요한 모든 서비스가 지원되는 리전만 제안하거나 사용하도록 할 것을 전제로 합니다.

azure-validate는 로컬 개발 환경에도 적합한가요?

네. 최종적으로 Azure에 배포할 계획이고, azure-prepare로 배포 계획을 생성한다면 dev·test 환경에 대해서도 azure-validate를 실행할 수 있습니다. 이렇게 하면 스테이징이나 프로덕션으로 승급하기 전에 문제를 미리 발견하고 해결할 수 있습니다.

처음 azure-validate를 설치할 때 무엇부터 시작해야 하나요?

스킬을 추가한 후, 먼저 SKILL.md를 읽어 규칙과 전체 흐름을 이해하세요. 그 다음 references/recipes/README.md를 살펴보고, 사용 중인 인프라 도구(azd, azcli, Bicep, Terraform)에 맞는 레시피를 선택합니다. 이후 해당 레시피와 정책·리전 가이드를 함께 따라가면서 azure-validate를 워크플로에 통합하면 됩니다.

평점 및 리뷰

아직 평점이 없습니다
리뷰 남기기
이 스킬의 평점과 리뷰를 남기려면 로그인하세요.
G
0/10000
최신 리뷰
저장 중...