클라우드 리소스의 자동화된 배포는 현대 IT 운영의 핵심 부분이 되었습니다. GitHub Actions와 같은 도구를 사용하여 Azure 리소스 간소화 워크플로우를 배포하고, 수동 오류를 줄이고 프로젝트 전달을 가속화합니다. 이 문서는 GitHub Actions를 사용하여 Azure 리소스의 자동화된 배포를 구현하는 방법을 탐구합니다.

Basics에 대한 이해

GitHub Actions는 개발자가 GitHub 저장소에서 직접 워크플로우를 자동화할 수 있도록 지속적인 통합 및 지속적인 배포(CI/CD) 플랫폼입니다. Azure, Microsoft의 클라우드 플랫폼은 가상 머신, 데이터베이스, 앱 서비스 등 다양한 리소스를 제공하여 스크립트 및 API를 통해 자동으로 제공될 수 있습니다.

관련 상품

  • 필요한 권한이있는 Azure 계정
  • GitHub 저장소
  • Azure CLI는 초기 설정에 로컬로 설치
  • Azure에 할당된 Contributor 역할과 서비스

Azure Service Principal 설정

먼저, GitHub Actions를 Azure로 인증할 수 있도록 서비스 Principal을 만듭니다. Azure CLI를 사용하십시오.

] ]] ]] ]] ]] ] ] ] ] ] ] ] ] ]] ] ]] ]] ] ]

appId, password], ]]tenant] 를 참고하세요. GitHub의 비밀로 추가될 것입니다.

GitHub 비밀 구성

GitHub 저장소에 Navigate, 다음 설정 > 비밀 > 행동. 다음 비밀을 추가:

  • AZURE CLIENT ID: 당신의 appId
  • AZURE SECRET: 귀하의 암호
  • AZURE TENANT ID: 당신의 연산
  • AZURE SUBSCRIPTION ID: 귀하의 구독 ID

GitHub Actions Workflow 만들기

저장소에서 ]에서 새로운 워크플로 파일을 만듭니다. 이 파일은 Azure 리소스를 자동으로 배포하는 단계를 정의합니다.

name: Deploy Azure Resources

on:
 push:
 branches:
 - main

jobs:
 build-and-deploy:
 runs-on: ubuntu-latest
 steps:
 - name: Checkout code
 uses: actions/checkout@v3

 - name: Login to Azure
 uses: azure/login@v1
 with:
 client-id: ${{ secrets.AZURE_CLIENT_ID }}
 client-secret: ${{ secrets.AZURE_SECRET }}
 tenant-id: ${{ secrets.AZURE_TENANT_ID }}

 - name: Deploy Resources
 run: |
 az account set --subscription ${{ secrets.AZURE_SUBSCRIPTION_ID }}
 az deployment group create \
 --resource-group myResourceGroup \
 --template-file azuredeploy.json \
 --parameters @azuredeploy.parameters.json

이 워크플로우는 Azure로 로그인하고 ARM 템플릿을 기반으로 리소스를 배포합니다. 특정 리소스 프로비저닝 요구에 맞게 배포 명령을 사용자 정의할 수 있습니다.

자동화된 Deployment의 이점

  • 일관된 반복 가능한 배포
  • 자원의 더 빠른 제공
  • 수동 오류 감소
  • 협력 및 추적 향상

GitHub Actions와 Azure를 사용하여 자동화된 배포 파이프라인을 구현하여 DevOps 관행을 크게 향상시키고 신뢰할 수 있고 효율적인 클라우드 리소스 관리가 가능합니다.