iT邦幫忙

1

AWS RDS Aurora 跨區連線問題

  • 分享至 

  • xImage

ec2 (新加坡)
rds aurora (新加坡)
使用同一個安全組就可以連線 in 有加 ec2內網ip

我在德國 法蘭克福 開一台 rds aurora 安全組 in 全開
無法從 ec2 (新加坡) 連進 rds

有建立 Peering Connections
新加坡 VPC 172. TO 德國 VPC 10.2
是有成功建立連線 但還是還是無法 rds 連線

疑問
1.RDS不支援跨區連線?只能連同一個區域
2.VPC Peering Connections 不能用在 RDS
3.我安全組設錯 都全開了 本來只限定內網ip
4.還有什麼地方是需要設好才能跨區連線

我的需求比較特別所以我也找不太到相關的範例,又試了滿多天;希望有站上神人可以給我個方向。

已解決:以下是我寫的教學文章
https://www.webteach.tw/?p=3675

dragonH iT邦超人 5 級 ‧ 2020-06-05 01:12:14 檢舉
測試結果是可以的唷
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

2 個回答

0
dragonH
iT邦超人 5 級 ‧ 2020-06-04 18:43:48
最佳解答

1.RDS不支援跨區連線?只能連同一個區域

問題不在 RDS

理論上 VPC connection 設定好

就可以連

我認為

2.VPC Peering Connections 不能用在 RDS

一樣

問題不在 RDS

3.我安全組設錯 都全開了 本來只限定內網ip

不懂

4.還有什麼地方是需要設好才能跨區連線

vpc connection


經過測試

確定是可行的

有圖有真相

image

us-east-1 的 ec2 連到 ap-southeast-1 的 aws aurora

直接說重點

假設

ec2 vpc 的 ip cidr 是 10.0.1.0/24

aurora vpc 的 ip cidr 是 10.0.2.0/24

首先先做好 vpc connection

