Связь с AWS Elasticsearch VPC

Я создал домен Elasticsearch в AWS.

Он добавлен в мой VPC в общедоступной подсети, и я подключил группу безопасности, которая в настоящее время полностью открыта.

У меня есть эта политика также прилагается:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": {
        "AWS": "*"
      },
      "Action": "es:*",
      "Resource": "arn:aws:es:eu-central-1:ACCOUNT_ID:domain/DOMAIN_NAME/*"
    }
  ]
}

Я пытаюсь получить доступ к конечной точке локально, но это не разрешено.

URL Kibana, например:

https://vpc-bla.bla.bla.eu-central-1.es.amazonaws.com/_plugin/kibana/

Есть идеи, почему я не могу получить доступ к этому URL?

1 ответ

После долгих проб и ошибок я обнаружил, что сгенерированный ES URL-адрес является внутренним и не может быть легко открыт в Интернет через группы безопасности.

Вместо этого я развернул простой прокси-сервер nginx, который пересылал публичные DNS-запросы, например es.mydns.com к внутреннему DNS eg vpc....eu-central-1.es.amazonaws.com/_plugin/kibana/

Больше информации о nginx здесь.

К конечной точке VPC нельзя получить доступ за пределами подсетей, которые вы связали с доменом упругого поиска.

Вы можете попробовать выполнить curl из любого экземпляра EC2, который является частью той же подсети, которую вы связали с эластичным поиском, он должен работать.

Если вам нужен доступ к конечной точке из Интернета, не создавайте эластичный поиск конечной точки VPC, вместо этого создайте домен эластичного поиска с доступом в Интернет. При создании домена ES вы можете указать, хотите ли вы, чтобы VPC или кластер был доступен через Интернет.

Шаги для доступа к VPC эластичного поиска

  • Создайте среду ec2 в AWS.
  • Установите ngnix в ec2 и настройте.
  • Добавьте два входящих запроса в группу безопасности, т.е. весь трафик и ssh.
  • Затем используйте общедоступный IP-адрес для доступа из Интернета.
Другие вопросы по тегам