深入了解 Kubecost - Amazon EKS

協助改進此頁面

若要為本使用者指南貢獻內容,請點選每個頁面右側面板中的在 GitHub 上編輯此頁面連結。

深入了解 Kubecost

Amazon EKS 提供了經 AWS 最佳化的 Kubecost 套件,使叢集成本一目了然。Amazon EKS 支援 Kubecost,可讓您用於監控按 Kubernetes 資源 (包括 Pod、節點、命名空間和標籤) 細分的成本。

本主題涵蓋了 Kubecost 的可用版本,以及不同可用層級之間的差異。EKS 支援 Kubecost 版本 1 和版本 2。每個版本都有不同的層級可供選擇。您可為 Amazon EKS 叢集使用 Amazon EKS 最佳化 Kubecost 套件,無需額外費用。您可能需要支付使用相關 AWS 服務的費用,例如 Amazon Managed Service for Prometheus。另外,您可使用現有的 AWS 支援協議取得支援。

身為 Kubernetes 平台管理員和財務負責人,您可使用 Kubecost 視覺化 Amazon EKS 費用明細、分配成本,以及向應用程式團隊等組織單位收取費用。您可以根據實際 AWS 帳單向內部團隊和業務部門提供透明且準確的成本資料。此外,您還可以根據他們的基礎設施環境和叢集內的使用模式,獲得客製化的成本最佳化建議。如需 Kubecost 的詳細資訊,請參閱 Kubecost 文件。

自訂套件的 Kubecost 和免費版本的 Kubecost (也稱為 OpenCost) 有何區別?

AWS 和 Kubecost 合作提供自訂版本的 Kubecost。此版本提供商業功能的子集,不收取額外費用。請參閱以下資料表以了解 Kubecost 的自訂套件中隨附的功能。

Kubecost v2

Kubecost v1 和 v2 之間有什麼差異?

Kubecost 2.0 是先前版本的重大升級,包含主要的新功能,包括全新的 API 後端。請注意,分配資產 API 完全向後相容。請檢閱 Kubecost 文件,確保順利轉換。有關增強功能的完整清單,請參閱 Kubecost v2.0 公告完整版本備註

重要

升級前,請檢閱 Kubecost 文件。升級可能會影響報告的可用性。

核心功能對比:

功能 Kubecost 免費方案 2.0 Amazon EKS 最佳化 Kubecost 套件 2.0 Kubecost Enterprise 2.0

叢集成本能見度

無限制叢集,最多 250 個核心

與 Amazon Managed Service for Prometheus 整合時,具有統一的多叢集且無核心限制

跨無限數量環境 (即多重雲端) 的統一且無限數量的叢集

部署

使用者託管

使用者託管

使用者託管、Kubecost 託管 (專用租用戶)、SaaS

支援的資料庫

本機 Prometheus

Amazon Managed Service for Prometheus 或本機 Prometheus

任何 Prometheus 版本和自訂資料庫

資料庫保留支援 (原始指標)

15 天

無限的歷史記錄資料

無限的歷史記錄資料

Kubecost API 和 UI 保留 (ETL)

15 天

15 天

無限制

混合雲端能見度

-

Amazon EKS 和 Amazon EKS Anywhere 叢集

多重雲端和混合雲端

警示和週期性報告

僅主要叢集支援,限 250 個核心

效率警示、預算警示、支出變更警示,以及跨所有叢集更多支援的功能

效率警示、預算警示、支出變更警示,以及跨所有叢集更多支援的功能

已儲存的報告

-

使用 15 天指標的報告

使用無限期歷史記錄資料和指標的報告

雲端計費整合

僅主要叢集支援,限 250 個核心

適用於 AWS 的自訂定價支援 (包含多重叢集和多個帳戶)

支援任何雲端的自訂定價

Savings 建議

僅主要叢集支援,限 250 個核心

主要叢集洞察,但沒有 250 個核心限制

多重叢集深入解析

治理:稽核

-

-

稽核歷史記錄成本事件

單一登入 (SSO) 支援

-

支援 Amazon Cognito

Okta、Auth0、PingID、KeyCloak 以及任何其他自訂項目

角色型存取控制 (RBAC) 與 SAML 2.0

-

-

Okta、Auth0、PingID、KeyCloak 以及任何其他自訂項目

企業培訓和入門

-

-

全方位服務培訓和 FinOps 入門

