本文介紹注入Sidecar後,健全狀態檢查失敗或者無效的問題現象、問題原因和解決方案。
問題現象
注入Sidecar後,健全狀態檢查失敗或者無效。本文以TCP健全狀態檢查連接埠8087為例,啟用mTLS後,在Container Service管理主控台的容器組詳情頁面事件頁簽下,未顯示8087連接埠的健全狀態檢查資訊。
問題原因
在Service Mesh開啟mTLS後,kubelet向Pod發送的健全狀態檢查請求被Sidecar攔截,而kubelet沒有對應的TLS認證,導致健全狀態檢查失敗。
解決方案
配置連接埠健全狀態檢查流量免於經過Sidecar代理,具體操作步驟如下:
配置連接埠健全狀態檢查流量免於經過Sidecar代理
登入ASM控制台。
在左側導覽列,選擇。
在網格管理頁面,找到待配置的執行個體,單擊執行個體的名稱或在操作列中單擊管理。
在網格詳情頁面左側導覽列,選擇。
在命名空間頁簽下,選中相應的命名空間,單擊按連接埠或地址來啟用/禁用Sidecar代理頁簽,配置相應參數。
參數配置說明如下:
參數
說明
設定連接埠使入口流量免於經過Sidecar代理
配置入口流量免於經過Sidecar代理的連接埠,本文配置為8087。
設定連接埠使出口流量免於經過Sidecar代理
配置出口流量免於經過Sidecar代理的連接埠,本文配置為8087。
配置完成後,單擊更新設定。
查看健全狀態檢查結果
登入Container Service管理主控台,在左側導覽列選擇叢集列表。
在叢集列表頁面,單擊目的地組群名稱或者目的地組群右側操作列下的詳情。
在叢集管理頁左側導覽列,選擇。
單擊目標容器組名稱或右側的詳情,進入容器組詳情頁面。
在容器組詳情頁面,單擊事件頁簽。查看連接埠8087的健全狀態檢查是否生效。