Networking
如何從數據中心內部和外部處理 EC2 實例?
我正在嘗試找到一種能夠從數據中心內部和外部處理我的 EC2 數據庫實例的好方法。其他 EC2 實例需要能夠呼叫它,而 pgAdmin 等其他客戶端可能也需要從外部連接到它。
據我了解,使用內部和外部 DNS 名稱是長期可持續的,因為每次重新啟動都會導致更改。
我正在考慮將彈性 IP 與實例相關聯並為其提供 A 記錄(例如 db1.mydomain.com),然後我將在數據中心內外使用該記錄。具有相同角色的其他實例將獲得相同的處理和 db2.mydomain.com 等的 DNS 記錄。
現在,有沒有更清潔、更穩定的方法來實現這個結果?這是錯誤的方式嗎?建議?
將彈性 IP 與實例相關聯就是這樣做的。
請注意,除非您使用 VPC,否則如果您停止實例,您的彈性 IP 將解除關聯,並且您必須在重新啟動實例時手動重新關聯它。
以下是最靈活、最有效和最具成本效益的方法的標準最佳實踐步驟:
- 創建彈性 IP 地址並將其與實例關聯。
- 創建一個 DNS 條目,它是一個指向彈性 IP 地址的外部 DNS 名稱的 CNAME。
- 每當您停止/啟動實例(或希望將名稱指向新實例)時,只需將彈性 IP 地址與所需實例關聯即可。無需 DNS 更新。
在 EC2 內部和外部使用新的 DNS 名稱。
當 DNS 名稱在 EC2 之外使用時,它將解析為實例的公共 IP 地址(即彈性 IP 地址)。
當 DNS 名稱在 EC2 內部(與實例在同一區域中)使用時,它將解析為與彈性 IP 地址關聯的實例的目前私有 IP 地址。
這使得訪問伺服器的 EC2 實例之間的內部網路流量更快、更便宜。它還允許您使用安全組來允許從其他 EC2 實例訪問特定埠。
我將在本文中詳細介紹:http: //alestic.com/2009/06/ec2-elastic-ip-internal
如果您使用 VPC,則無需在停止/啟動後重新關聯彈性 IP 地址,否則一切正常。