Первым шагом является туннелирование к экземпляру EC2 с использованием ssh
с командой, которая перенаправляет локальный порт на удаленный порт:
ssh -i KEYPAIR.pem -L 5439:REDSHIFT-ENDPOINT:5439 ec2-user@EC2-PUBLIC-IP
Где:
- KEYPAIR.pem должно быть именем пары ключей, используемой для доступа к экземпляру EC2
- REDSHIFT-ENDPOINT - DNS-имя конечной точки Redshift
- EC2-PUBLIC-IP - это IP-адрес экземпляра EC2
Эта команда говорит:
- Создание соединения ssh с помощью пары ключей
- Переадресация любого трафика, отправленного на локальный порт 5439, на удаленный компьютер, затем пусть удаленный компьютер отправляет этот трафик на
REDSHIFT-ENDPOINT:5439
(замените конечную точку на REDSHIFT-ENDPOINT )
Затем вы можете подключиться к Redshift на localhost:5439
, как если бы он работал на вашем компьютере.Этот трафик будет отправлен на удаленный компьютер, который отправит его на REDSHIFT-ENDPOINT:5439
.
Например, если вы хотите использовать psql
для подключения к Redshift, используйте:
psql -h localhost -p 5439 -U <username>