无服务器错误:“发生错误:fifo已经存在”

问题描述

我正在尝试使用servereless进行部署,并不断获取“发生了错误:DeadLetterQueueDlq-sms-retry-dlq-v1.fifo已经存在。”但是,sms-retry-dlq-v1.fifo仅在该时间被调用。而且DeadLetterQueueDlq也仅被调用1次。我需要在这些资源中进行任何更改吗?

RetryDeadLetterQueue:
  Type: AWS::SQS::Queue
  Properties:
    QueueName: sms-retry-v1.fifo
    FifoQueue: true
    ContentBasedDeduplication: true
    KmsMasterKeyId: alias/aws/sqs
    VisibilityTimeout: 1000
    RedrivePolicy:
      maxReceiveCount: 7
      deadLetterTargetArn:
        Fn::GetAtt:
          - "DeadLetterQueueDlq"
          - "Arn"

DeadLetterQueueDlq:
  Type: AWS::SQS::Queue
  Properties:
    QueueName: sms-retry-dlq-v1.fifo
    FifoQueue: true
    ContentBasedDeduplication: true
    KmsMasterKeyId: alias/aws/sqs

解决方法

基于评论。

相关队列已首先在控制台中创建。因此,您无法使用CloudFormation(CFN)创建同名的第二个。

因此,您可以删除在控制台中创建的一个,然后在CFN中重新创建它,或者将其import插入CFN。