Microcharon - EC2
type: channel
link: https://www.microcharon.com/tag/EC2/
items: AWS EBS 根卷缩减容量操作（XFS文件系统）
items: AWS EBS 设置生命周期策略并跨账户共享
items: AWS Amazon EC2 C系列运算优化实例简单检测

AWS EBS 根卷缩减容量操作（XFS文件系统）
type: item
date: 2025-12-15T15:33:00+08:00
description: 本次按客户要求，需要对 EBS 卷进行缩容处理（缩容后已配置容量为128GB），但因为 AWS 不支持对同一个 EBS 卷缩容（只能扩容），且 CentOS 7.9 文件系统根分区默认类型是 XFS，XFS 本身也不支持缩小文件系统，只能采用迁移/重建，因此撰写本文说明相应的处理方法。PrerequisiteAMI：ami-03427ba8bf23b71c0（Sherpa CentOS 7.9.2009 x86_64 0.3.0）当前根卷：EBS 240 GiB（根分区文件系统为 XFS）一台正在运行中的 EC2 实例（设备名可能显示为 /dev/nvme0n1）操作前为旧根卷创建 Snapshot（强烈建议，避免误操作导致无法回滚）主要思路：创建一个新的 128GB EBS 卷 → 把原根卷数据迁移过去 → 让新卷具备引导能力（GRUB/FSTAB/UUID）→ 停机切换根卷启动。确认根分区文件系统类型以及启动方式EC2 控制台也可看见启动类型方式，此处不多说# 1) 看根分区的文件系统类型（ext4 / xfs 很关键） lsblk -f # 2) 再确认挂载与设备对应关系 findmnt -n -o SOURCE,TARGET,FSTYPE / # 3) 看是否是 UEFI/BIOS 启动（影响是否需要 EFI 分区） [ -d /sys/firmware/efi ] && echo "UEFI" || echo "BIOS" # 4) 看引导相关分区情况（当前你是 MBR/dos label） fdisk -l /dev/nvme0n1[root@ip-172-31-8-5 ~]# fdisk -l Disk /dev/nvme0n1: 257.7 GB, 257698037760 bytes, 503316480 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk label type: dos Disk identifier: 0x000b0d11 Device Boot Start End Blocks Id System /dev/nvme0n1p1 * 2048 503316446 251657199+ 83 Linux [root@ip-172-31-8-5 ~]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 1.8G 0 1.8G 0% /dev tmpfs 1.9G 16K 1.9G 1% /dev/shm tmpfs 1.9G 17M 1.8G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/nvme0n1p1 240G 19G 222G 8% / tmpfs 370M 0 370M 0% /run/user/1000 [root@ip-172-31-8-5 ~]# lsblk -f NAME FSTYPE LABEL UUID MOUNTPOINT nvme0n1 └─nvme0n1p1 xfs 9cff3d69-3769-4ad9-8460-9c54050583f9 / [root@ip-172-31-8-5 ~]# df -Th / Filesystem Type Size Used Avail Use% Mounted on /dev/nvme0n1p1 xfs 240G 19G 222G 8% / [root@ip-172-31-8-5 ~]# findmnt -n -o SOURCE,TARGET,FSTYPE / /dev/nvme0n1p1 / xfs [root@ip-172-31-8-5 ~]# [ -d /sys/firmware/efi ] && echo "UEFI" || echo "BIOS" BIOS [root@ip-172-31-8-5 ~]# [root@ip-172-31-8-5 ~]# fdisk -l /dev/nvme0n1 Disk /dev/nvme0n1: 257.7 GB, 257698037760 bytes, 503316480 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/opt…

