EKS: проверьте соединение между экземплярами ec2 и rds и разницу между nslookup и telnet - PullRequest
0 голосов
/ 19 февраля 2020

Я настроил экземпляр RDS и пытаюсь проверить, могу ли я подключиться из моих экземпляров EC2 (настройка с помощью EKS) к экземплярам RDS.

Все мои экземпляры EC2 и RDS находятся в тот же VP C.

С моей RDS связана группа безопасности, для которой я установил следующие входящие и исходящие правила.

Входящий: PostgreSQL 5432 192.168.0.0/32

Исходящий: все TCP 0-65535 192.168.0.0/32

Я пытаюсь проверить, могу ли я подключиться из моих экземпляров ec2 к RDS

когда я выполняю

kubectl exec -it debug -- telnet xyz.us-east-1.rds.amazonaws.com 5432, вывод равен Connected to xyz.us-east-1.rds.amazonaws.com

, но когда я выполняю kubectl exec -it debug -- nslookup xyz.us-east-1.rds.amazonaws.com:5432, вывод равен can't find xyz.us-east-1.rds.amazonaws.com

  1. Почему nslookup не работает и te lnet работает?

  2. Является ли te lnet правильным способом проверки того, что мои экземпляры EC2 смогут общаться с моими экземплярами RDS? ?

Любая помощь в разъяснении этого была бы очень полезна. Спасибо.

1 Ответ

0 голосов
/ 21 февраля 2020

Итак, чтобы ответить на ваши вопросы:

  1. Te lnet работает так, как ваша команда верна. Я считаю, что ваш nslookup не работает, потому что он по умолчанию использует порт 53. Вы можете попробовать запустить его следующим образом: kubectl exec -it debug -- nslookup -port 5432 xyz.us-east-1.rds.amazonaws.com
  2. Te lnet - это абсолютно правильный способ проверки подключения, я лично использую его все время проверить соединения между моим бастионом и частными экземплярами RDS или Redis.
...