Azure CLI를 사용하여 Azure 배포 환경에 대한 개발 센터 만들기 및 구성
이 빠른 시작에서는 Azure 배포 환경에서 개발 센터를 만들고 구성하는 방법을 보여 줍니다.
플랫폼 엔지니어링 팀은 일반적으로 개발 센터를 설정하고, 외부 카탈로그를 개발자 센터에 연결하고, 프로젝트를 만들고, 개발 팀에 대한 액세스를 제공합니다. 개발 팀은 환경 정의를 사용하여 환경을 만들고, 개별 리소스에 연결하고, 애플리케이션을 배포합니다.
필수 조건
- 활성 구독이 있는 Azure 계정. 체험 계정을 만듭니다.
- 구독에서 리소스(예 : 참가자 또는 소유자)를 만들고 관리할 수 있는 권한이 있는 Azure 역할 기반 액세스 제어 역할입니다.
- Azure CLI를 설치합니다.
- 개발자 센터 CLI 확장 설치
- 리포지토리 액세스가 있는 GitHub 계정 및 개인용 액세스 토큰 입니다.
개발자 센터 만들기
Azure Portal을 사용하여 Azure 배포 환경에서 개발자 센터를 만들고 구성하려면 다음을 수행합니다.
Azure CLI에 로그인합니다.
az login
CLI용 Azure 개발자 센터 확장을 설치합니다.
az extension add --name devcenter --upgrade
기본 구독을 개발자 센터를 만들려는 구독으로 구성합니다.
az account set --subscription <name>
기본 위치를 개발자 센터를 만들 위치로 구성합니다. Azure 배포 환경에 사용 가능한 지역을 선택해야 합니다.
az configure --defaults location=eastus
개발자 센터를 만들 리소스 그룹을 만듭니다.
az group create -n <group name>
기본 리소스 그룹을 만든 리소스 그룹으로 구성합니다.
az config set defaults.group=<group name>
개발자 센터를 만듭니다.
az devcenter admin devcenter create -n <devcenter name>
몇 분 후에 생성된 출력이 표시됩니다.
{ "devCenterUri": "https://...", "id": "/subscriptions/.../<devcenter name>", "location": "eastus", "name": "<devcenter name>", "provisioningState": "Succeeded", "resourceGroup": "<group name>", "systemData": { "createdAt": "...", "createdBy": "...", ... }, "type": "microsoft.devcenter/devcenters" }
참고 항목
명령, 허용되는 인수 및 예제에 대한 자세한 내용을 볼 수 --help
있습니다. 예를 들어 개발자 센터를 만드는 방법에 대한 자세한 내용을 보려면 사용합니다 az devcenter admin devcenter create --help
.
Key Vault에 개인용 액세스 토큰 추가
GitHub 리포지토리에 대한 Azure 액세스 권한을 부여하는 데 사용되는 GitHub PAT(개인 액세스 토큰)를 저장하려면 Azure Key Vault가 필요합니다.
Key Vault 만들기:
# Change the name to something Globally unique az keyvault create -n <kv name>
참고 항목
다음과 같은 오류가 발생할 수 있습니다.
Code: VaultAlreadyExists Message: The vault name 'kv-devcenter-unique' is already in use. Vault names are globally unique so it is possible that the name is already taken.
전역적으로 고유한 키 자격 증명 모음 이름을 사용해야 합니다.GitHub PAT(개인용 액세스 토큰)를 Key Vault에 비밀로 추가합니다.
az keyvault secret set --vault-name <kv name> --name GHPAT --value <PAT>
개발자 센터에 ID 연결
개발자 센터를 만든 후 개발자 센터에 ID를 연결합니다. 시스템 할당 관리 ID 또는 사용자 할당 관리 ID를 연결할 수 있습니다. 두 가지 유형의 ID에 대해 알아봅니다.
이 빠른 시작에서는 개발자 센터에 대해 시스템 할당 관리 ID를 구성합니다.
시스템 할당 관리 ID 연결
개발자 센터에 시스템 할당 관리 ID를 연결하려면 다음을 수행합니다.
az devcenter admin devcenter update -n <devcenter name> --identity-type SystemAssigned
키 자격 증명 모음 비밀에 시스템 할당 관리 ID 액세스 할당
ID가 리포지토리에 액세스하기 위한 개인 액세스 토큰이 포함된 키 자격 증명 모음 비밀에 액세스할 수 있는지 확인합니다. Key Vault는 두 가지 액세스 방법을 지원합니다. Azure 역할 기반 액세스 제어 또는 자격 증명 모음 액세스 정책 이 빠른 시작에서는 자격 증명 모음 액세스 정책을 사용합니다.
개발자 센터 ID의 개체 ID를 검색합니다.
OID=$(az ad sp list --display-name <devcenter name> --query [].id -o tsv) echo $OID
개발자 센터에서 Key Vault에서 비밀을 가져올 수 있도록 Key Vault 정책을 추가합니다.
az keyvault set-policy -n <kv name> --secret-permissions get --object-id $OID
개발자 센터에 카탈로그 추가
Azure 배포 환경은 Azure DevOps 리포지토리 및 GitHub 리포지토리 연결을 지원합니다. 큐레이팅된 IaC 템플릿 집합을 리포지토리에 저장할 수 있습니다. 리포지토리를 개발자 센터에 카탈로그로 연결하면 개발 팀이 템플릿에 액세스할 수 있으며 일관된 환경을 빠르게 만들 수 있습니다.
이 빠른 시작에서는 Azure Deployment Environments 팀에서 만들고 기본 샘플이 포함된 GitHub 리포지토리를 연결합니다.
개발자 센터에 카탈로그를 추가하려면 먼저 몇 가지 정보를 수집해야 합니다.
GitHub 리포지토리 정보 수집
카탈로그를 추가하려면 GitHub 리포지토리 URL, 분기 및 환경 정의가 포함된 폴더를 지정해야 합니다. 개발자 센터에 카탈로그를 추가하는 프로세스를 시작하기 전에 이 정보를 수집할 수 있습니다.
팁
Azure DevOps 리포지토리를 연결하는 경우 다음 단계를 사용합니다. Azure DevOps 리포지토리의 복제 URL을 가져옵니다.
GitHub 계정 페이지에서 코드를 선택한 <> 다음 복사를 선택합니다.
작업 중인 분기를 기록해 둡다.
환경 정의가 포함된 폴더를 기록해 둡니다.
개발자 센터에 카탈로그 추가
비밀 식별자를 검색합니다.
SECRETID=$(az keyvault secret show --vault-name <kv name> --name GHPAT --query id -o tsv) echo $SECRETID
카탈로그 추가:
# Sample Catalog example REPO_URL="https://github.com/Azure/deployment-environments.git" az devcenter admin catalog create --git-hub path="/Environments" branch="main" secret-identifier=$SECRETID uri=$REPO_URL -n <catalog name> -d <devcenter name>
카탈로그가 성공적으로 추가되고 동기화되었는지 확인합니다.
az devcenter admin catalog list -d <devcenter name> -o table
환경 유형 만들기
환경 유형을 사용하여 개발 팀에서 배포할 수 있는 다양한 유형의 환경을 정의할 수 있습니다. 각 환경 유형에 대해 서로 다른 설정을 적용할 수 있습니다.
환경 유형 만들기:
az devcenter admin environment-type create -d <devcenter name> -n <environment type name>
환경 유형이 생성되어 있는지 확인합니다.
az devcenter admin environment-type list -d <devcenter name> -o table
다음 단계
이 빠른 시작에서는 개발자 센터를 만들고 ID, 카탈로그 및 환경 유형으로 구성했습니다. 프로젝트를 만들고 구성하는 방법을 알아보려면 다음 빠른 시작을 진행합니다.