Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 연결된 볼륨을 언제 확장해야 하는지 알고 싶습니다. 또한 운영 체제(OS) 수준에서 파티션 및 파일 시스템의 확장을 자동화하고 싶습니다.
간략한 설명
Amazon Elastic Block Store(Amazon EBS) 볼륨을 평가하고 확장하려면 AWS Systems Manager Automation 문서 세트를 사용하세요. 자동화 문서는 Amazon EC2 인스턴스의 낮은 디스크 사용량을 조사하고 선택적으로 해결할 수 있습니다.
OS 유형에 따라 AWSPremiumSupport-TroubleshootEC2DiskUsage 자동화 문서가 다른 Systems Manager 문서의 실행을 지시합니다.
다음 문서는 기본 진단을 수행하고 볼륨 마이그레이션을 위해 볼륨 크기를 확장할 수 있는지 여부를 평가합니다.
- AWSPremiumSupport-DiagnoseDiskUsageOnWindows
- AWSPremiumSupport-DiagnoseDiskUsageOnLinux
다음 문서들은 위 문서의 출력을 받아 Python 코드를 실행하여 볼륨 수정을 수행합니다.
- AWSPremiumSupport-ExtendVolumesOnWindows
- AWSPremiumSupport-ExtendVolumesOnLinux
그러면 자동화가 인스턴스에 액세스하고 볼륨의 파티션 및 파일 시스템을 확장합니다.
해결 방법
권한 부여
자동화 문서를 사용하려면 다음 권한을 부여해야 합니다. 먼저 대상 인스턴스에 연결된 Systems Manager용 AWS Identity 및 Access Management(IAM) 인스턴스 프로필이 있는지 확인하세요.
권한을 부여하려면 다음 단계를 수행하여 AssumeRole을 설정하고 자동화 문서 구성 프로세스에 대한 AutomationAssumeRole 파라미터를 지정하세요.
-
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"
}
]
}
-
수임 역할을 생성하고, 그런 다음 정책을 연결하세요.
-
다음 문구를 수정하세요. **"Resource": "*"**를 수임 역할의 ARN으로 바꿉니다.
{
"Action": [
"iam:PassRole"
],
"Resource": "*",
"Effect": "Allow"
},
자동화 문서 실행
Systems Manager 자동화 문서 세트를 사용하려면 AWSPremiumSupport-TroubleshootEC2DiskUsage 문서만 실행하세요.
AWSPremiumSupport-TroubleshootEC2DiskUsage 문서를 실행하려면 다음 단계를 완료하세요.
- Systems Manager 콘솔을 연 다음 탐색 창에서 자동화를 선택합니다.
- 자동화 실행을 선택합니다.
- AWSPremiumSupport-TroubleshootEC2DiskUsage를 선택한 후 다음을 선택합니다.
- 자동화 문서 실행에서 단순 실행을 선택합니다.
- 입력 파라미터에서 다음 정보를 입력합니다.
InstanceId에 Amazon EC2 인스턴스 ID를 입력합니다.
AutomationAssumeRole의 경우 수임 역할의 ARN을 입력하여 자동화가 사용자 본인을 대신하여 작업을 수행하도록 허용합니다.
- 요구 사항이 기본값과 다를 경우 입력 파라미터에서 다음 입력을 지정합니다.
VolumeExpansionEnabled: 문서가 영향을 받는 볼륨과 파티션을 확장할지 여부를 제어합니다(기본값: True)
VolumeExpansionUsageTrigger: 확장을 트리거하는 데 필요한 사용된 파티션 공간의 최소 비율(기본값: 85)
VolumeExpansionCapSize: EBS 볼륨 증가 최대 크기(GiB)(기본값: 2048)
VolumeExpansionGibIncrease: 볼륨 증가(GiB)(기본값: 20)
VolumeExpansionPercentageIncrease: 볼륨 증가(백분율)(기본값: 20)
- 실행을 선택합니다.
예제 시나리오
현재 볼륨은 30GB이고 4GB를 사용할 수 있습니다. 즉, 26GB의 공간을 사용 중이라는 뜻입니다. 다음과 같은 입력 파라미터를 지정하세요.
- VolumeExpansionUsageTrigger: 85
- VolumeExpansionGibIncrease: 10
- VolumeExpansionPercentageIncrease: 15
- VolumeExpansionCapSize: 2048
26GB의 사용 공간이 VolumeExpansionUsageTrigger에 대한 85% 임계값을 초과하기 때문에 10GB 용량 증가가 시작됩니다. 이러한 증가는 볼륨을 현재 볼륨 크기인 4.5GB의 10GB(또는 15%) 늘린다고 지정했기 때문에 발생합니다. 자동화 문서에서는 VolumeExpansionGibIncrease와 VolumeExpansionPercentageIncrease 사이에 가장 큰 순 증가분을 사용합니다. 새 볼륨 크기는 40GB입니다. 40GB는 지정된 2048 VolumeExpansionCapSize 내에 있습니다.
관련 정보
볼륨 크기 조정 후 Linux 파일 시스템 확장
볼륨 크기 조정 후 Windows 파일 시스템 확장
IAM을 사용하여 자동화를 위한 역할 구성