MSE微服務治理通過微服務命名空間,實現了不同環境下資源和配置的隔離。本文介紹如何通過微服務命名空間在MSE上組織您的微服務,以及如何管理微服務命名空間。
什麼是微服務命名空間
通常情況下,使用者有生產、測試、開發環境,各環境的資源是隔離的。在MSE微服務治理中,不同微服務命名空間下的應用微服務治理配置相互獨立且嚴格隔離,不支援跨命名空間生效。因此,同一微服務應用在不同環境部署時,擁有各自獨立的微服務治理配置。此類情況下,您可以使用微服務命名空間將不同環境中的應用隔離。

微服務命名空間和Kubernetes命名空間是獨立的概念。在接入應用時,您可以通過在Pod或者對應的Kubernetes命名空間上設定LabelmseNamespace: ${命名空間名稱}參數來指定應用接入MSE時的命名空間。
什麼是MSE微服務治理中的應用
微服務應用一般指提供了一組微服務的Java進程,一個微服務應用可以獨立完成某些比較內聚的微服務商務邏輯,同時有固定的營運、開發人員。
對應到部署模式上,一個MSE微服務治理應用對應一組Deployment。
在接入應用時,如果您在Pod上添加labelmseNamespace: prod和msePilotCreateAppName: ${應用程式名稱},則會接入到prod微服務命名空間下的對應應用。應用程式名稱最大長度為63個字元。
使用情境
環境管理:通過區分生產(Prod)、測試(Test)、開發環境(Dev),實現各個環境及其資源的隔離。
資源隔離:在各個環境中,不同微服務命名空間下的應用治理配置嚴格隔離,不跨命名空間生效。

樣本一:
在實際情境中,您可以將測試環境的應用全部接入微服務命名空間
test(例如test/example-app),將生產環境的所有應用全部接入微服務命名空間prod(例如prod/example-app)。當您需要使用MSE微服務治理功能時,您可以在test/example-app應用上設定並驗證。驗證通過後,再返回prod/example-app應用設定同樣的功能。說明在不同微服務命名空間下,推薦您使用獨立的資料庫、訊息佇列叢集、Kubernetes叢集和Nacos註冊配置中心執行個體,以防止測試環境的變更影響生產環境,保障穩定性。
樣本二:
您在同一個VPC內有三套環境,分別用於應用開發、測試和生產,可以為這三套環境分別建立一個微服務空間(如Dev、Test和Prod)。在這三個微服務空間中分別建立叢集並部署應用,不同微服務空間下的應用互相隔離。
微服務命名空間版本說明
微服務治理分為專業版和企業版,不同版本功能不同,價格也不一致。對於企業版使用者來說,並不是所有應用都需要運行態防護能力(比如Dev環境),可以按需將部分命名空間降級為專業版,其他命名空間預設為企業版(比如Prod環境),從而滿足不同環境接入MSE的需求。
關於微服務治理計費詳情,請參見微服務治理計費概述。

微服務命名空間的使用
建立微服務命名空間
登入MSE控制台。
在左側導覽列,選擇治理中心 > 运维中心 。
在營運中心頁面,單擊目標接入的K8s叢集名稱。
在叢集詳情頁面的操作欄下單擊所對應的微服務命名空間。

在對應的微服務命名空間彈框中填寫名稱,然後單擊确定。