【问题标题】:Mounting an Additional EBS volume to AMI with EC2 Image Builder使用 EC2 Image Builder 将额外的 EBS 卷挂载到 AMI
【发布时间】:2021-05-16 04:30:40
【问题描述】:

我正在使用 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

我错过了什么?

感谢任何帮助。

非常感谢。

【问题讨论】:

    标签: amazon-web-services amazon-ec2 amazon-cloudformation mount ec2-ami


    【解决方案1】:

    我发现了问题。

    这是由于naming convention 上的设备AWS

    我在机器上运行了lsblk 命令(将用于创建 AMI),输出是这样的

    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

    【讨论】:

      猜你喜欢
      • 2012-03-10
      • 1970-01-01
      • 2015-11-10
      • 1970-01-01
      • 2022-09-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-29
      相关资源
      最近更新 更多