首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用S3 upload触发Lambda函数创建EBS卷,该函数将根据S3上传大小创建EBS卷(使用boto3)

使用S3 upload触发Lambda函数创建EBS卷,该函数将根据S3上传大小创建EBS卷(使用boto3)
EN

Stack Overflow用户
提问于 2020-03-24 05:53:15
回答 1查看 197关注 0票数 0

目前,我正在使用S3触发器在S3中放置一个文件后启动一个lambda函数。

我的目的是从S3上传中获取大小,并将该值传递到创建EBS卷的自动函数中的Size字段中。

然后,我尝试根据文件大小创建一个EBS卷。然后将文件复制到EBS卷,该卷将附加到EC2实例,然后该实例将处理该文件。我使用EBS卷,因为上传到主S3存储桶的文件是需要解压缩和处理的压缩文件。

有没有办法根据上传的原始文件创建EBS卷Size

代码语言:javascript
复制
response = client.create_volume(
    AvailabilityZone='string',
    Encrypted=True|False,
    Iops=123,
    KmsKeyId='string',
    OutpostArn='string',
    Size=123,
    SnapshotId='string',
    VolumeType='standard'|'io1'|'gp2'|'sc1'|'st1',
    DryRun=True|False,
    TagSpecifications=[
        {
            'ResourceType': 'client-vpn-endpoint'|'customer-gateway'|'dedicated-host'|'dhcp-options'|'elastic-ip'|'fleet'|'fpga-image'|'host-reservation'|'image'|'instance'|'internet-gateway'|'key-pair'|'launch-template'|'natgateway'|'network-acl'|'network-interface'|'placement-group'|'reserved-instances'|'route-table'|'security-group'|'snapshot'|'spot-fleet-request'|'spot-instances-request'|'subnet'|'traffic-mirror-filter'|'traffic-mirror-session'|'traffic-mirror-target'|'transit-gateway'|'transit-gateway-attachment'|'transit-gateway-multicast-domain'|'transit-gateway-route-table'|'volume'|'vpc'|'vpc-peering-connection'|'vpn-connection'|'vpn-gateway'|'vpc-flow-log',
            'Tags': [
                {
                    'Key': 'string',
                    'Value': 'string'
                },
            ]
        },
    ],
    MultiAttachEnabled=True|False
)
EN

回答 1

Stack Overflow用户

发布于 2020-03-24 09:07:24

您的目标似乎是让亚马逊EC2实例处理已上载到亚马逊S3的文件。

首先,不需要通过Amazon EBS卷发送文件。相反,运行在EC2实例上的软件可以简单地从S3检索is。

主要的架构决策是如何在上传文件时触发EC2实例上的流程。

我推荐这个架构:

  • 创建一个Amazon Queue
  • Configure Amazon S3事件,以便在文件已上载时将消息推送到SQS队列(这将包括存储桶名称和文件名)
  • 在Amazon EC2实例上运行一个进程,该进程会定期检查SQS队列(例如,每分钟检查一次消息,或者根据发现的消息,应用程序应该:从亚马逊删除文件S3
  • Process file
  • Delete本地file
  • Optional:从S3

删除文件

或者,如果可能,您可以在AWS Lambda中对文件进行处理,而不使用Amazon EC2实例。但是,您在问题中没有提供足够的信息来确定这是否可行。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60822057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档