AWS EBS 设置生命周期策略并跨账户共享
type: item
date: 2025-12-04T15:31:01+08:00
description: 由于需求，需要在账户上自动创建 EBS 快照并分享给跨账户用户共享管理，EBS 快照的 Data Lifecycle Manager 可以制定相关策略。通过控制台创建基于计划的策略使用“EBS 快照策略”和基于事件的策略使用“跨账户复制事件策略”均可跨账户复制事件策略选择策略类型进入EC2，左侧菜单栏中 Elastic Block Store 子项中找到“生命周期管理器”（DLM）这一项，创建生命周期策略。创建生命周期策略输入策略描述，如"Daily snapshot policy with cross-account sharing"，然后添加其它 AWS 账户 ID，此处可以在右上角处可以复制下来。“复制拥有此快照描述的快照”即用正则表达式筛选，如 .* 代表使用此账户复制由指定的 AWS 账户共享的所有快照。键入策略名称。如果同区域，则目标账户区域和源账户区域保持一致，过期时间看自身情况，其余 KMS 密钥这些，如无高级设置，默认即可。下方“策略状态”如需立即生效，则选中“已启用”，未启用则不会在策略创建好后生成快照。EBS 快照策略选择策略类型创建生命周期策略目标资源类型选择卷或是实例，若是实例的话则会将附加上的所有卷都进行创建快照，指定目标资源标签，资源必须附上相应的标签才行。如下选项根据自身情况所定配置计划此处设置详细计划时可以在下拉菜单中找到用 cron 表达式，设置保留数量在高级选项中找到“跨账户共享”，即可共享给其它账户通过CloudFormation堆栈创建AWSTemplateFormatVersion: '2010-09-09' Description: 'Setup DLM to create EBS snapshots and share them with another AWS Account.' Parameters: TargetAccountId: Type: String Description: 'The 12-digit AWS Account ID to share snapshots with.' AllowedPattern: '^\d{12}$' VolumeTagKey: Type: String Default: 'BackupPlan' Description: 'The tag key on EBS volumes to target.' VolumeTagValue: Type: String Default: 'Gold' Description: 'The tag value on EBS volumes to target.' SnapshotRetentionCount: Type: Number Default: 7 Description: 'Number of snapshots to retain.' Resources: # IAM Role for DLM # DLM needs permission to manage snapshots and modify their attributes (for sharing) DLMLifecycleRole: Type: AWS::IAM::Role Properties: AssumeRolePolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Principal: Service: dlm.amazonaws.com Action: sts:AssumeRole Policies: - PolicyName: DLMSnapshotManagement PolicyDocument: Version: '2012-10-17' Statement: - Effect: Allow Action: - ec2:CreateSnapshot - ec2:CreateSnapshots - ec2:DeleteSnapshot - ec2:DescribeInstances - ec2:DescribeVolumes - ec2:DescribeSnapshots # Permissions required to add tags to created snapshots - ec2:CreateTags Resource: "*" - Effect: Allow Action: # Permission specifically required to SHARE snapshots - ec2:ModifySnapshotAttribute - ec2:DescribeSnapshotAttribute Resourc…

AWS Amazon EC2 C系列运算优化实例简单检测
type: item
date: 2024-06-23T13:19:00+08:00
description: Notice非 Spot 实例，为按需型 On-Demand 实例，计算优化类型，us-east-1 区域 (C7i-flex 为 us-east-2)，可用区任意Amazon Machine Image (AMI): Canonical, Ubuntu, 24.04 LTS4xlarge 大小: 16 vCPU, 30/32/42 GiB RAMEBS Volumes: 80 GiB io2, IOPS 80000 (指定 C4 IOPS为 40000)Amazon EBS 卷类型 - Amazon EBS在 AWS Nitro 系统上构建的实例 - Amazon EC2Amazon EC2 C7gAmazon EC2 C7g 執行個體 – 運算 – Amazon Web Services{ "MaxCount": 1, "MinCount": 1, "ImageId": "ami-0eac975a54dfee8cb", "InstanceType": "c7g.4xlarge", "KeyName": "development", "EbsOptimized": true, "BlockDeviceMappings": [ { "DeviceName": "/dev/sda1", "Ebs": { "Encrypted": false, "DeleteOnTermination": true, "Iops": 80000, "SnapshotId": "snap-0c19cb0f135df7dcb", "VolumeSize": 80, "VolumeType": "io2" } } ], "NetworkInterfaces": [ { "AssociatePublicIpAddress": true, "DeviceIndex": 0, "Groups": [ "sg-0a2e663aa07596f6a" ] } ], "TagSpecifications": [ { "ResourceType": "instance", "Tags": [ { "Key": "Name", "Value": "c7g-001" } ] } ], "MetadataOptions": { "HttpEndpoint": "enabled", "HttpPutResponseHopLimit": 2, "HttpTokens": "required" }, "PrivateDnsNameOptions": { "HostnameType": "ip-name", "EnableResourceNameDnsARecord": true, "EnableResourceNameDnsAAAARecord": false } }# ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## # # Yet-Another-Bench-Script # # v2024-06-09 # # https://github.com/masonr/yet-another-bench-script # # ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## ## # Sat Jun 22 13:49:00 UTC 2024 ARM compatibility is considered *experimental* Basic System Information: --------------------------------- Uptime : 0 days, 0 hours, 0 minutes Processor : Neoverse-V1 BIOS AWS Graviton3 AWS Graviton3 CPU @ 2.6GHz CPU cores : 16 @ ??? MHz AES-NI : ✔ Enabled VM-x/AMD-V : ❌ Disabled RAM : 30.8 GiB Swap : 0.0 KiB Disk : 77.4 GiB Distro : Ubuntu 24.04 LTS Kernel : 6.8.0-1008-aws VM Type : AMAZON IPv4/IPv6 : ✔ Online / ❌ Offline IPv4 Network Information: --------------------------------- ISP : Amazon Technologies Inc. ASN : AS14618 Amazon.com, Inc. Host : AWS EC2 (us-east-1) Locatio…