Je souhaite savoir quand étendre les volumes attachés à mes instances Amazon Elastic Compute Cloud (Amazon EC2). Je souhaite également automatiser l'extension des partitions et des systèmes de fichiers au niveau du système d'exploitation (SE).
Brève description
Vous pouvez utiliser un ensemble de documents AWS Systems Manager Automation pour évaluer et étendre les volumes Amazon Elastic Block Store (Amazon EBS). Les documents d'automatisation vous permettent d'étudier et éventuellement de remédier à la faible utilisation du disque sur une instance Amazon EC2.
Le document d’automatisation AWSPremiumSupport-TroubleshootEC2DiskUsage orchestre l'exécution des autres documents de Systems Manager en fonction du type de système d'exploitation (SE).
Les documents suivants effectuent des diagnostics de base et évaluent si vous pouvez augmenter la taille de votre volume pour faire migrer les volumes :
- AWSPremiumSupport-DiagnoseDiskUsageOnWindows
- AWSPremiumSupport-DiagnoseDiskUsageOnLinux
Les documents suivants reprennent le résultat des documents précédents et exécutent du code Python pour effectuer la modification du volume :
- AWSPremiumSupport-ExtendVolumesOnWindows
- AWSPremiumSupport-ExtendVolumesOnLinux
L'automatisation accède ensuite à l'instance et étend la partition et le système de fichiers des volumes.
Résolution
Accorder des autorisations
Vous devez accorder les autorisations suivantes pour utiliser les documents d'automatisation. Tout d'abord, assurez-vous que vous disposez d’un profil d'instance AWS Identity and Access Management (IAM) pour Systems Manager qui est attaché à l'instance cible.
Pour accorder les autorisations, procédez comme suit pour configurer AssumeRole afin de spécifier le paramètre AutomationAssumeRole pour le processus de configuration des documents d’automatisation :
-
Utilisez l'option JSON pour créer la politique suivante :
{
"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"
}
]
}
-
Créez le rôle assumé, puis associez la politique.
-
Modifiez l’instruction suivante. Remplacez "Resource": "*" par votre ARN pour le rôle assumé :
{
"Action": [
"iam:PassRole"
],
"Resource": "*",
"Effect": "Allow"
},
Exécuter le document d'automatisation
Pour utiliser l'ensemble des documents d'automatisation de Systems Manager, vous devez exécuter uniquement le document AWSPremiumSupport-TroubleshootEC2DiskUsage.
Pour exécuter le document AWSPremiumSupport-TroubleshootEC2DiskUsage, procédez comme suit :
- Ouvrez la console Systems Manager, puis choisissez Automatisation dans le volet de navigation.
- Sélectionnez Exécuter l'automatisation.
- Sélectionnez AWSPremiumSupport-TroubleshootEC2DiskUsage, puis choisissez Suivant.
- Pour Exécuter le document d’automatisation, sélectionnez Exécution simple.
- Dans Paramètres d'entrée, entrez les informations suivantes :
Pour InstanceId, entrez votre ID d'instance Amazon EC2.
Pour AutomationAssumeRole, entrez l'ARN du rôle assumé pour permettre à l'automatisation d'effectuer les actions en votre nom.
- Sous Paramètres d'entrée, spécifiez les entrées suivantes si vos exigences diffèrent des valeurs par défaut :
VolumeExpansionEnabled : Contrôle si le document va étendre les volumes et les partitions concernés (par défaut : Vrai)
VolumeExpansionUsageTrigger : Pourcentage minimum d'espace de partition utilisé requis pour déclencher l'extension (par défaut : 85)
VolumeExpansionCapSize : Taille maximale en GiB à laquelle le volume EBS va augmenter (par défaut : 2048)
VolumeExpansionGibIncrease : Augmentation du volume en GiB (par défaut : 20)
VolumeExpansionPercentageIncrease : Augmentation du volume en pourcentage (par défaut : 20)
- Sélectionnez Exécuter.
Exemple de scénario
Votre volume actuel est de 30 Go et dispose de 4 Go d'espace libre. Cela signifie que vous disposez de 26 Go d'espace utilisé. Vous devez spécifier les paramètres d'entrée suivants :
- VolumeExpansionUsageTrigger : 85
- VolumeExpansionGibIncrease : 10
- VolumeExpansionPercentageIncrease : 15
- VolumeExpansionCapSize : 2048
Étant donné que 26 Go d'espace utilisé sont supérieurs au seuil de 85 % pour VolumeExpansionUsageTrigger, une augmentation de volume de 10 Go est initiée. Cela est dû au fait que vous avez indiqué que le volume devait augmenter de 10 Go ou de 15 % par rapport à la taille de volume actuelle de 4,5 Go. Le document d'automatisation utilise la plus forte augmentation nette entre VolumeExpansionGIBIncrease et VolumeExpansionPercentageIncrease. La nouvelle taille de volume est de 40 Go. 40 Go se situent dans la limite spécifiée de 2048 pour VolumeExpansionCapsize.
Informations connexes
Étendre un système de fichiers Linux après avoir redimensionné un volume
Étendre un système de fichiers Windows après avoir redimensionné un volume
Utiliser IAM pour configurer des rôles pour l'automatisation