Scalabilità verticale di macchine virtuali di Linux in Azure tramite Automazione di AzureVertically scale Azure Linux virtual machine with Azure Automation

La scalabilità verticale è il processo di aumento o riduzione delle risorse di una macchina in risposta al carico di lavoro.Vertical scaling is the process of increasing or decreasing the resources of a machine in response to the workload. In Azure tale operazione può essere eseguita modificando le dimensioni della macchina virtuale.In Azure this can be accomplished by changing the size of the Virtual Machine. Può essere utile negli scenari seguenti:This can help in the following scenarios

  • Se la macchina virtuale non viene usata di frequente, è possibile diminuirne le dimensioni per ridurre i costi mensiliIf the Virtual Machine is not being used frequently, you can resize it down to a smaller size to reduce your monthly costs
  • Se nella macchina virtuale si osserva un picco di carico, è possibile aumentarne le dimensioni per una maggiore capacitàIf the Virtual Machine is seeing a peak load, it can be resized to a larger size to increase its capacity

Per eseguire questa operazione, seguire questa procedura:The outline for the steps to accomplish this is as below

  1. Configurare Automazione di Azure per l'accesso alle macchine virtualiSetup Azure Automation to access your Virtual Machines
  2. Importare i runbook di scalabilità verticale di Automazione di Azure nella sottoscrizioneImport the Azure Automation Vertical Scale runbooks into your subscription
  3. Aggiungere un webhook al runbookAdd a webhook to your runbook
  4. Aggiungere un avviso alla macchina virtualeAdd an alert to your Virtual Machine

Nota

A causa delle dimensioni della prima macchina virtuale, le dimensioni a cui la macchina può essere ridimensionata possono essere limitate a seconda della disponibilità di altre dimensioni nel cluster in cui viene distribuita la macchina virtuale corrente.Because of the size of the first Virtual Machine, the sizes it can be scaled to, may be limited due to the availability of the other sizes in the cluster current Virtual Machine is deployed in. Nei runbook di automazione pubblicati usati in questo articolo viene considerato questo caso e la scalabilità viene applicata solo all'interno delle coppie di dimensioni delle macchine virtuali seguenti.In the published automation runbooks used in this article we take care of this case and only scale within the below VM size pairs. Pertanto, una macchina virtuale Standard_D1v2 non verrà improvvisamente ridimensionata verso l'alto a una Standard_G5 o verso il basso a una Basic_A0.This means that a Standard_D1v2 Virtual Machine will not suddenly be scaled up to Standard_G5 or scaled down to Basic_A0.

coppie di ridimensionamento di dimensioni delle macchine virtualiVM sizes scaling pair
Basic_A0Basic_A0 Basic_A4Basic_A4
Standard_A0Standard_A0 Standard_A4Standard_A4
Standard_A5Standard_A5 Standard_A7Standard_A7
Standard_A8Standard_A8 Standard_A9Standard_A9
Standard_A10Standard_A10 Standard_A11Standard_A11
Standard_D1Standard_D1 Standard_D4Standard_D4
Standard_D11Standard_D11 Standard_D14Standard_D14
Standard_DS1Standard_DS1 Standard_DS4Standard_DS4
Standard_DS11Standard_DS11 Standard_DS14Standard_DS14
Standard_D1v2Standard_D1v2 Standard_D5v2Standard_D5v2
Standard_D11v2Standard_D11v2 Standard_D14v2Standard_D14v2
Standard_G1Standard_G1 Standard_G5Standard_G5
Standard_GS1Standard_GS1 Standard_GS5Standard_GS5

Configurare Automazione di Azure per l'accesso alle macchine virtualiSetup Azure Automation to access your Virtual Machines

La prima operazione da eseguire è creare l'account di Automazione di Azure che ospiterà i runbook usati per ridimensionare le istanze del set di scalabilità VM.The first thing you need to do is create an Azure Automation account that will host the runbooks used to scale the VM Scale Set instances. Il servizio Automazione ha introdotto di recente la funzionalità "Account RunAs", che semplifica molto l'impostazione dell'entità servizio per l'esecuzione automatica di runbook per conto dell'utente.Recently the Automation service introduced the "Run As account" feature which makes setting up the Service Principal for automatically running the runbooks on the user's behalf very easy. Altre informazioni sono disponibili nell'articolo seguente.You can read more about this in the article below:

Importare i runbook di scalabilità verticale di Automazione di Azure nella sottoscrizioneImport the Azure Automation Vertical Scale runbooks into your subscription

I runbook necessari per la scalabilità verticale della macchina virtuale sono già stati pubblicati nella raccolta dei runbook di Automazione di Azure.The runbooks that are needed for Vertically Scaling your Virtual Machine are already published in the Azure Automation Runbook Gallery. Sarà necessario importarli nella sottoscrizione.You will need to import them into your subscription. Per informazioni sull'importazione dei runbook, vedere l'articolo seguente:You can learn how to import runbooks by reading the following article.

I runbook da importare sono visualizzati nell'immagine seguente:The runbooks that need to be imported are shown in the image below

Importazione runbook

Aggiungere un webhook al runbookAdd a webhook to your runbook

Dopo aver importato i runbook, è necessario aggiungere un webhook al runbook in modo che possa essere attivato da un avviso da una macchina virtuale.Once you've imported the runbooks you'll need to add a webhook to the runbook so it can be triggered by an alert from a Virtual Machine. Informazioni dettagliate sulla creazione di un webhook per il runbook sono disponibili nell'articolo seguente:The details of creating a webhook for your Runbook can be read here

Assicurarsi di copiare il webhook prima di chiudere la finestra di dialogo del webhook, in quanto sarà necessario nella sezione successiva.Make sure you copy the webhook before closing the webhook dialog as you will need this in the next section.

Aggiungere un avviso alla macchina virtualeAdd an alert to your Virtual Machine

  1. Selezionare le impostazioni della macchina virtualeSelect Virtual Machine settings
  2. Selezionare "Regole di avviso"Select "Alert rules"
  3. Selezionare "Aggiungi avviso"Select "Add alert"
  4. Selezionare una metrica per attivare l'avvisoSelect a metric to fire the alert on
  5. Selezionare una condizione che, se soddisfatta, farà generare l'avvisoSelect a condition, which when fulfilled will cause the alert to fire
  6. Selezionare una soglia affinché la condizione nel passaggio 5Select a threshold for the condition in Step 5. sia soddisfatta.to be fulfilled
  7. Selezionare un periodo in cui il servizio di monitoraggio verificherà la condizione e la soglia dei passaggi 5 e 6Select a period over which the monitoring service will check for the condition and threshold in Steps 5 & 6
  8. Incollare il webhook copiato dalla sezione precedentePaste in the webhook you copied from the previous section.

Aggiunta di un avviso alla macchina virtuale 1

Aggiunta di un avviso alla macchina virtuale 2