연습 - 환경 설정

완료됨

중요

이 연습을 수행하려면 사용자의 Azure 구독이 필요하며 요금이 발생할 수 있습니다. Azure 구독이 아직 없는 경우 시작하기 전에 체험 계정을 만듭니다.

장난감 회사의 웹 사이트 파이프라인 작업을 시작하려면 먼저 환경을 구성해야 합니다. 본 단원에서는 본 모듈의 나머지 부분을 완료할 수 있도록 Azure 및 Azure DevOps 환경을 설정합니다.

이러한 목표를 달성하려면 다음 작업을 수행합니다.

  • 이 모듈의 Azure DevOps 프로젝트를 설정합니다.
  • 프로젝트의 리포지토리를 컴퓨터에 복제합니다.
  • Azure에서 두 개의 리소스 그룹을 만듭니다.
  • Azure Pipelines에서 두 개의 서비스 연결과 환경을 만듭니다.

Azure DevOps 프로젝트 가져오기

이 섹션에서는 Azure DevOps 조직이 이 모듈의 나머지 부분을 완료하도록 설정합니다. Azure DevOps에서 프로젝트를 만드는 템플릿을 실행하면 됩니다.

이 학습 경로의 모듈은 진행 과정을 구성합니다. 학습 목적을 위해 각 모듈에는 연결된 Azure DevOps 프로젝트가 있습니다.

학습 경로에서 이전 모듈을 완료했더라도 다음 지침에 따라 새 프로젝트를 만듭니다. 프로젝트에 새 이름을 지정해야 합니다.

템플릿 실행

Azure DevOps 프로젝트를 설정하는 템플릿을 실행합니다.

Azure DevOps Demo Generator 사이트에서 다음을 수행합니다.

  1. 로그인을 선택하고 동의를 선택하여 사이트 사용 약관에 동의합니다.

  2. 새 프로젝트 만들기 페이지에서 Azure DevOps 조직을 선택한 다음, 새 프로젝트 이름란에 ‘toy-website-end-to-end’와 같이 프로젝트 이름을 입력합니다.

    Screenshot of the Azure DevOps Demo Generator pane for creating a new project.

  3. Create Project를 선택합니다.

    템플릿을 실행하는 데 몇 분 정도 걸립니다. 다음 연습에서 작업할 파이프라인과 Bicep 파일이 자동으로 생성됩니다.

  4. Navigate to project를 선택하여 Azure DevOps의 해당 프로젝트로 이동합니다.

중요

이 모듈의 마지막 연습에는 중요한 정리 단계가 포함되어 있습니다. 이 모듈을 완료하지 않더라도 정리 단계를 수행해야 합니다.

리포지토리 복제

  1. 리포지토리>파일을 선택합니다.

    Screenshot of Azure DevOps that shows the Repos menu, with Files highlighted.

  2. 복제를 선택합니다.

    Screenshot of Azure DevOps showing the repository, with the Clone button highlighted.

  3. macOS를 사용하는 경우 Git 리포지토리를 복제하려면 특별한 암호가 필요합니다. Git 자격 증명 생성을 선택하고 표시되는 사용자 이름 및 암호를 다른 안전한 곳에 복사합니다.

  4. VS Code 복제를 선택하세요. Visual Studio(VS) 코드를 열 수 있도록 허용하라는 메시지가 표시되면 열기를 선택하세요.

    Screenshot of Azure DevOps that shows the repository settings, with the Clone in VS Code button highlighted.

  5. 확장에서 리포지토리 URI를 열 수 있도록 허용하라는 대화 상자가 나타나면 열기를 선택합니다.

  6. 리포지토리에 사용할 폴더를 만들고 리포지토리 위치 선택을 선택합니다.

  7. 이 리포지토리를 처음 사용하는 경우 로그인하라는 메시지가 표시될 수 있습니다.

    • Windows의 경우, 이 연습의 앞부분에서 Azure DevOps 로그인하는 데 사용한 것과 동일한 자격 증명을 입력합니다.

    • macOS의 경우, 방금 전에 생성한 Git 사용자 이름 및 암호를 입력합니다.

  8. Visual Studio Code가 리포지토리를 열라는 메시지를 표시합니다. 열기를 선택합니다.

    Screenshot of Visual Studio Code that shows a prompt to open the cloned repository, with the Open button highlighted.

Azure에 로그인

Azure에서 리소스 그룹을 작업하려면 Visual Studio Code 터미널에서 Azure 계정에 로그인합니다. Azure CLI 도구를 설치했는지 확인하세요.

  1. 터미널 메뉴에서 새 터미널을 선택합니다. 터미널 창은 일반적으로 화면의 아래쪽 절반에서 열립니다.

  2. 터미널 창의 오른쪽에 표시된 셸이 bash이면 올바른 셸이 열리고 다음 섹션으로 건너뛸 수 있습니다.

    Screenshot of the Visual Studio Code terminal window, with the bash option shown.

  3. Bash 이외의 셸이 나타나면 셸 드롭다운을 선택한 다음, Git Bash(기본값)를 선택합니다.

    Screenshot of the Visual Studio Code terminal window, with the terminal shell dropdown shown and Git Bash Default selected.

  4. 터미널 셸 목록에서 bash를 선택한 다음, 더하기 기호를 선택하여 bash 셸을 사용하는 새 터미널을 엽니다.

    Screenshot of the Visual Studio Code terminal window, with the bash terminal and the plus sign selected.