團隊

-

-

新功能:

以下功能有指標限制:

  • Kubecost 彙總工具

  • 網路監控

  • Kubecost 動作

  • 集合

  • 異常偵測

  • 容器請求資源大小調整

  • Kubecost 預測

  • 用於篩選和彙總的自動完成

指標限制:

指標 Kubecost 免費方案 2.0 Amazon EKS 最佳化 Kubecost 套件 2.0 Kubecost Enterprise 2.0

叢集大小

無限制叢集,最多 250 個核心

無限制

無限制

指標保留

15 天

15 天

無限制

多叢集支援

可用性

可用性

核心限制

每個叢集 250 個核心

無核心限制

無核心限制

Kubecost v1

功能 Kubecost 免費方案 Amazon EKS 最佳化 Kubecost 套件 Kubecost Enterprise

部署

使用者託管

使用者託管

使用者託管或 Kubecos 託管 (SaaS)

支援的叢集數目

無限制

無限制

無限制

支援的資料庫

本機 Prometheus

本機 Prometheus 或 Amazon Managed Service for Prometheus

Prometheus、Amazon Managed Service for Prometheus、Cortex 或 Thanos

資料庫保留支援

15 天

無限的歷史記錄資料

無限的歷史記錄資料

Kubecost API 保留 (ETL)

15 天

15 天

無限的歷史記錄資料

叢集成本能見度

單一叢集

統一的多重叢集

統一的多重叢集

混合雲端能見度

-

Amazon EKS 和 Amazon EKS Anywhere 叢集

多重雲端和混合雲端支援

警示和週期性報告

-

效率警示、預算警示、支出變更警示,以及更多支援的功能

效率警示、預算警示、支出變更警示,以及更多支援的功能

已儲存的報告

-

使用 15 天資料的報告

使用無限期歷史記錄資料的報告

雲端計費整合

每一個叢集都需要

適用於 AWS 的自訂定價支援 (包含多重叢集和多個帳戶)

適用於 AWS 的自訂定價支援 (包含多重叢集和多個帳戶)

Savings 建議

單一叢集深入解析

單一叢集深入解析

多重叢集深入解析

治理:稽核

-

-

稽核歷史記錄成本事件

單一登入 (SSO) 支援

-

支援 Amazon Cognito

Okta、Auth0、PingID、KeyCloak

角色型存取控制 (RBAC) 與 SAML 2.0

-

-

Okta、Auth0、PingID、Keycloak

企業培訓和入門

-

-

全方位服務培訓和 FinOps 入門

常見問答集

請參閱以下有關搭配使用 Kubecost 與 Amazon EKS 的常見問題和解答。

什麼是 Kubecost API 保留 (ETL) 功能?

Kubecost ETL 功能可彙總並整理指標,藉此顯示各種規模程度的成本能見度 (例如 namespace-levelpod-level,以及 deployment-level)。若為 Amazon EKS 最佳化 Kubecost 套件,客戶可從過去 15 天的指標中取得資料和深入解析。

什麼是警示和週期性報告功能? 它包含了哪些警示和報告?

Kubecost 警示可讓團隊即時接收 Kubernetes 支出和雲端支出的更新。週期性報告可讓團隊接收歷史記錄 Kubecost 和雲端支出的自訂檢視。兩者均可使用 Kubecost UI 或 Helm 值來設定。他們支援電子郵件、Slack 和 Microsoft Teams。

儲存的報告包含哪些內容?

Kubecost 儲存的報告是成本和效率指標的預先定義檢視。它們包含依叢集、命名空間、標籤以及更多類別來區分的成本。

什麼是雲端計費整合?

與 AWS 計費 API 整合,可讓 Kubecost 顯示叢集外的成本 (例如 Amazon S3)。此外,它也能讓 Kubecost 協調 Kubecost 具有實際計費資料的叢集內預測,以說明 Spot 使用量、Savings Plans 和企業折扣。

Savings 建議包含哪些內容?

Kubecost 提供深入解析和自動化功能,協助使用者最佳化 Kubernetes 基礎結構和支出。

此功能是否需要付費?

否。您可免費使用 Amazon EKS 最佳化 Kubecost 套件。如果您想要未包含的其他 Kubecost 功能,您可透過 AWS Marketplace 或直接從 Kubecost 購買 Kubecost 的企業授權。

Amazon EKS 最佳化 Kubecost 套件是否提供支援?

