- 網路和內容交付›
- AWS Global Accelerator›
- 常見問答集
AWS Global Accelerator 常見問答集
一般問題
什麼是 AWS Global Accelerator?
AWS Global Accelerator 是一種聯網服務,可協助您提高向全球使用者提供的應用程式可用性和效能。AWS Global Accelerator 的設置、設定和管理都非常容易。它提供靜態 IP 地址,為應用程式提供固定的進入點,並消除了針對不同 AWS 區域和可用區域管理特定 IP 地址的複雜性。AWS Global Accelerator 總是根據效能將使用者流量路由到優化的端點,並對應用程式運作狀態、使用者位置以及所設定政策的變更立即做出反應。您可使用速度比較工具,從您的位置測試效能上的效益。如同其他 AWS 服務,AWS Global Accelerator 是一種按用量付費的自助服務,無須長期承諾或最低費用。
AWS Global Accelerator 有哪些用途?
您可以使用 AWS Global Accelerator 執行以下工作:
- 將 AWS Global Accelerator 提供的靜態 IP 地址,與區域 AWS 資源或端點 (例如 Network Load Balancers、Application Load Balancers、EC2 執行個體和彈性 IP 地址) 建立關聯。IP 地址從 AWS 節點進行任一傳播,因此它們可採用最接近使用者的 AWS 全球網路。
- 在可用區域或 AWS 區域之間輕鬆移動端點,無須更新 DNS 組態或變更面向用戶端的應用程式。
- 透過設定端點群組的流量調節百分比,調高或調低特定 AWS 區域的流量。這對測試效能和發佈更新特別有用。
- 指派各端點的權重,以控制導向端點群組內每個端點的流量。
AWS Global Accelerator 可提供哪些效能改進?
AWS Global Accelerator 充分利用 Amazon 全域網路,透過降低首個位元組延遲 (封包從用戶端到端點再返回的封包來回時間) 和抖動 (延遲變化) 來提高應用程式的效能,並且相較於網際網路增加了輸送量 (一秒內傳輸的資料量)。針對透過第三方實際使用者測量工具在 90% (p90) 處測量的 TCP 流量,Global Accelerator 可以將首個位元組延遲減少高達 49%,將抖動減少高達 58%,並將輸送量提升高達 60%。 招聘平台 Lever 發現…「單單啟用了 AWS Global Accelerator,一位跨國企業客戶就發現,端對端應用程式的載入時間減少了 51.2%。」 透過建置以 Global Accelerator 為前沿的多區域架構,Skyscanner 能夠「…將回應時間從超過 200 毫秒減少至不到 4 毫秒,改善了 98%。」
試用速度比較工具,看看從您的位置可獲得什麼樣的效能優勢!
如何開始使用 AWS Global Accelerator?
您可以利用 API 或透過 AWS 管理主控台,或使用 AWS CloudFormation 範本,開始設定 AWS Global Accelerator。由於 AWS Global Accelerator 是全球服務,因此不會綁定到任何特定 AWS 區域。以下是為您的應用程式設定 AWS Global Accelerator 的三個簡單步驟:
- 建立加速器:建立加速器時,AWS Global Accelerator 會為它佈建兩個靜態 IP 地址。然後,您要根據指定的協定和連接埠設定一或多個接聽程式,以處理從終端用戶端到加速器的傳入連線。
- 設定端點群組:透過指定要接受分發流量的 AWS 區域,選擇一或多個區域端點群組,與加速器的接聽程式建立關聯。您的接聽程式會將請求路由到此端點群組中的已註冊端點。AWS Global Accelerator 會使用為每個端點定義的運作狀態檢查設定,監控群組內的端點運作狀態。您可以為每個端點群組設定流量調節百分比,控制端點群組可接受的流量。按照預設,所有區域端點群組的流量調節都設定為 100%。
- 為端點群組註冊端點:在每個端點群組註冊一或多個區域資源,例如 Application Load Balancers、Network Load Balancers、EC2 執行個體或彈性 IP 地址。然後,您可以設定權重來選擇要將多少流量路由到每個端點。
AWS Global Accelerator 如何與 Elastic Load Balancing (ELB) 搭配使用?
這兩個服務都可解決將使用者請求路由到運作狀態良好的應用程式端點的挑戰。AWS Global Accelerator 需仰賴 ELB 提供傳統的負載平衡功能,例如支援內部和非 AWS 端點、預熱及 Layer 7 路由。但是,ELB 只能在一個區域內提供負載平衡,AWS Global Accelerator 則可提供跨多個區域的流量管理。
區域 ELB 負載平衡器是 AWS Global Accelerator 的理想目標。使用區域 ELB 負載平衡器,您可以在 AWS 區域內將傳入的應用程式流量精確地分配到不同的後端,例如 Amazon EC2 執行個體或 Amazon ECS 任務。AWS Global Accelerator 透過將這些功能延伸到單一 AWS 區域之外來補足 ELB,允許您在任何數目的區域中為應用程式佈建全球界面。如果您有為全球用戶端基礎服務的工作負載,我們建議您使用 AWS Global Accelerator。如果您有在單一 AWS 區域託管的工作負載,而且是由相同區域內或周圍的用戶端使用,您可以使用 Application Load Balancer 或 Network Load Balancer 來管理資源。
AWS Global Accelerator 與 Amazon CloudFront 有何不同?
AWS Global Accelerator 和 Amazon CloudFront 是兩種獨立的服務,都使用 AWS 全域網路及其全球邊緣節點。CloudFront 同時改進了可快取內容 (例如,影像和影片) 和動態內容 (例如,API 加速和動態網站交付) 的效能。Global Accelerator 可透過 TCP 或 UDP 提高各種應用程式的效能,方式是將邊緣的封包代理至一或多個 AWS 區域中執行的應用程式。Global Accelerator 非常適用於非 HTTP 使用案例,如遊戲 (UDP)、IoT (MQTT) 或 IP 語音,也非常適用於特別需要靜態 IP 地址或確定性快速區域容錯移轉的 HTTP 使用案例。這兩種服務與 AWS Shield 整合來提供 DDoS 防護。
是否可將 AWS Global Accelerator 用於我的內部部署服務?
您無法直接將內部部署資源設定為靜態 IP 位址的端點,但可以在每個 AWS 區域設定 Network Load Balancer (NLB) 以定址您的內部部署端點。然後您可以將這些 NLB 註冊為 AWS Global Accelerator 組態中的端點。
我可以將多位使用者確切地路由至我的加速器之外的特定端點 IP 和連接埠嗎?
是。您可以使用自訂路由加速器,透過自有的應用程式邏輯將使用者流量路由至單一或多個 AWS 區域中的特定 Amazon EC2 IP 和連接埠。多人遊戲應用程式即是範例之一,在多人遊戲中,您想要根據如地理位置、玩家技能和遊戲組態等因素,將多位玩家指派給一部遊戲伺服器上的單一工作階段。其他範例包括 VoIP、EdTech 和社交媒體應用程式,可將多位使用者指派給特定媒體伺服器,以啟動語音、視訊和簡訊工作階段。
對於物件儲存,是否可以將 AWS Global Accelerator 與 Amazon S3 搭配使用?
您可以使用 Amazon S3 多區域存取點,利用 Global Accelerator 的優勢進行物件儲存。S3 多區域存取點明確使用 Global Accelerator 提供單一全域端點存取資料集,而資料集跨越不同 AWS 區域的多個 S3 儲存貯體。這允許您以單一區域內使用的相同簡單架構建置多區域應用程式,之後在全球任何地方執行這些應用程式。向 S3 多區域存取點的全球端點提出的應用程式請求會自動使用最低網路延遲透過 AWS 全域網路路由至 S3 儲存貯體。這讓應用程式自動避免了公有網際網路上的擁擠網路分段,提升應用程式效能和可靠性。
優點
AWS Global Accelerator 提供哪些優點?
AWS Global Accelerator 包括以下優點:
立即區域容錯移轉:AWS Global Accelerator 會自動檢查應用程式的運作狀態,並只將使用者流量路由到運作狀態良好的應用程式端點。如果運作狀態發生變化或是進行組態更新,AWS Global Accelerator 會立即做出反應,將您的使用者路由到下一個可用的端點。
高可用性:AWS Global Accelerator 具有故障隔離設計,能提升應用程式的可用性。當您建立加速器時,會分配兩個由獨立網路區域提供服務的 IPv4 靜態 IP 地址給您。與可用區域類似,這些網路區域為隔離的單元,具有自己的實體基礎設施,以及來自唯一 IP 子網路的服務靜態 IP 地址。如果某個靜態 IP 地址因為 IP 地址封鎖或無法連接網路而不可用時,AWS Global Accelerator 會從其他隔離網路區域將流量重新路由到運作狀態良好的 IP 地址,為用戶端應用程式提供容錯能力。
快取 IP 地址的用戶端不會有變化:某些用戶端裝置和網際網路解析器需要很長的時間快取 DNS 解析結果。因此,更新組態、應用程式故障或路由喜好設定變更時,您不知道需要多久的時間,才能讓所有使用者都收到更新之後的 IP 地址。使用 AWS Global Accelerator,您不需要仰賴用戶端裝置的 IP 地址快取設定。只要幾秒鐘的時間就能把變更傳播出去,因此可以縮減應用程式停機時間。
提升效能:AWS Global Accelerator 透過任一傳播靜態 IP 地址,從最靠近終端用戶端的節點輸入流量。然後流量會周遊無壅塞和冗餘 AWS 全球網路,該網路會優化正在 AWS 區域中執行的應用程式路徑。AWS Global Accelerator 根據終端用戶端的地理位置選擇最佳的 AWS 區域,這樣可降低首個位元組延遲並提升效能高達 60%。
易於管理:AWS Global Accelerator 提供的靜態 IP 地址是固定的,並為應用程式提供單一進入點。這可讓您輕鬆在可用區域或 AWS 區域之間移動端點,無須更新 DNS 組態或面向用戶端的應用程式。使用案例包含 A/B 測試、應用程式更新和容錯移轉模擬。公司代理也可以將應用程式的靜態 IP 地址放進防火牆的白名單中。
精細的控制:AWS Global Accelerator 可讓您設定區域端點群組的流量調節功能,以便在執行效能測試或應用程式更新時,調高或調低特定 AWS 區域的流量。此外,如果您有狀態應用程式,可以選擇將使用者的所有請求導向相同的端點,而不考慮來源連接埠和協定,以維護用戶端親和性。這些功能為您提供精細的控制。
我只在單一 AWS 區域進行操作。我是否可從 AWS Global Accelerator 獲得任何優勢?
是。雖然您可能不想使用 AWS Global Accelerator 的智慧流量路由功能,但是使用靜態 IP 地址有許多優點。首先,使用這些地址,您可以將使用者的流量路由到盡可能接近使用者的 AWS 全球網路,以提高他們的服務品質 (QoS)。通常,流量必須在公有網際網路透過可能擁塞且非冗餘的網路路徑,經過多次跳轉才能到達目標 AWS 區域。使用 AWS Global Accelerator,您可以透過 AWS 全球冗餘網路來協助提高應用程式可用性和效能。其次,您可以輕鬆地在 AWS 區域之間自由移動應用程式,無須變更公有界面。這表示您可以規劃未來,因為您知道如果需要變更,可以輕鬆移轉或新增額外的 AWS 區域,而不用擔心使用者如何連接到您的應用程式。
高可用性
AWS Global Accelerator 如何讓移動到多個區域設定變得簡單?
您可能為了區域冗餘,而想要在多個 AWS 區域執行應用程式,或是為了提高效能,而在更靠近使用者的位置執行應用程式。在應用程式和用戶端之間提供網路層,AWS Global Accelerator 可以執行運作狀態檢查,然後自動在故障的端點周圍路由流量,而不會中斷用戶端。這種逐步關閉和啟動新節點的方式可以改善使用者的可用性和效能,同時確保將網際網路流量路由到最近的可用端點。
AWS Global Accelerator 如何協助支援多個區域容錯移轉?
AWS Global Accelerator 為您提供一組靜態 IP 位址,可跨 AWS 區域對應到多個應用程式端點,以改善冗餘。如果應用程式在特定 AWS 區域中故障,AWS Global Accelerator 會自動偵測運作狀態不佳的端點,並將流量重新導向到下一個最佳的 AWS 區域,藉此確保高可用性與災難復原。
我的應用程式在 AWS 區域之間容錯移轉的速度有多快?
AWS Global Accelerator 可以偵測運作狀態不佳的端點,並在 1 分鐘之內將其從服務中剔除。
使用自有 IP
我是否可以在 Global Accelerator 中使用自己的 IP 位址?
您可以在 AWS Global Accelerator 使用自有 IP 位址範圍 (BYOIP),這可讓您將自己的 IP 位址當作應用程式端點的固定進入點。如此一來,您就可以將具有硬式編碼 IP 地址相依性的內部部署應用程式移至 AWS,無須進行任何面向用戶端的變更。舉例來說,這在需要將 IP 地址範圍列入允許名單的受監管環境中便相當實用。使用您 IP 地址的加速器,以及使用 Amazon 提供之 IP 地址的加速器,二者的工作原理完全相同。如需詳細資訊,請閱讀文件。
我是否可以同時經由 Global Accelerator 以及透過 Amazon EC2 從 AWS 區域公告 IPv4 集區?
否,您只能透過其中一項服務公告 IPv4 集區。
Global Accelerator 的靜態 IP 位址與 EC2 彈性 IP 位址有何不同?
雖然 Global Accelerator 的 IP 位址與 EC2 彈性 IP 位址均為靜態位址,但兩者還是有部分差異。首先,Global Accelerator 的 IP 地址可以與任意數量之 AWS 區域中的一或多個端點建立關聯,例如 Application Load Balancer、Network Load Balancer 或 EC2 執行個體。這可讓您輕鬆地將應用程式向外擴展至多個 AZ 或 AWS 區域。相反地,彈性 IP 則是繫結至單一 AWS 區域中的單一 AWS 資源,例如負載平衡器或 EC2 執行個體。其次,Global Accelerator 的 IP 地址只能支援用戶端產生的連線,不像彈性 IP 可同時支援用戶端和伺服器產生的連線。再者,Global Accelerator 的 IP 地址是透過 AWS 廣大的節點網路公告。流量可以盡可能靠近您的使用者來流入高效能的可用 AWS 網路。彈性 IP 則是依次透過單一 AWS 區域公告。
我可以透過 BYOIP 攜帶多少個 IP 範圍?
您可以在帳戶中使用最多兩個 IP 範圍。
透過 BYOIP 可以攜帶的最具體前綴為何?
您可以透過 BYOIP 使用的最明確位址範圍為 /24。IP 地址的前 24 個位元將指定網路編號。例如,198.51.100 是 IP 地址 198.51.100.0 的網路編號。
哪些 RIR 前綴可用於 BYOIP?
您可以使用 ARIN、RIPE 和 APNIC 已註冊前綴。
我是否可以將 Amazon 提供的彈性 IP 位址範圍轉換為 Global Accelerator IP 位址並以全域方式公告這些位址?
否,您只能在 AWS Global Accelerator 中使用您擁有的 IP 位址範圍。這些範圍會是您向網際網路登記註冊組織購買的範圍。
自訂路由
什麼是自訂路由加速器?
自訂路由加速器是 Global Accelerator 中的新型加速器。此新型加速器可讓您使用自有的應用程式邏輯,確切地將一位或多位使用者路由至單一或多個 AWS 區域中的特定 Amazon EC2 執行個體目的地。這對於以下使用案例十分實用:您想要控制使用者流量要傳送至 EC2 執行個體上的哪個工作階段。多人遊戲應用程式即是範例之一,在多人遊戲中,您想要根據如地理位置、玩家技能和遊戲組態等因素,將多位玩家指派給一部遊戲伺服器上的單一工作階段。其他範例包括 VoIP、EdTech 和社交媒體應用程式,可將多位使用者指派給特定媒體伺服器,以啟動語音、視訊和簡訊工作階段。您可以使用自訂路由加速器將多位使用者導向至加速器上的唯一連接埠,且其流量將被路由至您的應用程式工作階段正在上面執行的特定目的地 IP 地址和連接埠。
自訂路由加速器有哪些方面不同於標準加速器?
標準加速器會自動將流量路由至離使用者最近的運作良好端點。由於標準加速器在設計上為讓流量達到負載平衡,因此無法確切地將多位使用者路由至加速器以外的特定 EC2 目的地。自訂路由加速器可讓您達成此目的。另一個差異是標準路由加速器支援 Network Load Balancer、Application Load Balancer、EC2 執行個體和做為端點的彈性 IP。自訂路由加速器僅支援 VPC 子網路端點,每個端點均包含執行您應用程式的一或多個 EC2 執行個體。
自訂路由如何運作?
您可以使用自訂路由加速器,確切地將多位使用者路由至應用程式工作階段正在上面執行的特定目的地 IP 位址和連接埠。您僅需將使用者導向至 Global Accelerator 上的特定連接埠。使用者便可以連線至配置到您加速器的兩個靜態任一傳播 IP 地址之一。您的使用者使用加速器 IP 地址和連接埠連線到端點時,您的流量會進入最接近節點的 AWS 全球網路。您的自訂路由加速器已將此加速器連接埠映射至 VPC 子網路內的特定 EC2 執行個體和連接埠,並在那裡路由您的使用者流量。已經預設從加速器連接埠映射至每個 VPC 子網路內的 EC2 執行個體,且此映射屬於靜態映射。這表示您的應用程式可以使用 API 查詢映射、儲存映射,然後使用映射來控制 Global Accelerator 如何路由用戶端流量。如果在建立加速器後新增或移除端點,現有端點的映射則不會變更。
什麼是 VPC 子網路端點?
VPC 子網路端點是隨著此功能推出的新型端點。各 VPC 子網路端點 (可能位於單一或多個區域) 包含託管應用程式的 EC2 執行個體的 IP 地址。您可以使用自訂路由加速器在多達數千個 EC2 執行個體 (在單一或多個 VPC 中執行) 前方設置加速器。自訂路由加速器支援的 VPC 子網路端點個數上限為 17 個,並只會將流量路由至各子網路內的 EC2 執行個體。
我應如何監控用戶端是否可以透過 Global Accelerator 連線到我的 VPC 子網路端點?
自訂路由加速器並未為 VPC 子網路端點或其中的 EC2 執行個體提供外部運作狀態檢查。在此情形下,每個加速器連接埠均會映射至特定 EC2 執行個體私有 IP 地址和連接埠。因此,您的應用程式可以監控 EC2 執行個體的運作狀態,如果執行個體運作狀態不良,您可以將使用者流量導向至不同的加速器 IP 地址和連接埠組合,控制流量容錯移轉至另一運作良好的特定執行個體。
如果我需要路由至 64,000 個以上的目的地,該怎麼辦?
如果您預期需要更多目的地,只需使用其他子網路內其他端點,來設定更多自訂路由加速器。然後更新您的自訂應用程式邏輯,以使用新加速器的 IP 地址和新連接埠映射,以便連線到各執行個體和連接埠。
其他問題
AWS Global Accelerator 是否支援 IPv4 與 IPv6?
Global Accelerator 支援流向所有端點的 IPv4 流量,以及流向 Application Load Balancer 端點的 IPv6 流量。
AWS Global Accelerator 支援哪些協定?
AWS Global Accelerator 支援 TCP 和 UDP 協定。
AWS Global Accelerator 與 DNS 型流量管理解決方案有何不同?
首先,某些用戶端裝置和網際網路解析器需要很長的時間快取 DNS 解析結果。因此,更新組態、應用程式故障或路由喜好設定變更時,您不知道需要多久的時間,才能讓所有使用者都收到更新之後的 IP 地址。使用 AWS Global Accelerator,您不需要仰賴用戶端裝置的 IP 地址快取設定。只要幾秒鐘的時間就能把變更傳播出去,因此可以縮減應用程式停機時間。其次,使用 Global Accelerator,您可以取得靜態 IP 地址,為應用程式提供固定的進入點。這可讓您輕鬆在可用區域或 AWS 區域之間移動端點,無須更新 DNS 組態或面向用戶端的應用程式。