【问题标题】:How to specify multiple subnets for Lambdas using serverless framework如何使用无服务器框架为 Lambda 指定多个子网
【发布时间】:2021-11-08 04:40:21
【问题描述】:

我正在尝试使用 example code 指定我的 Lambda 在多个子网中可用:

provider:
  vpc: # Optional VPC. But if you use VPC then both subproperties (securityGroupIds and subnetIds) are required
    securityGroupIds:
      - securityGroupId1
      - securityGroupId2
    subnetIds:
      - subnetId1
      - subnetId2

但是,我已经尝试了几种变体,出现了几个不同的错误,我只能让它与指定的单个子网一起工作。

provider:
  name:       aws
  runtime:    python3.8
  memorySize: 512
  lambdaHashingVersion: '20201221'
  stage: dev
  vpc:
    securityGroupIds:
    - sg-06e65a1f67c7XXXX
    subnetIds:
      - subnet-e84fXXXX
      – subnet-6e2cXXXX

Cannot parse "serverless.yml": bad indentation of a mapping entry in "$FOLDER/serverless.yml" (45:7)

又一次尝试,只是改变了缩进:

provider:
  name:       aws
  runtime:    python3.8
  memorySize: 512
  lambdaHashingVersion: '20201221'
  stage: dev
  vpc:
    securityGroupIds:
    - sg-06e65a1f67c7XXXX
    subnetIds:
    - subnet-e84fXXXX
    – subnet-6e2cXXXX

Cannot parse "serverless.yml": can not read an implicit mapping pair; a colon is missed in "$FOLDER/serverless.yml" (45:22)

我还尝试了将securityGroupIds 缩进两个空格的变体,结果相同。任何想法表示赞赏。我的想法是,这似乎是无服务器框架中的一个错误,就像它需要密钥对而不是列表?

【问题讨论】:

    标签: amazon-web-services aws-lambda serverless-framework serverless


    【解决方案1】:

    在子网部分中,第二个- 不是-。这是一个不同的角色。尝试删除它并用正常的连字符替换它。

    由于该字符,它无法将文件解析为有效的 yaml。

    【讨论】:

    • Unicode 将让你每次。非常感谢!十分钟延迟结束后,我会立即接受这个答案。我设置了vim 以突出显示奇怪的破折号,以防我将来看到它。
    猜你喜欢
    • 1970-01-01
    • 2022-12-09
    • 2020-10-15
    • 2018-11-03
    • 2022-06-11
    • 2021-09-06
    • 2020-07-19
    • 2021-10-07
    • 1970-01-01
    相关资源
    最近更新 更多