原標題:使用亞馬遜云科技Amazon VPC Lattice簡化服務間的連接、安全和監(jiān)控
在亞馬遜云科技re:Invent 2022中,亞馬遜云科技介紹了Amazon VPC Lattice預覽版,這是Amazon Virtual Private Cloud(Amazon VPC)的一項新功能,可通過一致的方式連接、保護和監(jiān)控服務之間的通信。借助Amazon VPC Lattice,可以定義網(wǎng)絡訪問、流量管理和監(jiān)控策略,以在實例、容器和無服務器應用程序之間連接計算服務。
4月10日,亞馬遜云科技宣布Amazon VPC Lattice現(xiàn)已正式推出。與預覽版相比,有以下新功能:
除了Amazon VPC Lattice自動生成的域名外,服務還可以使用自定義域名。使用HTTPS時,可以配置與自定義域名匹配的SSL/TLS證書。
可以部署開源AWS Gateway API控制器,使用帶有Kubernetes原生體驗的Amazon VPC Lattice。該工具使用Kubernetes Gateway API來連接多個Kubernetes集群的服務以及在EC2實例、容器和無服務器函數(shù)上運行的服務。
可以使用應用程序負載均衡器(ALB)或網(wǎng)絡負載均衡器(NLB)作為服務的目標。
IP地址目標類型現(xiàn)在支持IPv6連接。
使用Amazon VPC Lattice實現(xiàn)服務間的連接
如何使用Amazon VPC Lattice實現(xiàn)電子商務應用程序服務的相互通信。為簡單起見,只考慮四種服務:
訂單服務,作為Lambda函數(shù)運行。
庫存服務,作為Amazon Elastic Container Service(Amazon ECS)部署在支持IPv6的雙堆棧Amazon VPC中。
配送服務,作為ECS服務部署,并使用ALB向服務任務分配流量。
付款服務,在EC2實例上運行。
首先,創(chuàng)建一個服務網(wǎng)絡。訂單服務需要致電庫存服務(檢查商品是否可供購買)、配送服務(組織商品配送)和付款服務(轉(zhuǎn)賬)。這些服務在不同的亞馬遜云科技賬戶和多個Amazon VPC中運行。Amazon VPC Lattice可以處理跨越Amazon VPC邊界設(shè)置連接和跨賬戶權(quán)限的復雜性,因此服務間的通信就像HTTP/HTTPS調(diào)用一樣簡單。
訂單服務在連接到Amazon VPC的Lambda函數(shù)中運行。由于圖表中的所有Amazon VPC都與服務網(wǎng)絡相關(guān)聯(lián),因此訂單服務能夠調(diào)用其他服務(庫存、配送和付款),即使這些服務部署在不同的亞馬遜云科技賬戶和IP地址重疊的Amazon VPC中亦是如此。
使用網(wǎng)絡負載均衡器(NLB)作為目標
庫存服務在雙堆棧Amazon VPC中運行。它作為帶有NLB的ECS服務部署,用于向服務中的任務分配流量。為了獲取NLB的IPv6地址,在EC2控制臺中查找NLB使用的網(wǎng)絡接口。
為庫存服務創(chuàng)建目標組時,在基本配置下,選擇IP地址作為目標類型。然后,選擇IPv6作為IP地址類型。
使用應用程序負載均衡器(ALB)作為目標
使用ALB作為目標甚至更容易操作。為配送服務創(chuàng)建目標組時,在基本配置下,選擇新的應用程序負載均衡器目標類型。選擇要在其中查找ALB的Amazon VPC并選擇協(xié)議版本。
在下一步中,選擇立即注冊,然后從下拉列表中選擇ALB。使用目標組使用的默認端口。Amazon VPC Lattice不為ALB提供額外的運行狀況檢查。但是,負載均衡器已經(jīng)配置自己的運行狀況檢查。
為服務使用自定義域名
要調(diào)用這些服務,使用自定義域名。例如,在Amazon VPC控制臺中創(chuàng)建付款服務時,選擇指定自定義域配置,輸入自定義域名,然后為HTTPS偵聽器選擇SSL/TLS證書。自定義SSL/TLS證書下拉列表顯示來自AWS Certificate Manager(ACM)的可用證書。
保護服務間通信
現(xiàn)在已經(jīng)創(chuàng)建目標組,看看如何保護服務間的通信。為了實現(xiàn)零信任身份驗證和授權(quán),使用AWS Identity and Access Management(IAM)。創(chuàng)建服務時,選擇AWS IAM作為身份驗證類型。
選擇僅允許經(jīng)過身份驗證的訪問策略模板,因此服務請求需要使用簽名版本4進行簽名,這與AWS API使用的簽名協(xié)議相同。通過這種方式,服務之間的請求由其IAM證書進行身份驗證,并且不必管理密鑰來保護它們的通信。
或者,可以更 地使用身份驗證策略,該策略僅提供對某些服務或服務特定URL路徑的訪問權(quán)限。例如,可以將以下身份驗證策略應用于訂單服務,為Lambda函數(shù)提供這些權(quán)限:
對庫存服務/stock URL路徑的只讀訪問權(quán)限(GET方法)。
對配送服務/delivery URL路徑的完全訪問權(quán)限(任何HTTP方法)。
使用Amazon VPC Lattice,快速配置電子商務應用程序服務之間的通信,包括安全和監(jiān)控,F(xiàn)在,可以專注于業(yè)務邏輯,而不是管理服務之間的通信方式。
Amazon VPC Lattice現(xiàn)已在以下亞馬遜云科技區(qū)域推出:美國東部(俄亥俄州)、美國東部(弗吉尼亞州北部)、美國西部(俄勒岡州)、亞太地區(qū)(新加坡)、亞太地區(qū)(悉尼)、亞太地區(qū)(東京)和歐洲地區(qū)(愛爾蘭)。
亞馬遜云科技設(shè)計Amazon VPC Lattice的目的是允許隨著時間的推移逐步加入更多團隊。您組織中的每個團隊都可以選擇是否以及何時使用Amazon VPC Lattice。其他應用程序可以使用HTTP和HTTPS等標準協(xié)議連接到Amazon VPC Lattice服務。通過使用Amazon VPC Lattice,您可以專注于應用程序邏輯,通過對實例、容器和無服務器計算的一致支持來提高生產(chǎn)力和部署靈活性。
使用Amazon VPC Lattice簡化連接、保護和監(jiān)控服務的方式。
投稿郵箱:chuanbeiol@163.com 詳情請訪問川北在線:http://dstuf.com/