Come posso valutare e correggere automaticamente l'aumento del volume su un'istanza Amazon EC2 quando lo spazio libero su disco è insufficiente?

5 minuti di lettura
0

Voglio vedere se i volumi collegati alle mie istanze Amazon Elastic Compute Cloud (Amazon EC2) devono essere estesi. Inoltre, l'estensione di partizioni e file system a livello di sistema operativo (OS) è un'operazione che richiede molto tempo. Come posso automatizzare l'intero processo?

Breve descrizione

Puoi utilizzare un set di documenti di AWS Systems Manager Automation per valutare ed estendere i volumi di Amazon Elastic Block Store (Amazon EBS). I documenti di automazione funzionano all'unisono, consentendoti di esaminare e, facoltativamente, correggere il basso utilizzo del disco su un'istanza Amazon EC2.

Il documento AWS PremiumSupport-TroubleshootEC2DiskUsage Automation orchestra l'esecuzione degli altri documenti di Systems Manager, in base al tipo di sistema operativo.

Il primo set di documenti esegue la diagnostica di base e valuta se è possibile migrare espandendo le dimensioni del volume:

  • Supporto AWS Premium: diagnosi dell'utilizzo del disco su Windows
  • Supporto AWS Premium: diagnosi dell'utilizzo del disco su Linux

Il secondo set di documenti prende l'output del primo documento ed esegue il codice Python per eseguire la modifica del volume. Quindi, l'automazione accede all'istanza ed estende la partizione e il file system dei volumi:

  • Supporto AWS Premium: estendi i volumi su Windows
  • Supporto AWS Premium: estendi i volumi su Linux

Utilizza i seguenti passaggi per configurare le autorizzazioni richieste ed eseguire il documento di automazione.

Risoluzione

Concedi autorizzazioni

È necessario concedere le seguenti autorizzazioni per utilizzare i documenti di automazione.

Se non l'hai già fatto, crea un profilo di istanza di AWS Identity and Access Management (IAM) per Systems Manager. Quindi, collegalo all'istanza di destinazione.

Per configurare AssumeRole, necessario per specificare il parametro AutomationAssumeRole durante il processo di configurazione del documento di automazione, procedi nel seguente modo:

  1. Crea una politica nella scheda JSON utilizzando il seguente documento di politica JSON:
{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Action": [
        "ec2:DescribeVolumes",
        "ec2:DescribeVolumesModifications",
        "ec2:ModifyVolume",
        "ec2:DescribeInstances",
        "ec2:CreateImage",
        "ec2:DescribeImages",
        "ec2:DescribeTags",
        "ec2:CreateTags",
        "ec2:DeleteTags"
      ],
      "Resource": "*",
      "Effect": "Allow"
    },
    {
      "Action": [
        "iam:PassRole"
      ],
      "Resource": "*",
      "Effect": "Allow"
    },
    {
      "Action": [
        "ssm:StartAutomationExecution",
        "ssm:GetAutomationExecution",
        "ssm:DescribeAutomationStepExecutions",
        "ssm:DescribeAutomationExecutions"
      ],
      "Resource": "*",
      "Effect": "Allow"
    },
    {
      "Action": [
        "ssm:SendCommand",
        "ssm:DescribeInstanceInformation",
        "ssm:ListCommands",
        "ssm:ListCommandInvocations"
      ],
      "Resource": "*",
      "Effect": "Allow"
    }
  ]
}
  1. Crea il ruolo assume e allega la politica creata nel passaggio precedente.

  2. Modifica questa dichiarazione e sostituisci “Resource”: "**\ ***“, con il tuo ARN per assumere il ruolo.

{
  "Action": [
      "iam:PassRole"
    ],
    "Resource": "*",
    "Effect": "Allow"
  },

Esegui il documento di automazione

Per utilizzare il set di documenti di Systems Manager Automation, è necessario eseguire solo il documento iniziale AWSPremiumSupport-TroubleshootEC2DiskUsage. Segui questi passaggi:

  1. Apri la console di Systems Manager, quindi scegli Automazione dal riquadro di navigazione.

  2. Scegli Esegui automazione.

  3. Seleziona il pulsante di opzione per AWSPremiumSupport-TroubleshootEC2DiskUsage, quindi scegli Avanti.

  4. Per Esegui documento di automazione, seleziona Esecuzione semplice.

  5. In Parametri di input:

Per InstanceId, inserisci l'ID dell'istanza Amazon EC2.

Per AutomationAssumeRole, inserisci l'ARN del ruolo che consente all'automazione di eseguire le azioni per tuo conto. Questo è il ruolo di assunzione che hai creato al momento della concessione delle autorizzazioni.

  1. (Facoltativo) In Parametri di input, specificate i seguenti input se i requisiti differiscono dai valori predefiniti:

VolumeExpansionEnabled: Controlla se il documento estenderà i volumi e le partizioni interessati (impostazione predefinita: True)

Attivatore di utilizzo dell'espansione del volume: Percentuale minima di spazio di partizione utilizzato richiesta per attivare l'espansione (impostazione predefinita: 85)

Dimensione del cappuccio di espansione del volume: Dimensione massima in GiB alla quale il volume EBS aumenterà (impostazione predefinita: 2048)

Aumento dell'espansione del volume: Aumento del volume in GiB (impostazione predefinita: 20)

Aumento della percentuale di espansione del volume: Aumento percentuale del volume (impostazione predefinita: 20)

  1. Scegli Esegui.

La console mostra lo stato dell'automazione.

Esempio

Il tuo volume attuale è di 30 GB e dispone di 4 GB gratuiti, il che significa che hai 26 GB di spazio utilizzato. Si specificano i seguenti parametri di input:

  • Attivatore di utilizzo dell'espansione del volume: 85
  • Aumento dell'espansione del volume: 10
  • Aumento della percentuale di espansione del volume: 15
  • Dimensione del cappuccio di espansione del volume: 2048

Risultato:

L'aumento si attiva perché 26 GB di spazio utilizzato superano la soglia dell'85% specificata per VolumeExpansionUsageTrigger.

Il volume è aumentato di 10 GB. Questo perché hai specificato che il volume dovrebbe aumentare di 10 GB o del 15% dell'attuale dimensione del volume di 4,5 GB. Il documento Automation utilizza l'aumento netto maggiore tra VolumeExpansionGibIncrease e VolumeExpansionPercentageIncrease.

La nuova dimensione del volume è di 40 GB, che rientra nei 2048 VolumeExpansionCapSize specificati.


Informazioni correlate

Estendere un file system Linux dopo il ridimensionamento di un volume

Estendere un file system Windows dopo il ridimensionamento di un volume

Usa IAM per configurare i ruoli per l'automazione