AWS EC2 实例上的 LVM 镜像

问题描述

我需要设置一个 Ubuntu AWS EC2 实例来使用本地 SSD 卷(例如 i3 实例上的卷)。本地 SSD 比 EBS 卷快得多,当您需要大量磁盘空间 (>10TB) 和 IOPS 时,EBS 卷也变得相当昂贵。

由于本地卷是不稳定的(它们在实例停止/启动后无法生存),我正在考虑备份数据的选项。

我尝试使用 2 个本地 SSD 卷创建一个 raid0 设备,然后使用 lvm 使用 raid 设备和 EBS 卷(st1 - 慢得多但比 io1 便宜)创建镜像 lv。 即使raid设备消失了,镜像的lv也应该存在。

问题是生成的 lvm 设备的速度类似于 EBS 卷,而不是 raid 设备。

sudo mdadm --create --verbose /dev/md0 --level=0 --name=local-ssd-raid --raid-devices=2 /dev/nvme0n1 /dev/nvme1n1
sudo pvcreate /dev/md0
sudo pvcreate /dev/xvdf
sudo vgcreate mixedvg /dev/md0 /dev/xvdf
sudo lvcreate -n data -l 100%FREE -m1 mixedvg /dev/md0 /dev/xvdf
sudo hdparm -tT /dev/mapper/mixedvg-data

/dev/mapper/mixedvg-data:
 Timing cached reads:   18336 MB in  1.99 seconds = 9217.77 MB/sec
 Timing buffered disk reads: 936 MB in  3.00 seconds = 311.52 MB/sec

有没有办法指定lvm应该使用哪个物理卷作为“主要”?我想将 raid 设备指定为主要设备。较慢的 EBS 卷可以以较慢的速度更新。

您是否有其他以自动方式将此类数据备份到 EBS 的经验?

谢谢!

解决方法

您可以查看以下文章,其中演示了如何使用 --write-mostly 选项 https://n2ws.com/blog/how-to-guides/ephemeral-storage-on-ebs-volume