이 빠른 시작에서는 Azure 배포 환경에서 개발 센터를 만들고 구성합니다.
플랫폼 엔지니어링 팀은 일반적으로 개발 센터를 설정하고, 외부 카탈로그를 개발자 센터에 연결하고, 프로젝트를 만들고, 개발 팀에 대한 액세스를 제공합니다. 그런 다음 개발 팀은 환경 정의를 사용하여 환경을 만들고, 개별 리소스에 연결하고, 애플리케이션을 배포할 수 있습니다.
필수 조건
| 카테고리 | 요구 사항 |
|---|---|
| 애저 (Azure) | - Azure 구독. - 구독에서 리소스(예: 참가자 또는 소유자)를 만들고 관리할 수 있는 권한이 있는 Azure 역할 기반 액세스 제어 역할입니다. - Azure CLI 개발 센터 확장입니다. |
| 깃허브 | 리포지토리 액세스가 있는 GitHub 계정 및 개인용 액세스 토큰 입니다. |
개발자 센터 만들기
Azure 배포 환경에서 개발 센터를 만들고 구성하려면 다음을 수행합니다.
Azure CLI에 로그인합니다.
az loginAzure CLI 개발 센터 확장을 설치합니다.
az extension add --name devcenter --upgrade기본 구독을 개발자 센터를 만들려는 구독으로 구성합니다.
az account set --subscription <subscriptionName>개발자 센터를 만들 기본 위치를 구성합니다. Azure 배포 환경을 지원하는 지역을 선택해야 합니다.
az configure --defaults location=eastus개발자 센터를 만들 리소스 그룹을 만듭니다.
az group create -n <resourceGroupName>기본 리소스 그룹을 설정할 때, 당신이 만든 리소스 그룹으로 지정하십시오.
az config set defaults.group=<resourceGroupName>개발자 센터를 만듭니다.
az devcenter admin devcenter create -n <devcenterName>몇 분 후 출력은 개발자 센터가 생성되었음을 나타냅니다.
{ "devCenterUri": "https://...", "id": "/subscriptions/.../<devcenterName>", "location": "eastus", "name": "<devcenter name>", "provisioningState": "Succeeded", "resourceGroup": "<resourceGroupName>", "systemData": { "createdAt": "...", "createdBy": "...", ... }, "type": "microsoft.devcenter/devcenters" }
비고
명령, 허용되는 인수 및 예제에 대한 자세한 내용을 볼 수 있습니다 --help. 예를 들어 개발자 센터를 만드는 방법에 대한 자세한 내용을 보려면 사용합니다 az devcenter admin devcenter create --help .
Azure Key Vault에 개인 액세스 토큰 추가
GitHub 리포지토리에 대한 Azure 액세스 권한을 부여하는 데 사용되는 GitHub PAT(개인용 액세스 토큰)를 저장하려면 Azure Key Vault가 필요합니다.
키 자격 증명 모음을 만듭니다.
# Use a globally unique name az keyvault create -n <keyvaultName>비고
다음과 같은 오류가 발생할 수 있습니다.
Code: VaultAlreadyExists Message: The vault name 'kv-devcenter' is already in use. Vault names are globally unique so it is possible that the name is already taken.전역적으로 고유한 키 자격 증명 모음 이름을 사용해야 합니다.Key Vault 비밀 책임자 RBAC 역할을 자신에게 할당합니다.
az role assignment create --assignee <YourPrincipalId> --role "Key Vault Secrets Officer" --scope /subscriptions/<YourSubscriptionId>/resourceGroups/<YourResourceGroupName>/providers/Microsoft.KeyVault/vaults/<YourKeyVaultName>Key Vault에 GitHub PAT를 비밀로 추가합니다.
az keyvault secret set --vault-name <keyvaultName> --name GHPAT --value <personalAccessToken>
개발자 센터에 ID 연결
개발자 센터를 만든 후 개발자 센터에 ID 를 연결합니다. 시스템 할당 관리 ID 또는 사용자 할당 관리 ID를 연결할 수 있습니다. 자세한 내용은 관리 ID 추가를 참조하세요.
이 빠른 시작에서는 개발자 센터에 대해 시스템 할당 관리 ID를 구성합니다.
시스템 할당 관리 ID 연결
개발자 센터에 시스템 할당 관리 ID를 연결합니다.
az devcenter admin devcenter update -n <devcenterName> --identity-type SystemAssigned
키 자격 증명 모음 비밀에 시스템이 할당한 관리 ID 액세스 권한 부여
리포지토리에 액세스하려면 해당 ID에 GitHub PAT가 포함된 키 자격 증명 모음 비밀에 대한 액세스 권한이 있는지 확인합니다. 키 자격 증명 모음은 Azure RBAC(역할 기반 액세스 제어) 및 키 자격 증명 모음 액세스 정책의 두 가지 액세스 방법을 지원합니다. 이 빠른 시작에서는 RBAC를 사용합니다.
az role assignment create --role "Key Vault Secrets Officer" --assignee <devCenterManagedIdentityObjectID> --scope /subscriptions/<subscriptionID>/resourcegroups/<resourceGroupName>/providers/Microsoft.KeyVault/vaults/<keyVaultName>
개발자 센터에 카탈로그 추가
Azure 배포 환경은 Azure DevOps 리포지토리 및 GitHub 리포지토리 연결을 지원합니다. 큐레이팅된 IaC 템플릿 세트를 리포지토리에 저장할 수 있습니다. 리포지토리를 개발자 센터에 카탈로그로 연결하면 개발 팀이 템플릿에 대한 액세스 권한을 부여하고 일관된 환경을 신속하게 만들 수 있습니다.
이 빠른 시작에서는 Azure Deployment Environments 팀에서 만들고 유지 관리하는 샘플이 포함된 GitHub 리포지토리를 연결합니다.
개발자 센터에 카탈로그를 추가하려면 먼저 몇 가지 정보를 수집해야 합니다.
GitHub 리포지토리 정보 수집
카탈로그를 추가하려면 GitHub 리포지토리 URL, 분기 및 환경 정의가 포함된 폴더를 지정해야 합니다. 개발자 센터에 카탈로그를 추가하는 프로세스를 시작하기 전에 이 정보를 수집할 수 있습니다.
이 샘플 카탈로그 를 리포지토리로 사용할 수 있습니다. 다음 단계를 위해 리포지토리 포크를 만듭니다.
팁 (조언)
Azure DevOps 리포지토리를 연결하는 경우 다음 단계를 사용합니다. Azure DevOps 리포지토리의 복제 URL을 가져옵니다.
개발자 센터에 카탈로그 추가
비밀 식별자를 검색합니다.
$SECRETID = az keyvault secret show --vault-name <keyvaultName> --name GHPAT --query id -o tsv Write-Output $SECRETID카탈로그를 추가합니다.
# Sample catalog example $REPO_URL = "<clone URL that you copied earlier>" az devcenter admin catalog create --git-hub path="/Environments" branch="main" secret-identifier=$SECRETID uri=$REPO_URL -n <catalogName> -d <devcenterName>카탈로그가 성공적으로 추가되고 동기화되었는지 확인합니다.
az devcenter admin catalog list -d <devcenterName> -o table
환경 유형 만들기
환경 유형을 사용하면 개발 팀이 배포할 수 있는 다양한 유형의 환경을 정의하는 데 도움이 됩니다. 각 환경 유형에 대해 서로 다른 설정을 적용할 수 있습니다.
환경 유형을 만듭니다.
az devcenter admin environment-type create -d <devcenterName> -n <environmentTypeName>환경 유형이 만들어졌는지 확인합니다.
az devcenter admin environment-type list -d <devcenterName> -o table
다음 단계
이 빠른 시작에서는 개발자 센터를 만들고 ID, 카탈로그 및 환경 유형으로 구성했습니다. 프로젝트를 만들고 구성하는 방법을 알아보려면 다음 빠른 시작으로 이동합니다.