Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon 활용률이 낮은 VM의 종료를 어떻게 자동화 할 수 있습니까?


활용률이 낮은 VM의 종료를 어떻게 자동화 할 수 있습니까?


활용되지 않은 Azure VM의 종료를 자동화하는 것은 각각 고유 한 장점과 복잡성을 통해 여러 가지 방법을 통해 달성 될 수 있습니다.

1. Azure Auto-Shutdown 기능

가장 간단한 방법은 Azure의 내장 자동 분쇄 기능을 사용하는 것입니다. 이를 통해 VM이 종료 될 수있는 특정 시간을 설정할 수 있으므로 해외 시간 동안 비용을 줄일 수 있습니다. 이것을 구성하려면 :

- Azure 포털에 로그인하십시오.
- 구성하려는 VM으로 이동하십시오.
- 운영 섹션에서 자동 분쇄를 선택하십시오.
- 스위치를 ON으로 전환하고 원하는 셧다운 시간을 설정 한 후 전자 메일 또는 Webhook [1] [9] [10]를 통해 알림을 선택적으로 구성하십시오.

그러나이 방법은 VMS를 자동으로 다시 시작하거나 CPU 사용과 같은 복잡한 조건을 처리하지 않습니다.

2. Azure Automation

CPU 사용 또는 기타 조건에 따라 VMS를 종료하는 것과 같은보다 복잡한 시나리오의 경우 Azure Automation을 사용할 수 있습니다. 여기에는 특정 기준에 따라 VM을 중지 할 수있는 런북을 만드는 것이 포함됩니다.

- Azure Automation 계정 작성 : Azure 리소스를 관리하는 스크립트를 실행하는 데 필요합니다 [3].
- 런북 만들기 : VM의 상태를 확인하고 활용률이 낮은 경우 중지하는 PowerShell 스크립트를 작성하십시오. 예를 들어, CPU 사용량을 확인하고 VM이 특정 임계 값보다 낮은 경우 [3] [4]를 중지 할 수 있습니다.
- 일정 설정 : 런북을 일정에 연결하여 정기 간격으로 실행하여 활용되지 않은 VMS를 확인하고 잠재적으로 중지합니다 [3].

3. Azure 경고 및 액션 그룹

또 다른 방법은 Azure Monitor를 사용하여 CPU 사용 또는 기타 메트릭을 기반으로 경고를 생성하는 것입니다. 이러한 경고가 트리거되면 VM을 중지하는 액션 그룹을 호출 할 수 있습니다.

- 경고 규칙 작성 : VM의 CPU 사용이 특정 임계 값 아래로 떨어질 때 트리거하는 Azure 모니터에서 경고를 설정하십시오 [4] [6].
- 액션 그룹 구성 : 경고가 트리거 될 때 Webhook 또는 기타 작업을 포함하는 작업 그룹을 설정합니다 [2] [4].

4. Azure 기능

Azure 기능을 사용하여 VM 셧다운을 자동화 할 수도 있습니다. 일정에 따라 실행되거나 트리거를 기반으로하는 함수를 만들 수 있으며 Azure의 API를 사용하여 VMS를 중지 할 수 있습니다.

- 기능 앱 생성 : VM 사용을 확인하고 필요한 경우 중지하는 함수를 개발하십시오 [5].
- 기능 예약 : Azure의 스케줄링 기능을 사용하여 특정 시간 또는 간격으로 기능을 실행하십시오 [5].

각 방법에는 고유 한 장점이 있으며 요구 사항의 복잡성과 환경 규모에 따라 선택할 수 있습니다.

인용 :
[1] https://learn.microsoft.com/en-us/azure/virtual-machines/auto-shutdown-vm
[2] https://www.brentmcconnell.com/2021/04/26/autoshutdown
[3] https://dev.to/rajeshkumaryadavdotcom/how-to-shutdown-your-virtual-machine-automically when-for-x--a-step-guide-24jn
[4] https://learn.microsoft.com/en-us/azure/virtual-machines/cost-optimization-best-practices
[5] https://www.reddit.com/r/azure/comments/xtdaa4/automating_stopping_vms/
[6] https://stackoverflow.com/questions/57897996/underutilized-virtual-machines-azure-alerts
[7] https://stackoverflow.com/questions/71391125/is-it-possible-to-automate-in-azure-vms-to-save-costs
[8] https://developer.harness.io/docs/cloud-cost-management/use-ccm-cost-optimization/ccm-recommendations/azure-vm/
[9] https://impulztech.com/optimizing-azure-workloads-automate-vm-startup-andshutdown/
[10] https://turbo360.com/blog/auto-shutdown-azure-vm-w-idle