Apache-2.2

有沒有辦法將一個 IP 重定向到 Amazon EC2 上的另一個 IP?

  • September 9, 2013

我們正在將我們的部署從正常 EC2 遷移到 VPC,我們在公共雲中有兩個負載均衡器,我們有許多域“A”記錄指向,但是我沒有意識到公共彈性 IP 不能附加到 VPC 實例,您必須使用基於 VPC 的彈性 IP。

所以您知道,我們的負載均衡器是基於 HAProxy 的實例,而不是彈性負載均衡器。因此,如果這有助於回答我的問題或提供替代方案,我們可以在這裡使用 Apache。

因為並非所有指向公共 LB 的有問題的域都在我的控制之下,所以很難與每個人一起安排對 DNS 的更改,我們稱之為不可能。

所以我的問題是,我是否可以將對我們公共 LB 的呼叫重定向到 VPC 中的替代者?當我們通過我們的客戶並讓他們更新他們的 DNS 時,這必須是透明的。

任何建議將不勝感激!


編輯:稍微擴展一下,如果我可以簡單地使用 EC2 功能做到這一點,那將是一個好處,這樣我就不必讓兩個公共 LB 實例保持執行。如果做不到這一點,我需要具體了解如何完成“重定向”,是在 DNS 中完成,還是在其他地方完成?


編輯 2:沒有人能夠對不需要 LB 實例保持執行的亞馬遜特定解決方案提供任何見解,因此我在下面的選定答案中概述了我們對 HAProxy 所做的事情。

由於沒有人能夠提供細節,這就是我們所做的:

首先,我們是 RightScale 客戶端,所以如果您也是,您需要使用他們提供的操作腳本關閉reconverge每 15 分鐘左右執行一次的腳本。這將防止腳本在找不到任何活動的應用伺服器並刪除任何引用時覆蓋您的更改。

接下來,在/etc/haproxy我們更新了haproxy.cfg後端部分,看起來是預設內容的最後一行是:

# Special server line that allow HAProxy to start with cookies enabled and no valid servers.
   server disabled-server 127.0.0.1:1 disabled

因此,在定義應用伺服器的位置下方,我們包括:

server THE-INSTANCE-REF_ID 123.123.123.123:80 check inter 3000 rise 2 fall 3 maxconn 500

我們有兩個 LB,所以我們只是分別將一個舊的指向一個新的。一切都像魅力一樣運作。我們將把這兩個舊的 LB 保留幾週,而我們的客戶會更新他們的 DNS,然後再將它們關閉,這樣就省去了很多麻煩,而不是試圖將每個人的 IT 組織到預定的移動中!

您可以將對正常 EC2 負載均衡器的請求重定向到您的 VPC 負載均衡器。對於尚未更新 DNS 的每個人來說,這都是一個額外的跳躍,但這只是讓您的客戶盡快更新的暫時且良好的動力。

引用自:https://serverfault.com/questions/534619