Azure CLI를 사용하여 Azure에 로그인

  1. Visual Studio Code 터미널에서 다음 명령을 실행하여 Azure에 로그인합니다.

    az login
    
  2. 열리는 브라우저에서 Azure 계정에 로그인합니다.

Azure에서 리소스 그룹을 작업하려면 Visual Studio Code 터미널에서 Azure 계정에 로그인합니다. Azure PowerShell을 설치했는지 확인합니다.

  1. 터미널 메뉴에서 새 터미널을 선택합니다. 터미널 창은 일반적으로 화면의 아래쪽 절반에서 열립니다.

  2. 터미널 창의 오른쪽에 표시된 셸이 powershell 또는 pwsh이면 올바른 셸이 열리고 다음 섹션으로 건너뛸 수 있습니다.

    Screenshot of the Visual Studio Code terminal window, with the p w s h option displayed in the shell dropdown.

  3. powershell 또는 pwsh 이외의 셸이 나타나면 셸 드롭다운을 선택한 다음, PowerShell을 선택합니다.

    Screenshot of the Visual Studio Code terminal window, with the terminal shell dropdown shown and powershell selected.

  4. 터미널 셸 목록에서 powershell 또는 pwsh를 선택한 다음, 더하기 기호를 선택하여 powershell 또는 pwsh 셸을 사용하는 새 터미널을 엽니다.

    Screenshot of the Visual Studio Code terminal window, with the powershell terminal and the plus sign selected.

Azure PowerShell을 사용하여 Azure에 로그인

  1. Visual Studio Code 터미널에서 다음 명령을 실행하여 Azure에 로그인합니다.

    Connect-AzAccount
    
  2. 열리는 브라우저에서 Azure 계정에 로그인합니다.

Azure에서 두 개의 리소스 그룹 만들기

두 개의 새 리소스 그룹을 만들려면 Visual Studio Code 터미널에서 다음 Azure CLI 명령을 실행합니다.

az group create --name ToyWebsiteTest --location westus3
az group create --name ToyWebsiteProduction --location westus3

두 개의 새 리소스 그룹을 만들려면 Visual Studio Code 터미널에서 다음 Azure PowerShell 명령을 실행합니다.

New-AzResourceGroup -Name ToyWebsiteTest -Location westus3
New-AzResourceGroup -Name ToyWebsiteProduction -Location westus3

Azure Pipelines에서 서비스 연결 만들기

다음으로 Azure Pipelines에서 두 개의 서비스 연결을 만듭니다. 하나는 테스트 환경을 위한 것이고 다른 하나는 프로덕션 환경을 위한 것입니다. 그러면 Azure에서 자동으로 서비스 주체가 생성됩니다. 또한 파이프라인이 리소스 그룹에 배포될 수 있도록 서비스 주체에게 리소스 그룹에 대한 기여자 역할을 부여합니다.

  1. 브라우저에서 프로젝트 설정을 선택합니다.

    Screenshot of Azure DevOps that shows the menu, with the Project settings item highlighted.

  2. 서비스 연결>서비스 연결 만들기를 선택합니다.

    Screenshot of Azure DevOps that shows the Service connections pane, with the Create service connection button highlighted.

  3. Azure Resource Manager>다음을 선택합니다.

    Screenshot of Azure DevOps that shows the Service connections pane, with the Azure Resource Manager service connection type highlighted.

  4. 서비스 주체(자동)>다음을 선택합니다.

    Screenshot of Azure DevOps that shows the New Azure service connection pane, with the Service principal (automatic) option highlighted.

  5. 구독 드롭다운 목록에서 Azure 구독을 선택합니다.

    Azure에 로그인하라는 메시지와 함께 팝업 창이 나타나면 로그인 정보를 입력하고 로그인합니다.

  6. 리소스 그룹 드롭다운 목록에서 ToyWebsiteTest를 선택합니다.

  7. 서비스 연결 이름란에 ToyWebsiteTest를 입력합니다. 모든 파이프라인에 대한 액세스 권한 부여 확인란이 선택되어 있는지 확인합니다.

    Screenshot of Azure DevOps that shows the New Azure service connection pane for the test environment, with the details completed and the Save button highlighted.

    본 연습에서는 편의상 모든 파이프라인에 서비스 연결에 대한 액세스 권한을 부여합니다. 프로덕션 리소스를 사용하는 실제 서비스 연결을 만들 때는 서비스 연결이 필요한 파이프라인으로만 액세스 권한을 제한하는 것이 좋습니다.

  8. 저장을 선택합니다.

  9. 1단계부터 8단계까지 반복하여 ToyWebsiteProduction이라는 새로운 서비스 연결을 만들면 ToyWebsiteProduction이라는 리소스 그룹에 배포됩니다.

    Screenshot of Azure DevOps that shows the New Azure service connection pane for the production environment, with the details completed and the Save button highlighted.

    변경 내용을 저장할 때 리소스 그룹 목록이 표시되지 않으면 브라우저에서 페이지를 새로 고치고, 프롬프트가 표시되면 자격 증명을 입력하고 다시 시도합니다.

참고

본 학습 경로의 이전 모듈에서는 프로덕션 환경에 승인 확인을 추가했습니다. 본 모듈에서는 편의를 위해 승인 확인을 건너뛰겠습니다. 그러나 원하는 경우 직접 승인 확인을 추가할 수 있습니다.