Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/unix/3.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
Amazon web services 如何从serverless.yaml配置更新aws elasticsearch访问策略?_Amazon Web Services_<img Src="//i.stack.imgur.com/RUiNP.png" Height="16" Width="18" Alt="" Class="sponsor Tag Img">elasticsearch_Serverless_Aws Access Policy - Fatal编程技术网 elasticsearch,serverless,aws-access-policy,Amazon Web Services,elasticsearch,Serverless,Aws Access Policy" /> elasticsearch,serverless,aws-access-policy,Amazon Web Services,elasticsearch,Serverless,Aws Access Policy" />

Amazon web services 如何从serverless.yaml配置更新aws elasticsearch访问策略?

Amazon web services 如何从serverless.yaml配置更新aws elasticsearch访问策略?,amazon-web-services,elasticsearch,serverless,aws-access-policy,Amazon Web Services,elasticsearch,Serverless,Aws Access Policy,我正在尝试通过无服务器yaml配置更新AWS elasticsearch访问策略: resources: Resources: ELInstanceName: Type: "AWS::Elasticsearch::Domain" Properties: ElasticsearchVersion: "7.1" DomainName: "domain-name" ElasticsearchClusterConfig:

我正在尝试通过无服务器yaml配置更新AWS elasticsearch访问策略:

resources:
  Resources:
    ELInstanceName:
      Type: "AWS::Elasticsearch::Domain"
      Properties:
        ElasticsearchVersion: "7.1"
        DomainName: "domain-name"
        ElasticsearchClusterConfig:
          DedicatedMasterEnabled: false
          InstanceCount: "3"
          ZoneAwarenessEnabled: false
          InstanceType: "m4.large.elasticsearch"
        EBSOptions:
          EBSEnabled: true
          Iops: 0
          VolumeSize: 10
          VolumeType: "gp2"
        AccessPolicies:
          Version: "2012-10-17"
          Statement:
            -
              Effect: "Allow"
              Principal:
                AWS:
                  - arn:aws:iam::XXXXXXXXX:user/user1
                  - arn:aws:iam::XXXXXXXXX:user/user2
                  - arn:aws:iam::XXXXXXXXX:role/Cognito_custom_Auth_Role
              Action: "es:*"
              Resource: "*"
在执行命令
serverless deploy
时,执行挂起或终止,并出现以下错误

............
Serverless: Operation failed!
Serverless Error ---------------------------------------

An error occurred - domain-name elasticsearch instance already exists.
有时命令执行时没有错误,但在AWS控制台中检查时ES访问策略没有更改

我是否缺少更新资源的任何配置详细信息?如何使用无服务器更新ES资源的访问策略?

如果指定名称,则无法执行需要替换此资源的更新。可以执行不需要中断或需要中断的更新。如果必须替换资源,请指定新名称

如果对的更新确实需要替换域,这将解释您的问题。根据文件,它没有,但也许有一些其他的变化正在作出的领域,这是吗

一种解决方法是不要硬编码域名。

:

如果指定名称,则无法执行需要替换此资源的更新。可以执行不需要中断或需要中断的更新。如果必须替换资源,请指定新名称

如果对的更新确实需要替换域,这将解释您的问题。根据文件,它没有,但也许有一些其他的变化正在作出的领域,这是吗


一个解决方法是不要硬编码域名。

感谢您的回复,推荐的解决方法是如何工作的?如果有多个elasticsearch域,由于没有提及arn等的配置,我如何在不使用域名的情况下更新特定域的访问策略?您希望如何更新访问策略?使用CloudFormation时,您只使用资源的名称(在您的示例中,ElistanceName是域资源的名称)。属性DomainName导致了问题。如何在不设置域名的情况下更新特定的ES域?由于在设置DomainName时,它尝试使用相同的名称创建新域,而不是更新现有的域。您是否尝试删除属性DomainName,然后在引用域时使用CloudFormation资源的名称?在您的案例“ElistanceName”中,正如我在前面的评论中提到的。感谢您的回复,推荐的解决方案是如何工作的?如果有多个elasticsearch域,由于没有提及arn等的配置,我如何在不使用域名的情况下更新特定域的访问策略?您希望如何更新访问策略?使用CloudFormation时,您只使用资源的名称(在您的示例中,ElistanceName是域资源的名称)。属性DomainName导致了问题。如何在不设置域名的情况下更新特定的ES域?由于在设置DomainName时,它尝试使用相同的名称创建新域,而不是更新现有的域。您是否尝试删除属性DomainName,然后在引用域时使用CloudFormation资源的名称?在您的案例中,“ElistanceName”,正如我在前面的评论中提到的。