通過服務網格ASM,可以簡化微服務部署架構下微服務的治理。本文介紹如何快速將應用部署到ASM。
操作步驟
步驟 | 操作 | 說明 |
1 | 在使用服務網格ASM之前,您需要創建一個ASM實例,對應用服務進行流量管理、安全管理、故障恢復、觀測監控等。 | |
2 | 部署在服務網格中的應用實際上運行于集群之上,因此需要先給ASM實例添加Kubernetes集群。 | |
3 | 入口網關為Kubernetes集群提供了七層網關功能,對外提供一個統一的七層服務入口,根據HTTP請求的內容將來自同一個TCP端口的請求分發到不同的Kubernetes服務。 | |
4 | 為ASM實例添加入口網關后,即可部署應用到該實例關聯的集群。 | |
5 | 版本流量路由是指將流量按照比例路由到服務的不同版本,適用于灰度發布和A/B測試等場景。您可以使用Istio資源實現版本流量路由。 | |
6 | 網格拓撲是一個服務網格可觀測性工具,提供了查看服務行為的可視化界面。您可以通過網格拓撲查看工作負載之間的調用關系、流量走向。 |
FAQ
為什么不能使用ASM實例的KubeConfig部署應用?
ASM控制臺提供的KubeConfig配置用于連接ASM實例,并通過kubectl對Istio CRD(自定義資源)進行操作,例如虛擬服務VirtualService。Istio資源在控制平面進行操作,無法在控制平面部署應用。
為什么不能在ASM管理的集群中部署Istio的虛擬服務等CRD資源?
Istio資源在控制平面進行操作,連接的KubeConfig也是控制平面提供的配置。
為什么不直接使用集群的連接配置操作Istio資源?
Istio CRD對應的資源保存在控制平面,控制平面會將對應的規則轉換成Sidecar里的規則并進行應用。
服務網格控制平面的命名空間與數據平面集群的命名空間有什么區別?
通過服務網格ASM控制臺或者使用ASM KubeConfig定義的命名空間隸屬于ASM實例本身,與該ASM管理的數據平面集群是相對獨立的,因此ASM托管的控制平面的命名空間可以與數據平面集群的命名空間存在不同的情況。即在服務網格ASM控制臺新增或者刪除命名空間,并不會影響數據平面Kubernetes集群的命名空間。