다음을 통해 공유


Azure CLI를 사용하여 Azure 배포 환경을 위한 개발자 센터 만들기 및 구성

이 빠른 시작 가이드에서는 Azure 배포 환경에서 개발자 센터를 만들고 구성하는 방법을 보여 줍니다.

플랫폼 엔지니어링 팀은 일반적으로 개발 센터를 설정하고, 외부 카탈로그를 개발자 센터에 연결하고, 프로젝트를 만들고, 개발 팀에 액세스 권한을 제공합니다. 그런 다음 개발 팀은 환경 정의를 사용하여 환경을 만들고 개별 리소스에 연결하고 애플리케이션을 배포할 수 있습니다.

필수 조건

개발자 센터 만들기

Azure 배포 환경에서 개발자 센터를 만들고 구성하려면 다음을 수행합니다.

  1. Azure CLI에 로그인합니다.

    az login
    
  2. Azure CLI devcenter 확장을 설치합니다.

    az extension add --name devcenter --upgrade
    
  3. 기본 구독을 개발자 센터를 만들려는 구독으로 구성합니다.

    az account set --subscription <subscriptionName>
    
  4. 개발자 센터를 만들려는 기본 위치를 구성합니다. Azure 배포 환경에 사용 가능한 지역을 선택합니다.

    az configure --defaults location=eastus
    
  5. 개발자 센터를 만들려는 리소스 그룹을 만듭니다.

    az group create -n <resourceGroupName>
    
  6. 기본 리소스 그룹을 만든 리소스 그룹으로 구성합니다.

    az config set defaults.group=<resourceGroupName>
    
  7. 개발자 센터를 만듭니다.

    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가 필요합니다.

  1. 키 자격 증명 모음을 만듭니다.

    # Change the name to something Globally unique
    az keyvault create -n <keyvaultName>
    

    참고 항목

    다음 오류가 발생할 수 있습니다. 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. 전역적으로 고유한 키 자격 증명 모음 이름을 사용해야 합니다.

  2. GitHub PAT를 Key Vault에 비밀로 추가합니다.

    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가 포함된 키 자격 증명 모음 비밀에 대한 액세스 권한이 있는지 확인합니다. Key Vault는 두 가지 액세스 방법 즉, Azure 역할 기반 액세스 제어 또는 자격 증명 모음 액세스 정책을 지원합니다. 이 빠른 시작에서는 자격 증명 모음 액세스 정책을 사용합니다.

  1. 개발자 센터 ID의 개체 ID를 검색합니다.

    OID=$(az ad sp list --display-name <devcenterName> --query [].id -o tsv)
    echo $OID
    
  2. 개발자 센터가 Key Vault에서 비밀을 가져올 수 있도록 Key Vault 정책을 추가합니다.

    az keyvault set-policy -n <keyvaultName> --secret-permissions get --object-id $OID
    

개발자 센터에 카탈로그 추가

Azure Deployment Environments는 Azure DevOps 리포지토리 및 GitHub 리포지토리 연결을 지원합니다. 큐레이팅된 IaC 템플릿 세트를 리포지토리에 저장할 수 있습니다. 리포지토리를 개발자 센터에 카탈로그로 연결하면 개발 팀이 템플릿에 액세스할 수 있으며 일관된 환경을 빠르게 만들 수 있습니다.

이 빠른 시작에서는 Azure Deployment Environments 팀에서 만들고 유지 관리하는 샘플이 포함된 GitHub 리포지토리를 연결합니다.

개발자 센터에 카탈로그를 추가하려면 먼저 일부 정보를 수집해야 합니다.

GitHub 리포지토리 정보 수집

카탈로그를 추가하려면 GitHub 리포지토리 URL, 분기 및 환경 정의가 포함된 폴더를 지정해야 합니다. 개발자 센터에 카탈로그를 추가하는 프로세스를 시작하기 전에 이 정보를 수집할 수 있습니다.

샘플 카탈로그를 리포지토리로 사용할 수 있습니다. 다음 단계를 위해 리포지토리 포크를 만듭니다.

Azure DevOps 리포지토리를 연결하는 경우 Azure DevOps 리포지토리의 복제 URL 가져오기 단계를 사용합니다.

  1. 리포지토리로 이동하여 <>코드를 선택한 다음 복제 URL을 복사합니다.

  2. 작업 중인 분기를 기록해 둡니다.

  3. 환경 정의가 포함된 폴더를 기록해 둡니다.

    분기, 복사 URL 및 폴더가 강조 표시된 GitHub 리포지토리를 보여 주는 스크린샷.

개발자 센터에 카탈로그 추가

  1. 비밀 식별자를 검색합니다.

    SECRETID=$(az keyvault secret show --vault-name <keyvaultName> --name GHPAT --query id -o tsv)
    echo $SECRETID
    
  2. 카탈로그를 추가합니다.

    # 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 <catalogName> -d <devcenterName>
    
  3. 카탈로그가 성공적으로 추가되고 동기화되었는지 확인합니다.

    az devcenter admin catalog list -d <devcenterName> -o table
    

환경 유형 만들기

환경 유형을 사용하면 개발 팀이 배포할 수 있는 다양한 유형의 환경을 정의하는 데 도움이 됩니다. 각 환경 유형에 대해 서로 다른 설정을 적용할 수 있습니다.

  1. 환경 유형 만들기:

    az devcenter admin environment-type create -d <devcenterName> -n <environmentTypeName> 
    
  2. 환경 형식이 만들어졌는지 확인합니다.

    az devcenter admin environment-type list -d <devcenterName> -o table 
    

다음 단계

이 빠른 시작에서는 개발자 센터를 만들고 ID, 카탈로그 및 환경 유형으로 구성했습니다. 프로젝트를 만들고 구성하는 방법을 알아보려면 다음 빠른 시작으로 이동합니다.