是,僅在您使用 Amazon EKS 最佳化 Kubecost 套件時。

如何為 Amazon EKS 最佳化 Kubecost 套件取得支援?

您可以在聯絡 AWS 中向 AWS Support 團隊提出支援案例。

我是否需要授權才能使用 Amazon EKS 整合提供的 Kubecost 功能?

否。

我是否可將 Kubecost 與 AWS 成本和用量報告整合,以獲得更準確的報告?

是。您可將 Kubecost 設定為從 AWS 成本和用量報告擷取資料以獲得準確的成本情況,包括折扣、Spot 定價、預留執行個體定價等。如需詳細資訊,請參閱 Kubecost 文件中的 AWS 雲端帳單整合

此版本是否支援 Amazon EC2 上自我管理 Kubernetes 叢集的成本管理?

否。Amazon EKS 最佳化 Kubecost 套件只與 Amazon EKS 叢集相容。

Kubecost 是否可追蹤 AWS Fargate 上 Amazon EKS 的成本?

Kubecost 會盡最大努力顯示在 Fargate 上使用 Amazon EKS 時的叢集成本情況,但準確度低於在 Amazon EC2 上使用 Amazon EKS。這主要是因為用量計費方式有所不同。在 Fargate 上使用 Amazon EKS 時,您是按耗用的資源付費。若使用 Amazon EC2 節點上的 Amazon EKS,您需要支付佈建資源的費用。Kubecost 會根據節點規格計算 Amazon EC2 節點的成本,包括 CPU、RAM 和暫時性儲存。使用 Fargate 時,系統會根據 Fargate Pod 所請求的資源來計算成本。

如何獲得更新和新版的 Kubecost?

您可使用標準 Helm 升級程序升級您的 Kubecost 版本。最新版本位於 Amazon ECR Public Gallery 中。

是否支援 kubectl-cost CLI? 如何安裝?

是。Kubectl-cost 是 Kubecost 的開放原始碼工具 (Apache 2.0 License),提供對 Kubernetes 成本分配指標的 CLI 存取。若要安裝 kubectl-cost,請參閱 GitHub 上的 Installation (安裝)。

是否支援 Kubecost 使用者介面? 如何存取?

Kubecost 提供 Web 儀表板,您可透過 kubectl 連接埠轉送、輸入或負載平衡器來存取。您也可使用 AWS Load Balancer 控制器來公開 Kubecost,並使用 Amazon Cognito 進行驗證、授權和使用者管理。如需詳細資訊,請參閱 AWS 部落格上的如何使用 Application Load Balancer 和 Amazon Cognito 為您的 Kubernetes Web 應用程式驗證使用者

其他 Kubecost 功能

  • 以下功能在 Kubecost v1 和 v2 中均可用。

    • 匯出成本指標 – Amazon EKS 最佳化成本監控使用 Kubecost 和 Prometheus 部署,後者是一個開放原始碼監控系統和時間序列資料庫。Kubecost 從 Prometheus 讀取指標,然後執行成本分配計算並將指標寫回 Prometheus。Kubecost 前端會從 Prometheus 讀取指標,並顯示在 Kubecost 使用者介面上。下圖說明此架構。

      Kubecost 架構

      預先安裝 Prometheus 後,您可編寫查詢,將 Kubecost 資料擷取到您目前的商業智慧系統中,以供進一步分析。您也可將其用作目前 Kubecost 儀表板的資料來源,以顯示您的內部團隊熟悉的 Amazon EKS 叢集成本。要了解更多關於如何撰寫 Prometheus 查詢的資訊,請參閱 GitHub 上的 https://opencost.io/docs/installation/prometheus/ readme 檔案,或使用 Kubecost Github 儲存庫中的範例 Grafana JSON 模型作為參考。

    • AWS 成本和用量報告整合 – 為了對您的 Amazon EKS 叢集執行成本分配計算,Kubecost 會從 AWS Price List API 擷取 AWS 服務和 AWS 資源的公開定價資訊。您也可將 Kubecost 與 AWS 成本和用量報告整合,使您 AWS 帳戶特定的定價資訊準確性更高。這類資訊包括企業折扣方案、預留執行個體使用量、Savings Plans 和 Spot 使用量。若要進一步了解 AWS 成本和用量報告整合的運作方式,請參閱 Kubecost 文件中的 AWS 雲端帳單整合