Я получаю тайм-аут при попытке подключиться к моей недавно настроенной базе данных amazon redshift. Я попробовал телнет:
telnet redshift-cluster-1.foobar.us-east-1.redshift.amazonaws.com 5439
С тем же результатом.
Я установил конфигурацию базы данных на «Общедоступный».
Обратите внимание, что я просто экспериментирую. Раньше я настраивал сервисы aws для развлечения, но не очень разбираюсь в настройке сети и безопасности. Поэтому я ожидаю, что это будет простая ошибка, которую я совершаю.
Я хочу, чтобы это было просто, поэтому моя цель — просто подключиться к базе данных из локального SQL-клиента, и на данном этапе меня ничего больше не волнует :)
Было бы здорово, если бы вы могли дать мне несколько советов, чтобы я понял, в чем может быть проблема и что мне следует попробовать дальше.
Это общедоступный IP-адрес (100.x.x.x). Группа безопасности называется по умолчанию, что, я думаю, является значением по умолчанию. У него есть входящее правило с IP-версией: -, тип: весь трафик, протокол: все, диапазон портов: все и исходящее правило с IP-версией: IPv4, тип: весь трафик, протокол: все, диапазон портов: все, пункт назначения: 0.0.0.0/0
Звучит неплохо. Вы уверены, что кластер Redshift был запущен в общедоступной подсети? Вы пытались подключиться с помощью клиента SQL (вместо Telnet)?
Я не уверен, что кластер Redshift был запущен в общедоступной подсети. Как я могу это проверить или изменить, чтобы он работал? (Я попытаюсь понять это, но я понятия не имею, с чего начать.) Я попытался подключиться к mysql-workbench и dbeaver и получил тайм-аут на обоих.
Когда я устанавливаю «общедоступный» на «включено», у меня есть возможность указать эластичный IP-адрес, который я оставил пустым на случай, если это связано.





Другой вариант, который вы можете попробовать, — подключиться к нему через API. Чтобы подключиться к этой базе данных с помощью клиента Java, вам потребуются следующие значения:
private static final String database = "dev";
private static final String dbUser = "awsuser";
private static final String clusterId = "redshift-cluster-1";
У меня никогда не возникало проблем при использовании RedshiftDataClient.
Мне пришлось добавить новое правило для входящего трафика в группу безопасности и установить в качестве источника «откуда-ipv4» или «мой ip». У правила входящего трафика по умолчанию есть источник с именем самой группы безопасности, что может означать, что оно доступно только из VPC. По крайней мере, он недоступен снаружи.
Я установил протокол на tcp и набрал красное смещение, что показалось мне разумным выбором для моего варианта использования.
См. рисунок для примера конфигурации.
Какова конфигурация группы безопасности, связанной с кластером Amazon Redshift? Кроме того, если вы разрешаете это DNS-имя в IP-адрес (например, с помощью
ping redshift-cluster-1.foobar.us-east-1.redshift.amazonaws.com), является ли IP-адрес общедоступным IP-адресом или частным IP-адресом (например,10.x).