Kant's IT/Issue on IT&Security

Azure 자동화 Runbook 만들기

Kant Jo 2024. 11. 10. 15:34

How to Create Your First Azure Automation Runbook with PowerShell

 

How to Create Your First Azure Automation Runbook with PowerShell

Learn how to create, publish and run your first Azure Automation runbook using PowerShell and the Azure CLI. This step-by-step guide walks through setting up an Automation account, creating a runbook, and executing it in Azure.

adamtheautomator.com

 

  • Azure Automation 서비스 개요
    • Azure Automation은 Azure 및 온프레미스 환경에서 작업을 자동화할 수 있는 강력한 서비스
    • Runbook은 특정 작업을 수행하는 스크립트 또는 워크플로우로, Azure 환경에서 자동화 작업을 수행
  • 환경 설정
    • 리소스 그룹 생성: 모든 자원을 담을 리소스 그룹을 PowerShell을 사용해 생성
      New-AzResourceGroup -Name 'AzAutomationTutorial' -Location 'East US'
    • 리소스 그룹 이름과 위치를 변수에 저장**
      $resourceGroupName = 'AzAutomationTutorial'
      $location = 'East US'
  • 자동화 계정 생성
    • 자동화 리소스를 관리할 Automation Account를 생성
      New-AzAutomationAccount -Name 'MyAzAutomationAccount' -Location $location -ResourceGroupName $resourceGroupName
    • 자동화 계정 이름을 변수에 저장
      $automationAccountName = 'MyAzAutomationAccount'
  • Runbook 생성
    • VS Code에서 Azure Automation 확장을 사용하여 PowerShell 7.2 Runbook 생성
      • Azure 아이콘 클릭 → Automation Account > Runbooks로 이동 → "Create runbook" 선택
      • 이름: MyAzAutomationRunbook, 타입: PowerShell 7.2
    • 코드 추가
      Write-Output "Hello from my first Azure Automation runbook!"
  • Runbook 테스트 및 게시
    • VS Code에서 로컬 실행 후 출력 확인
    • Azure로 게시:
      Get-AzAutomationRunbook -ResourceGroupName $resourceGroupName -AutomationAccountName $automationAccountName -Name 'MyAzAutomationRunbook'
  • Runbook 실행
    • Runbook 실행:
      Start-AzAutomationRunbook -Name 'MyAzAutomationRunbook' -ResourceGroupName $resourceGroupName -AutomationAccountName $automationAccountName
    • 실행된 Job 상태 확인 및 결과 출력:
      $job = Get-AzAutomationJob -ResourceGroupName $resourceGroupName -AutomationAccountName $automationAccountName -RunbookName 'MyAzAutomationRunbook'
      Get-AzAutomationJobOutput -Id $job.JobId -ResourceGroupName $resourceGroupName -AutomationAccountName $automationAccountName -Stream Output
  • 결론
    • Azure Automation에서 PowerShell을 사용해 Runbook을 생성하고 실행하는 기본 흐름을 이해
    • 이후 더 복잡한 작업을 자동화해 Azure 환경에서 운영 효율성을 높이는 다양한 Runbook을 작성할 수 있음