[英]Mounting an Additional EBS volume to AMI with EC2 Image Builder
我正在使用 EC2 Image Builder Service 来构建黄金 AMI。
用例:
我想在实例中附加额外的 EBS 卷,在那里我将安装第三方组件并将所有内容存储在那里,而不是对我的根设备执行所有操作。 此后我想为它构建 AMI,所以我目前正在使用 EC2 Image Builder Service。
问题陈述:
我想将一个额外的 EBS 卷安装到实例(正在构建 AMI)。 为了实现这一点,我已经包含了mounting
设备命令并将它们包含在自定义构建组件中。
name: DeployComponents
description: This is to deploycomponents.
schemaVersion: 1.0
phases:
- name: build
steps:
- name: DeploymentStep
action: ExecuteBash
inputs:
commands:
- echo "Attaching Additional EBS Volume."
- lsblk
- sudo useradd -m abc -p abc
- sudo groupadd cloud
- sudo usermod -a -G cloud cloud
- sudo umount -f /dev/sdb
- sudo mkfs -t ext4 /dev/sdb
- sudo mkdir /cloud
- mount /dev/sdb /cloud
- echo /dev/sdb /cloud ext4 defaults,nofail 0 2 >> /etc/fstab
- sed -i 's+/opt/mount1+/cloud+' /etc/fstab
- sudo chown -R cloud:cloud /cloud
配方中还包括相同的设备,即/dev/sdb
。
当我查看 EC2 Image Builder 日志时,我看到了这个:
日志:
umount: /dev/sdb: mountpoint not found
mke2fs 1.42.9 (28-Dec-2013)
Could not stat /dev/sdb --- No such file or directory
The device apparently does not exist; did you specify it correctly?
mount: special device /dev/sdb does not exist
umount: /dev/sdb: mountpoint not found
mke2fs 1.42.9 (28-Dec-2013)
Could not stat /dev/sdb --- No such file or directory
The device apparently does not exist; did you specify it correctly?
mount: special device /dev/sdb does not exist
我错过了什么?
任何帮助表示赞赏。
提前谢谢了。
我弄清楚了这个问题。
这是由于AWS
上设备的naming convention
我在机器上运行了lsblk
命令(将用于创建 AMI),output 是这样的
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
nvme0n1 259:1 0 100G 0 disk
└─nvme0n1p1 259:2 0 100G 0 part /
nvme1n1 259:0 0 100G 0 disk
我发现/dev/sdb
的命名约定将是/dev/nvme1n1
参考:
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/nvme-ebs-volumes.html https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ebs-using-volumes.html
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.