使用 Istio 進行監控

監控對於支援轉換到微服務架構風格至關重要。

使用 Istio,您可以預設取得微服務之間流量的監控。您可以使用 Istio 儀表板來即時監控您的微服務。

Istio 與 Prometheus 時間序列資料庫和監控系統 整合,開箱即用。Prometheus 收集各種與流量相關的指標,並為它們提供 豐富的查詢語言

請參閱以下幾個與 Prometheus Istio 相關的查詢範例。

  1. http://my-istio-logs-database.io 存取 Prometheus UI。(my-istio-logs-database.io URL 應在您的 /etc/hosts 檔案中,您先前已設定 )。

    Prometheus Query UI
    Prometheus 查詢 UI
  2. Expression輸入框中執行以下範例查詢。按下Execute按鈕以在Console選項卡中查看查詢結果。查詢使用 tutorial 作為應用程式命名空間的名稱,請將其替換為您命名空間的名稱。為了獲得最佳結果,在查詢資料時執行先前步驟中描述的即時流量模擬器。

    1. 取得您命名空間中的所有請求

      istio_requests_total{destination_service_namespace="tutorial", reporter="destination"}
      
    2. 取得您命名空間中所有請求的總和

      sum(istio_requests_total{destination_service_namespace="tutorial", reporter="destination"})
      
    3. 取得對 reviews 微服務的請求

      istio_requests_total{destination_service_namespace="tutorial", reporter="destination",destination_service_name="reviews"}
      
    4. 過去 5 分鐘內對 reviews 微服務所有實例的請求 速率

      rate(istio_requests_total{destination_service_namespace="tutorial", reporter="destination",destination_service_name="reviews"}[5m])
      

上面的查詢使用 istio_requests_total 指標,這是一個標準的 Istio 指標。您可以觀察其他指標,特別是 Envoy 的指標(Envoy 是 Istio 的 sidecar 代理)。您可以在insert metric at cursor下拉選單中看到收集的指標。

後續步驟

恭喜您完成本教學!

這些任務是初學者使用此 demo 安裝進一步評估 Istio 功能的好起點

在您自訂 Istio 以用於生產環境之前,請參閱以下資源

加入 Istio 社群

我們歡迎您加入 Istio 社群,提出問題並給予我們回饋。

此資訊是否有用?
您有任何改進建議嗎?

感謝您的回饋!