Apache brooklyn 创建自己的卷而不是使用现有卷
Apache brooklyn create own volumes instead of using the existing one
我使用 Apache Brooklyn 0.8.0-incubating 在 AWS 上使用以下蓝图创建 d2.xlarge 实例:
location:
jclouds:aws-ec2:
region: eu-central-1
...
provisioning.properties:
imageId: eu-central-1/ami-7bcddf17 # Redhat 6.6
hardwareId: d2.xlarge # with 2TB EBS
机器上只有 10GB 的总存储空间。经过一些研究,我发现 /dev/xvdb 下的实例卷未分区。
谁能解释一下我如何使用实例存储而不是为 AWS 上的机器创建新卷?
此致,
菲利克斯
这是 AWS EC2 中 VM 的预期行为。
如http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/add-instance-store-volumes.html所述:
"After you launch the instance, you must ensure that the instance
store volumes for your instance are formatted and mounted before you can use them. Note that the root
volume of an instance store-backed instance is mounted automatically."
"the instance type determines which instance store volumes are mounted for you and which are available for you to mount yourself"
对于您的实例类型,实例存储卷似乎未格式化。
EC2 文档讨论了 运行 lsblk
、mkfs
和 mount
来格式化和装载实例存储卷。
预期行为还取决于 AMI:"Each AMI has a block device mapping that specifies the block devices to attach to an instance when it is launched from the AMI. An AMI that Amazon provides includes a root device only."
请注意,您在一个 AMI 上的工作可能不适用于所有其他 AMI(例如,由于不同的块设备映射)。坚持使用 Amazon 自己的 AMI 通常是一个好主意,以获得合理的默认行为。
这可以在 Apache Brooklyn 中自动完成。您有几个选择:
在实体中实现它,例如如果使用 SoftwareProcess
实体,那么您可以使用配置键 pre.install.command
来执行 bash 命令来设置音量。
在该位置实现它。
这可以使用新的 MachineLocationCustomizer
在机器上执行命令(然后在位置上配置)。
或者,对于 jclouds 位置,您可以使用 setup.script
配置,它需要执行 shell 脚本的 URL。
在这些方法中,MachineLocationCustomizer
为您提供最强大的功能和灵活性。
我使用 Apache Brooklyn 0.8.0-incubating 在 AWS 上使用以下蓝图创建 d2.xlarge 实例:
location:
jclouds:aws-ec2:
region: eu-central-1
...
provisioning.properties:
imageId: eu-central-1/ami-7bcddf17 # Redhat 6.6
hardwareId: d2.xlarge # with 2TB EBS
机器上只有 10GB 的总存储空间。经过一些研究,我发现 /dev/xvdb 下的实例卷未分区。
谁能解释一下我如何使用实例存储而不是为 AWS 上的机器创建新卷?
此致, 菲利克斯
这是 AWS EC2 中 VM 的预期行为。
如http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/add-instance-store-volumes.html所述:
"After you launch the instance, you must ensure that the instance
store volumes for your instance are formatted and mounted before you can use them. Note that the root
volume of an instance store-backed instance is mounted automatically."
"the instance type determines which instance store volumes are mounted for you and which are available for you to mount yourself"
对于您的实例类型,实例存储卷似乎未格式化。
EC2 文档讨论了 运行 lsblk
、mkfs
和 mount
来格式化和装载实例存储卷。
预期行为还取决于 AMI:"Each AMI has a block device mapping that specifies the block devices to attach to an instance when it is launched from the AMI. An AMI that Amazon provides includes a root device only."
请注意,您在一个 AMI 上的工作可能不适用于所有其他 AMI(例如,由于不同的块设备映射)。坚持使用 Amazon 自己的 AMI 通常是一个好主意,以获得合理的默认行为。
这可以在 Apache Brooklyn 中自动完成。您有几个选择:
在实体中实现它,例如如果使用
SoftwareProcess
实体,那么您可以使用配置键pre.install.command
来执行 bash 命令来设置音量。在该位置实现它。
这可以使用新的
MachineLocationCustomizer
在机器上执行命令(然后在位置上配置)。或者,对于 jclouds 位置,您可以使用
setup.script
配置,它需要执行 shell 脚本的 URL。
在这些方法中,MachineLocationCustomizer
为您提供最强大的功能和灵活性。