全部產品
Search
文件中心

Alibaba Cloud Service Mesh:使用基於訪問日誌分析自動推薦的Sidecar資源

更新時間:Jul 30, 2024

在預設情況下,由於不能確定網格內服務之間的調用依賴關係,Sidecar的配置中儲存了資料平面內所有服務的資訊。您可以使用Sidecar資源配置使對應工作負載上的Sidecar將僅關注與自己有調用依賴關係的服務資訊。本文介紹如何使用基於訪問日誌分析自動推薦的Sidecar資源。

前提條件

背景資訊

在預設情況下,針對控制平面或資料平面的任意一次修改都會引起控制平面向資料平面所有Sidecar的配置推送。Service MeshASM可以通過分析資料平面Sidecar產生的訪問日誌擷取資料平面服務之間的調用依賴關係,為資料平面中的每個工作負載自動推薦Sidecar資源。為工作負載推薦Sidecar資源後:

  • Sidecar配置內將僅保留該Sidecar對應工作負載所依賴的服務資訊。

  • 當該Sidecar資源對應的工作負載無依賴關係的服務發生改變,或與該服務相關的資源發生改變(例如虛擬服務等),都不會引起控制平面向該Sidecar的配置推送。

注意事項

  • 如果您在設定啟用訪問日誌採集時,設定Log ServiceProject為使用預設,ASM會預設選擇您添加到網格中的第一個叢集的Log ServiceProject用於Sidecar資源推薦。

  • ASM的Sidecar資源推薦通過單獨針對每個負載單獨的服務依賴關係提供Sidecar資源,能夠最大化精簡資料面Sidecar配置,但其需要針對資料面中的每個工作負載進行單獨配置,且由於推薦基於訪問日誌,如果訪問日誌中沒有工作負載的服務調用記錄,可能造成推薦的Sidecar不準確,因此您需要對Sidecar進行二次確認。

步驟一:產生訪問日誌

在瀏覽器地址欄輸入http://{入口網關服務的IP地址}/productpage。持續重新整理,直至觀察到Bookinfo應用頁面在顯示黑色星星表徵圖和紅色星星表徵圖之間輪流切換。

步驟二:為工作負載推薦Sidecar資源

  1. 登入ASM控制台,在左側導覽列,選擇服務網格 > 網格管理

  2. 網格管理頁面,單擊目標執行個體名稱,然後在左側導覽列,選擇網格最佳化中心 > 出入站流量配置(Sidecar對象)

  3. 出入站流量配置(Sidecar對象)頁面單擊目標應用右側操作列下的推薦

    當目標應用的推薦任務狀態推薦完成,說明為工作負載推薦Sidecar資源成功。

  4. 出入站流量配置(Sidecar對象)頁面單擊目標應用右側操作列下的查看

  5. 推薦的Sidecar對象資源面板檢查Sidecar的YAML檔案中的hosts參數值是否包含工作負載的所有調用服務,確認無誤後,單擊確定

    如果您發現Sidecar的YAML檔案hosts缺少了服務,您可以在YAML檔案進行補充,然後再建立Sidecar資源。

(可選)步驟三:重新為工作負載推薦Sidecar資源

隨著業務應用的更新升級,Service Mesh中服務之間的調用依賴關係可能會發生改變,此時之前ASM推薦的Sidecar資源將不再有效,此時建議您重新收集日誌,並重新為對應工作負載推薦Sidecar資源。

  1. 登入ASM控制台,在左側導覽列,選擇服務網格 > 網格管理

  2. 網格管理頁面,單擊目標執行個體名稱,然後在左側導覽列,選擇網格最佳化中心 > 出入站流量配置(Sidecar對象)

  3. 出入站流量配置(Sidecar對象)頁面單擊目標應用右側操作列下的重新收集日誌

  4. 重新收集日誌對話方塊單擊確定

    此時被成功應用的Sidecar資源將被刪除,同時目標應用的推薦任務狀態會顯示重新收集日誌中

  5. 重新為訪問日誌分析產生訪問日誌。具體操作,請參見步驟一:產生訪問日誌

  6. 重新為工作負載推薦Sidecar資源。具體操作,請參見步驟二:為工作負載推薦Sidecar資源