一些 AWS 实例附加了“临时磁盘”,这比 EBS 快得多。但是,当您的实例停止和启动时,临时磁盘将为空白且未初始化。磁盘上的数据通常在实例重启后仍然存在。
问题:我应该在我的 AWS 实例上使用软件 RAID1,构建在临时磁盘和 EBS 卷上吗?
我的想法是,raid1 将仅在 EBS 卷的降级模式下出现,然后我们可以使用 mdadm 命令将空白临时磁盘添加回 raid。这将使应用程序更快启动 5-10 分钟,代价是在 raid1 同步时性能更差。
背景:我有一个使用 ~40 GB 数据文件的应用程序。访问时间与性能直接相关,因此磁盘速度越快,应用程序运行得越快。
从历史上看,我们从 rc.local 到 rsync 数据从 EBS 磁盘运行到临时磁盘,然后启动软件。同步需要 5-10 分钟,比从另一个实例同步所需的 5-20 分钟要好。过去,我们甚至使用 ramdisk 中的数据文件,它不如临时磁盘快。
更多信息 - 这是一个 i3.4xlarge,所以它有 2 个 NVME 临时驱动器。
# hdparm -t /dev/md? /dev/nvme?n1 /dev/xvd?
/dev/md0: 9510 MB in 3.00 seconds = 3169.78 MB/sec RAID0 of two eph drives
/dev/nvme0n1: 4008 MB in 3.00 seconds = 1335.74 MB/sec Eph drive …Run Code Online (Sandbox Code Playgroud)