tri*_*cky 22 mount amazon-ec2 amazon-web-services
所以我在每个节点上用NVME磁盘创建了i3.large,这是我的过程:
所以这一切都有效,我可以连接回实例.我的新分区有500个Go.
但在我停止并重新启动EC2机器后,其中一些随机变得无法访问(AWS警告仅检查1/2测试状态)
当我看到为什么它不可访问的日志它告诉我,它是关于nvme分区(但我做了sudo mount -a来检查这是否正常,所以我不明白)
我没有准确的AWS日志,但我得到了一些内容:
尝试打开时超级块中的错误幻数
然后超级块已损坏,您可以尝试使用备用超级块运行e2fsck:
/ dev/fd/9:第2行:plymouth:找不到命令
Mic*_*bot 17
停止和启动实例会擦除临时磁盘,将实例移动到新的主机硬件,并为您提供新的空磁盘......因此,在停止/启动后,临时磁盘将始终为空白.当实例停止时,它在任何物理主机上都不存在 - 资源被释放.
因此,最佳方法,如果您要停止并启动实例,则不是将它们添加到/etc/fstab第一次启动时将它们格式化,而是在此之后安装它们.测试文件系统是否已存在的一种方法是使用该file实用程序grep及其输出.如果grep找不到匹配项,则返回false.
i3实例类上的NVMe SSD是Instance Store Volume的一个示例,也称为Ephemeral [Disk | 卷| 驾驶 ].它们实际上位于实例内部并且非常快,但不是冗余的,不适用于持久数据......因此,"短暂的".持久性数据需要位于弹性块存储(EBS)卷或弹性文件系统(EFS)上,这两者都可以在实例停止/启动,硬件故障和维护时继续存在.
目前尚不清楚为什么您的实例无法启动,但是nofail当卷存在但没有文件系统时,可能无法按预期执行操作.我的印象是它最终应该成功.
但是,apt-get install linux-aws如果运行Ubuntu 16.04 ,则可能需要.Ubuntu 14.04 NVMe支持不是很稳定,不推荐使用.
这三种存储解决方案中的每一种都有其优点和缺点.
Instance Store是本地的,所以它很快......但是,它是短暂的.它经受住了硬性和软性的重新启动,但没有停止/启动周期.如果您的实例遇到硬件故障,或者计划退役,最终发生在所有硬件上,则必须停止并启动实例以将其移至新硬件.保留和专用实例不会更改临时磁盘行为.
EBS是持久的冗余存储,可以从一个实例分离并移动到另一个实例(这会在停止/启动时自动发生).EBS支持时间点快照,这些在块级别是增量的,因此您不需要为存储未在快照中更改的数据付费...但是通过一些优秀的巫术,您也没有跟踪"完整"与"增量"快照 - 快照只是指向备份数据块指针的逻辑容器,因此它们本质上是所有"完整"快照,但只是按照增量计费.删除快照时,只会从后端存储系统中清除不再需要还原该快照和任何其他快照的块(对您而言,实际上使用的是Amazon S3).
EBS卷可作为SSD和旋转盘片磁性卷,同样需要在成本,性能和适当的应用方面进行权衡.请参阅EBS卷类型.EBS卷模仿普通硬盘,除了它们的容量可以按需手动增加(但不减少),并且可以在不关闭系统的情况下从一种卷类型转换为另一种卷类型.EBS可以即时完成所有数据迁移,性能降低但不会中断.这是一项相对较新的创新.
EFS使用NFS,因此您可以在任意数量的实例上安装EFS文件系统,甚至可以跨一个区域内的可用区域安装.EFS中任何一个文件的大小限制为 52太字节,您的实例实际上将报告8艾字节的可用空间.实际可用空间用于所有实际目的是无限的,但EFS也是最昂贵的 - 如果你在那里存储了一个52 TiB文件一个月,那么存储将花费超过15,000美元.我储存的最多的是2周大约20 TiB,花了我大约5万美元,但如果你需要空间,那里就是空间.它按小时收费,所以如果您将52 TiB文件存储了几个小时然后将其删除,那么您只需支付50美元.EFS中的"弹性"是指容量和价格.您没有在EFS上预先设置空间.您可以使用所需内容并删除不需要的内容,并按小时计算可计费大小.
没有S3,对存储的讨论就不完整.它不是文件系统,它是一个对象存储.在EFS价格的约1/10,S3也有效无限容量,最大物体尺寸为5TB.使用S3对象而不是文件可以更好地设计某些应用程序.
无论是在您的数据中心还是在另一个云中,AWS都可以轻松地使用S3.其他存储技术旨在在EC2内部使用,但有一个未记录的解决方法允许EFS在外部或跨区域使用,具有代理和隧道.
Nav*_*ala 10
近一个月以来,我一直在使用“c5”类型的实例,主要是带有 nvme 驱动器的“c5d.4xlarge”。因此,以下是在 Ubuntu 实例上对我有用的方法:
首先获取位置 nvme 驱动器位于:
lsblk
Run Code Online (Sandbox Code Playgroud)
我的总是安装在nvme1n1. 然后检查它是否是一个空卷并且没有任何文件系统,(它通常没有,除非您重新安装)。输出应该是/dev/nvme1n1: data空驱动器:
sudo file -s /dev/nvme1n1
Run Code Online (Sandbox Code Playgroud)
然后执行此操作以格式化(如果从上一步中您了解到您的驱动器具有文件系统并且不是空驱动器。跳过此步骤并转到下一步):
sudo mkfs -t xfs /dev/nvme1n1
Run Code Online (Sandbox Code Playgroud)
然后在当前目录创建一个文件夹并挂载nvme驱动器:
sudo mkdir /data
sudo mount /dev/nvme1n1 /data
Run Code Online (Sandbox Code Playgroud)
你现在甚至可以通过运行来检查它的存在:
df -h
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
22718 次 |
| 最近记录: |