Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 如何使用AWS CDK将EC2卷附加到EC2实例_Typescript_Amazon Web Services_Aws Cdk - Fatal编程技术网

Typescript 如何使用AWS CDK将EC2卷附加到EC2实例

Typescript 如何使用AWS CDK将EC2卷附加到EC2实例,typescript,amazon-web-services,aws-cdk,Typescript,Amazon Web Services,Aws Cdk,我想将EC2卷附加到我正在创建的EC2实例,但不知道如何执行此操作: const vol = new ec2.Volume(this, 'vol', { availabilityZone: 'ap-southeast-2a', size: Size.gibibytes(100), }); const instance = new ec2.Instance(this, 'my-instance', { instanceName: 'my-instance', vpc: vpc,

我想将EC2卷附加到我正在创建的EC2实例,但不知道如何执行此操作:

const vol = new ec2.Volume(this, 'vol', {
  availabilityZone: 'ap-southeast-2a',
  size: Size.gibibytes(100),
});

const instance = new ec2.Instance(this, 'my-instance', {
  instanceName: 'my-instance',
  vpc: vpc,
  // how to attach 'vol' as a block device here?
  blockDevices: [{ deviceName: '/dev/sdf', volume: { ebsDevice: { deleteOnTermination: false, volumeSize: 1 } } }],
  //... more props
});

虽然
vol
未作为块设备连接,但此代码仍然有效。如何实现这一点?

是否必须在实例外部定义卷?或者以下是你想要的吗

const windows=ec2.MachineImage.latestWindows(ec2.WindowsVersion.windows\u SERVER\u 2019\u ENGLISH\u FULL\u BASE);
const host=new ec2.Instance(这个“服务器”{
instanceType:ec2.instanceType.of(ec2.InstanceClass.BURSTABLE3_AMD,ec2.InstanceSize.LARGE),
可用区:“ap-东南-2a”,
机器图像:窗口,
专有网络:专有网络,
VPC子网:{
子网类型:ec2.subnetType.PRIVATE
},
keyName:config.keyPairName,
区块设备:[
{
deviceName:“/dev/sda1”,
卷:ec2.BlockDeviceVolume.ebs(80)
},
{
deviceName:“/dev/sdm”,
卷:ec2.BlockDeviceVolume.ebs(100)
}
]
});

使用blockDevices,我看不到一种安装、格式化然后编辑“/etc/fstab”文件的便捷方法

我认为最好的办法是使用下面的方法创建一个userData脚本,脚本如下

这些只是我需要在这个脚本中加入一些逻辑的粗略步骤,以便您的windows机器使用PowerShell

装入卷的初始步骤### mkfs-t xfs/dev/xvdf yum安装xfsprogs-y mkdir/WDD项目 mount/dev/xvdf/wddProjects ###服务器重新启动时重新连接卷 sudo cp/etc/fstab/etc/fstab.orig blkid | egrep“/dev/xvdf:UUID=” echo“UUID=xxx/wddProjects xfs默认值,nofail 0 2”>>/etc/fstab
这篇文章中提到的代码是否有助于你达到目的,尽管它要求的是不同的东西,但它可能会帮助你。不,它没有。
host.userData.addExecuteFileCommand({})