(記得建完後要去另一邊 accept, 最後成功的狀態會是 active

接著

ec2 vpc 的 route table

新增一個 route

指向 vpc connection

10.0.2.0/24 -> pcx-0xxxxxxxx

另一邊的也是一樣

10.0.1.0/24 -> pcx-0xxxxxxxx

最後確認 aurora 的 security group 有開 3306 的 port

應該就能夠連了

看更多先前的回應...收起先前的回應...
混水摸魚 iT邦研究生 2 級 ‧ 2020-06-05 10:41:16 檢舉

https://ithelp.ithome.com.tw/upload/images/20200605/20102414bWDSEQrQcg.pnghttps://ithelp.ithome.com.tw/upload/images/20200605/20102414OySS4YValu.pnghttps://ithelp.ithome.com.tw/upload/images/20200605/20102414DzeHEINVvL.pnghttps://ithelp.ithome.com.tw/upload/images/20200605/20102414iDnDzcfJ0p.pnghttps://ithelp.ithome.com.tw/upload/images/20200605/20102414E4xnw1LCZN.png

vpc connection 是啟用的
安全組也有開 3306
但還是不能連…是我的網段 172 跟 10 不能不一樣嗎?

dragonH iT邦超人 5 級 ‧ 2020-06-05 10:47:48 檢舉

但還是不能連…是我的網段 172 跟 10 不能不一樣嗎?

一定要不一樣啊

而且還不能 overlapping

我昨天測的時候

是以 ec2 的 vpc 作為 vpc connection 的 requester

沒試過反過來會不會影響就是

混水摸魚 iT邦研究生 2 級 ‧ 2020-06-05 10:55:39 檢舉

那我來重建 vpc connection 看看

混水摸魚 iT邦研究生 2 級 ‧ 2020-06-05 12:07:50 檢舉

是以 ec2 的 vpc 作為 vpc connection 的 requester
真的是這個原因…我重建就可以連了…我三天的人生就這麼浪費掉了…感謝dragonH

dragonH iT邦超人 5 級 ‧ 2020-06-05 13:08:24 檢舉

/images/emoticon/emoticon12.gif

0

1.RDS不支援跨區連線?只能連同一個區域

我記得rds可以設定公開訪問。需要綁定一個對外ip
但對外的ip需要做好限制才行。不要全開。
畢竟安全組只適用同一區域的vpc上,其它區的安全組別是讀不到的。
只能用ip來限制。
不過設定公開訪問的價格比較貴。(映像中啦)

2.VPC Peering Connections 不能用在 RDS

沒這樣用過,所以沒辦法給你確定答案。

3.我安全組設錯 都全開了 本來只限定內網ip

這個實在不好教你。不過如果你想要將rds公開的話,理論上也只能這樣了。

4.還有什麼地方是需要設好才能跨區連線

上面說完了。怎麼設定....我給你一篇你去研究好了。
https://docs.aws.amazon.com/AmazonRDS/latest/UserGuide/USER_VPC.Scenarios.html

提外話:
其實盡量不要跨區使用rds,速度上會有差異。
之前上課是建議用同步資料庫的方式處理。
就是各區使用的是各自的rds。其資料是各自同步處理。需要利用vpc連接的樣子。
當時我也沒很注意聽課。沒辦法給你很確定的答案。看看有沒有人懂這一塊了。

看更多先前的回應...收起先前的回應...
混水摸魚 iT邦研究生 2 級 ‧ 2020-06-04 18:19:20 檢舉

我試出來了 RDS MYSQL 可以跨區連線 (如大大說的有公開選項)
RDS AURORA 不行,跨區只能副本…
https://docs.aws.amazon.com/zh_tw/AmazonRDS/latest/AuroraUserGuide/Aurora.Replication.html

想跨區使用是服務在全世界各地,目前還不想在各洲架設區服,所以想利用 RDS AURORA 看能不能資料都寫在同一台,但如果只能寫在固定的區域,其它區只能讀副本那讀寫的速度延遲是客戶沒辦法接受的…

看來只能多花錢開區服了

dragonH iT邦超人 5 級 ‧ 2020-06-04 18:25:23 檢舉

混水摸魚

沒道理不行 cross region 我認為

畢竟 vpc connection 弄好

應該就可以

我再試試看

vpc connection 的方式我沒試過,不過就理論來說因該是要可以的才對。
只是安全組的設定我怕沒辦法。因為rds的安全組只能吃同一區的vpc及內網。拉過來的vpc怕是不會出現。
但沒試過並不確定就是了。

很早之前幫客戶用的是不用rds。而是用ec2處理。這樣是可以的。

dragonH iT邦超人 5 級 ‧ 2020-06-05 01:12:02 檢舉

沒有什麼 rds的安全組 唷

整個 aws 就只有一種 security group

應該是說他就是一個獨立的 service

他不會管你放啥在裡面

然後 ec2 可以

沒道理 rds 不行

因為理論上 aws 也只是起一個 aws control 的 ec2s

我記得rds可以設定公開訪問。需要綁定一個對外ip

rds 預設就會給一個 endpoint

也是 public

不需要另外指定 ip

所以 public 與否 應該不影響費用

RDS的連結端點。會依公開不公開分配內部ip或是外部ip。
我當時是還用了一個網路接口處理並綁定一個ip沒錯。
再透過安全組規則透過這個ip去做連接。

喔!!說到這我想到了,當時我就有處理過用自家的電腦直接上資料庫了喔!!

我剛有自已試開了一個並指定了公開屬性。的確發現連結端點會自動變成一個外部ip。跟我以前處理的情況不太一樣了。

年代太久遠了,不太記得什麼跟什麼了。畢竟一開始是用ec2來當資料庫的。有點給搞混了。

混水摸魚 iT邦研究生 2 級 ‧ 2020-06-05 12:09:57 檢舉

浩瀚星空 問題已經解決了,真的是dragonH

以 ec2 的 vpc 作為 vpc connection 的 requester
造成不能連線…

我要發表回答

立即登入回答