0

我已使用以下内容使用 boto 将卷附加到 ec2。我正在使用 ubuntu 12.04。

region_id=boto.ec2.get_region(region,aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key)
    conn = ec2.connection.EC2Connection(region=region_id,aws_access_key_id=aws_access_key_id, aws_secret_access_key=aws_secret_access_key)
    vol = conn.create_volume(gigs,placement)
    vol.attach(intsance_id, '/dev/sdh')

我不是驱动方面的专家。我想用它来做mongo。我假设我必须登录实例并准备 EBS。我的问题是如何?我尝试了以下。

grep -q xfs /proc/filesystems || sudo modprobe xfs
sudo mkfs.xfs /dev/sdh
sudo mkfs.xfs /dev/sdh
/dev/sdh: No such file or directory
4

3 回答 3

1

在最近的 Ubuntu 机器上,设备被映射到/dev/xvdX. 在您的情况下,这应该是/dev/xvdh. 尝试使用此设备 ID 创建文件系统,然后挂载它。

于 2012-12-09T16:56:19.210 回答
0

It's possible it didn't get attached as /dev/sdh/. Try doing:

$ sudo fdisk -l

to find the correct device name.

于 2012-12-09T16:13:39.113 回答
0

首先是您附加广告的方式和额外的不必要步骤。所以将其附加为 /dev/sdh1 ,以下将起作用。否则,您还需要使用 fdisk 在磁盘上创建一个分区。

实例启动后,您需要在设备上创建文件系统,然后挂载它。

看起来像这样

创建 xfs 文件系统

mkfs.xfs -f /dev/xvdh1

挂载(将新文件系统附加到目录):

mkdir /mnt/more_storage
mount -t xfs /dev/xvdh1 /mnt/more_storage

最后,如果您想在下次重新启动时看到这一点,您需要在 /etc/fstab 中添加类似以下内容

/dev/xvdh1    /mnt/more_storage xfs     defaults,noatime  0   0

此示例使用 xfs,您可以选择 ext3/ext4 或任何您喜欢的。

/mnt/more_storage 目录实际上可以是系统上的任何空目录。在运行 mount 命令之前该目录需要存在并且必须为空。它可以很容易地成为 /var/mongo/data。

不过,正如您所说,这是针对 mongo 的,但我将提出进一步的建议。将您需要的空间至少划分为 5 个,但可能是 8 个或 10 个。因此,如果您需要 100GB,则创建 5 个每个 20GB 的 EBS 卷或每个 10GB 的 10 个。然后像原来一样附加它们,而不是指定分区号或 /dev/sdh。因此,例如,我将坚持使用 5 来节省打字,尽管有些地方大约 8 会为您提供最佳吞吐量。所以现在您已经附加了 /dev/sdh、/dev/sdi、/dev/sdj、/dev/sdk 和 /dev/sdl。

现在,您需要从上面执行一个额外的步骤来跨这些 EBS 卷创建条带化 RAID

mdadm --create --verbose /dev/md0 --level=0 --raid-device=5 /dev/xvdh /dev/xvdi /dev/xvdj /dev/xvdk /dev/xvdl

这将创建一个位于 /dev/md0 的新设备。现在将上述示例中的 /dev/xvdh1 替换为 /dev/md0 并创建文件系统并挂载它。

mount -t xfs /dev/md0 /mnt/more_storage
/dev/md0    /mnt/more_storage xfs     defaults,noatime  0   0

您还希望它在重新启动后工作,因此您需要以下命令:

echo "DEVICE /dev/xvdh /dev/xvdi /dev/xvdj /dev/xvdk /dev/xvdl" >> /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf
echo "/dev/md0    /mnt/more_storage xfs     defaults,noatime  0   0" >> /etc/fstab
于 2014-03-02T00:15:08.103 回答