全部產品
Search
文件中心

Enterprise Distributed Application Service:配置標籤

更新時間:Jun 30, 2024

在微服務架構中,K8s叢集中可能會部署大量的應用,且不同的應用可能存在多個版本,此時叢集中會出現大量的Pod。在EDAS控制台對應用配置Label,能夠為該應用的所有Pod配置標籤,以索引值對的形式對一組Pod進行標識。結合標籤選取器,能夠在大量的Pod中篩選出具有特定標籤標識的一組Pod,便於分組管理。本文介紹在建立或部署應用時,如何為應用的Pod配置標籤。

操作步驟

  1. 登入EDAS控制台

  2. 在左側導覽列,單擊應用管理 > 應用列表,在頂部功能表列選擇地區並在頁面上方選擇所屬微服務空間,在叢集類型下拉式清單,選擇K8s叢集,然後在頁面單擊具體的應用程式名稱。

  3. 應用總覽頁面右上方選擇部署 > 部署

  4. 選擇部署模式頁面的其中一種部署模式地區的右上方單擊開始部署

    說明

    本文以單批發布為例來說明操作步驟。

  5. 在單批發佈頁面,修改部署參數,並展開標籤(Label)配置,配置自訂標籤索引值對,完成配置後單擊確定

    說明

    標籤值需設定為該應用的應用程式名稱。

    等待應用部署成功後,通過kubectl命令根據指定標籤索引值查詢Pod。

    kubectl get pod -l demo-app-name=sc-server-demo

    結果樣本如下:

    NAME                                        READY   STATUS    RESTARTS   AGE
    sc-server-demo-group-1-1-5795d5487c-****   2/2     Running   0          2m58s

基於Label實現應用親和性

在部署K8s叢集中的應用時,通常需要考慮不同組件間的依賴關係。例如,將某些Pod調度到同一拓撲域下,或不能將某些Pod調度到同一拓撲域。此時為應用配置Label可以輔助配置自訂的應用親和性和反親和性。下面將介紹如何通過Label實現應用親和性。

前提條件

已部署了標籤為demo-app-name=sc-server-demo的應用。

操作步驟

在另一個應用中配置應用親和性,將兩個應用的Pod調度至同一節點上。

  1. 登入EDAS控制台

  2. 在左側導覽列,單擊應用管理 > 應用列表,在頂部功能表列選擇地區並在頁面上方選擇所屬微服務空間,在叢集類型下拉式清單,選擇K8s叢集,然後在頁面單擊具體的應用程式名稱。

  3. 應用總覽頁面右上方選擇部署 > 部署

  4. 選擇部署模式頁面,選擇其中一種部署模式,單擊開始部署

    說明

    本文以單批發布為例來說明操作步驟。

  5. 單批發布頁面,修改應用的環境和部署套件資訊後,展開調度規則

    選擇模式配置為自訂配置,在應用親和性頁簽添加規則,參數配置如下:

    • 拓撲域選擇kubernetes.io/hostname

    • 應用標籤名配置為demo-app-name

    • 操作符號選擇In

    • 應用標籤值配置為sc-server-demo

  6. 展開標籤(Label)配置,配置自訂標籤索引值對demo-app-name=sc-client-demo,完成配置後單擊確定

    等待應用部署成功後,通過kubectl命令檢查兩個應用Pod所在的節點。

    kubectl get pod -l demo-app-name=sc-client-demo -o wide
    kubectl get pod -l demo-app-name=sc-server-demo -o wide

    結果樣本如下:

    NAME                                        READY   STATUS    RESTARTS   AGE   IP            NODE                          NOMINATED NODE   READINESS GATES
    sc-client-demo-group-1-1-5c5cbb9889-****   2/2     Running   0          24s   10.85.***.*4   cn-hangzhou.192.168.AAA.BBB   <none>           <none>
    NAME                                        READY   STATUS    RESTARTS   AGE   IP            NODE                          NOMINATED NODE   READINESS GATES
    sc-server-demo-group-1-1-5795d5487c-****   2/2     Running   0          35m   10.85.***.*3   cn-hangzhou.192.168.AAA.BBB   <none>           <none>

    從結果中可以看到兩個應用Pod所在節點為同一節點。

相關文檔

部署應用時,關於應用親和性和反親和性調度規則的更多資訊,請參見配置調度規則