首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ElasticSearch:使用terraform提供安全组

ElasticSearch:使用terraform提供安全组
EN

Stack Overflow用户
提问于 2021-03-19 08:38:54
回答 1查看 106关注 0票数 0

在亚马逊网络服务控制台上,我手动为ElasticSearch配置了下面的安全规则。有三个VPC。转接网关将它们连接起来。ElasticSearch安装在VPC-A中。

代码语言:javascript
复制
   Type      Protocol   Port range      Source

All traffic     All        All       40.10.0.0/16  (VPC-A)
All traffic     All        All       20.10.0.0/16  (VPC-B)
All traffic     All        All       30.10.0.0/16  (VPC-C)

Outbound rules:
   Type      Protocol   Port range    Destination
All traffic     All        All        0.0.0.0/0

但是,下面的terraform代码无法提供上述安全组。

代码语言:javascript
复制
resource "aws_security_group" "shared-elasticsearch-sg" {
  name = var.name_sg
  vpc_id = data.terraform_remote_state.vpc-A.outputs.vpc_id
  ingress {
    from_port = 0
    to_port   = 0
    protocol  = "-1"
    cidr_blocks = [data.terraform_remote_state.vpc-A.outputs.vpc_cidr_block,
                   data.terraform_remote_state.vpc-B.outputs.vpc_cidr_block,
                   data.terraform_remote_state.vpc-C.outputs.vpc_cidr_block]
  }
  egress {
    from_port   = 0
    to_port     = 0
    protocol    = "-1"
    cidr_blocks = ["0.0.0.0/0"]
  }
  tags = {
    Name = var.name_sg
  }
}

module "elasticsearch" {
  source                = "git::https://github.com/cloudposse/terraform-aws-elasticsearch.git?ref=tags/0.24.1"
  security_groups       = [aws_security_group.shared-elasticsearch-sg.id,
                           data.terraform_remote_state.vpc-A.outputs.default_security_group_id]
  vpc_id                 = data.terraform_remote_state.vpc-A.outputs.vpc_id
  ......
}

上面的代码提供了以下安全规则:

代码语言:javascript
复制
Inbound rules:
  Type      Protocol   Port range         Source
All TCP       TCP       0 - 65535   sg-0288988f38d2007be / shared-elasticSearch-sg
All TCP       TCP       0 - 65535   sg-0893dfcdc1be34c63 / default
Outbound rules:
  Type      Protocol   Port range    Destination
All TCP       TCP      0 - 65535      0.0.0.0/0

sg-0288988f38d2007be / shared-elasticSearch-sg安全规则

代码语言:javascript
复制
   Type      Protocol   Port range      Source
All traffic     All        All       40.10.0.0/16  (VPC-A)
All traffic     All        All       20.10.0.0/16  (VPC-B)
All traffic     All        All       30.10.0.0/16  (VPC-C)

Outbound rules:
   Type      Protocol   Port range    Destination
All traffic     All        All        0.0.0.0/0

terraform代码提供的安全组不起作用。在VPC-B和VPC-C中,无法到达VPC-A处的elasticsearch。如何正确编码terraform,使其能够配置我手动创建的安全组?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-24 02:15:39

我自己解决了这个问题。ElasticSearch模块有一个限制/错误。我下载了模块,对安全组做了修改。问题解决了。没有办法使用elasticsearch模块提供的安全组来提供我在问题中陈述的安全组。

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

https://stackoverflow.com/questions/66701065

复制
相关文章

相似问题

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