簡體   English   中英

無法連接到私有子網中的 Redshift 集群

[英]Can not connect to my Redshift cluster in private subnet

我已經使用Linux Bastion Host Quick Start 中討論的建議方法設置了 VPC。

我還在其中一個私有子網中創建了一個 Redshift 集群,並創建了沒有規則限制的專用安全組。 這適用於 Redshift 的入站和出站規則,我正在分配所有流量和端口 (0.0.0.0/0)。 我什至為公共子網上的公共 EC2 實例做同樣的事情。

我可以成功 ssh 到我的公共堡壘實例,但從那里我無法 telnet 到我的 Redshift 端點。

[ec2-user@ip-10-0-141-20 ~]$ telnet ******.redshift.amazonaws.com 5439
Trying 10.0.20.169...
Connected to ******.redshift.amazonaws.com.
Escape character is '^]'.
Connection closed by foreign host.

我不確定我的配置有什么問題。 在 Redshift 中,我禁用了公共訪問和 VPC 路由。

我假設你的情況是:

  • 您在私有子網中有一個 Amazon Redshift 集群
  • 您在同一 VPC 的公有子網中有一台堡壘服務器
  • 您希望將計算機上的 SQL 客戶端連接到 Redshift 集群

一種方法是:

  • 使用 Port Forwarding 通過 Bastion 主機連接到 Redshift 集群
  • 如果您使用的是 Linux/Mac:
ssh-add keypair.pem
ssh -A ec2-user@BASTION-IP -L 5439:xyz.redshift.amazonaws.com:5439

(這表示:將本地端口 5439 轉發到堡壘,應該將流量發送到端口 5439 上的 Redshift 集群

  • 如果您使用的是 Windows,那么您可以使用 Pageant 和 PuTTY
  • 然后,將您的 SQL 客戶端配置為使用server=localhostport=5439以及您的登錄憑據連接到 Redshift

如果上述方法不起作用,請檢查以下事項:

  • 安全組的紅移集群應允許在端口5439的入站連接從堡壘(或從整個VPC或0.0.0.0/0
  • 堡壘上的出站規則應保持默認設置,即允許所有出站流量

如果仍然出錯,您可以通過在 Bastion 上安裝psql並嘗試連接到 Redshift 來測試 Redshift 連接。 (Redshift 是從 PostgreSQL 分叉出來的,所以它的行為類似)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM