本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
從增強型容器洞見 (傳統) 遷移至 OTel 容器洞見
增強型容器洞見 (傳統) 和 OTel 容器洞見都使用相同的 amazon-cloudwatch-observability Amazon EKS 附加元件。遷移是就地附加元件版本更新,您可以在 15-30 分鐘內完成。
警告
使用 Classic 指標名稱設定的 CloudWatch 警示不會自動使用 OTel 指標。您必須使用以 PromQL 為基礎的警示規則重新建立警示。
先決條件
開始遷移之前,請確認您符合下列要求。
-
執行 Kubernetes 1.28 版或更新版本的 Amazon EKS 叢集
-
附加
amazon-cloudwatch-observability元件已安裝且處於ACTIVE狀態 -
AWS CLI 2.15.0 版或更新版本
-
kubectl設定為與您的目標叢集通訊 -
連接
CloudWatchAgentServerPolicy受管政策的 IAM 角色
突破性變更
在開始遷移之前,請檢閱下列重大變更。
已移除功能
OTel Container Insights 不提供下列功能:
-
StatsD 自訂指標 — 請改用 OTel StatsD 接收器。
-
收集的外掛程式 — 遷移至 OTel 原生檢測。
已變更的預設值
下表顯示 Classic 和 OTel Container Insights 之間變更的預設值。
| 設定 | 傳統預設 | OTel CI 預設 |
|---|---|---|
| 收集間隔 | 60 秒 | 60 秒 |
| 增強可觀測性 | 已啟用 | 已啟用 |
| 代理程式 CPU 請求 | 200 m | 100 公尺 |
| 代理程式記憶體請求 | 200Mi | 128Mi |
移轉步驟
此遷移使用分階段方法將監控差距降至最低。您可以平行執行 Classic 和 OTel 指標串流、驗證資料,然後停用 Classic 串流。
階段 1:確認目前狀態 (僅限傳統)
在進行變更之前,請確認您目前的附加元件狀態,並記錄版本以供轉返。
確認您目前的附加元件組態
-
執行下列命令來檢查目前的附加元件狀態。
aws eks describe-addon \ --cluster-namecluster-name\ --addon-name amazon-cloudwatch-observability -
確認
status欄位為ACTIVE。 -
記錄
addonVersion值。如果您必須轉返,則需要此值。
階段 2:啟用雙重發佈 (傳統 + OTel)
啟用 OTel Container Insights 與增強型容器洞見 (傳統)。這會同時發佈兩個指標串流,以便您可以驗證資料對等性。
重要
這兩個指標串流都會在此階段產生費用。我們建議您盡可能縮短雙發佈時段,以將成本降至最低。
啟用雙重發佈
-
執行下列命令,在啟用兩個串流的情況下更新附加元件。
aws eks update-addon \ --cluster-namecluster-name\ --addon-name amazon-cloudwatch-observability \ --addon-versionlatest-version\ --configuration-values '{"containerInsights":{"enabled":true},"otelContainerInsights":{"enabled":true}}' \ --resolve-conflicts OVERWRITE -
等待附加元件狀態傳回
ACTIVE。aws eks describe-addon \ --cluster-namecluster-name\ --addon-name amazon-cloudwatch-observability \ --query "addon.status" -
透過使用 PromQL 查詢已知指標,確認 OTel 指標出現在 CloudWatch 中。
階段 3:重新建立警示和更新儀表板
為現有的 Classic 警示和儀表板建置 OTel 替換。在此階段期間,請將 Classic 警示保持為作用中的安全網。
為 OTel 指標重新建立警示
-
識別參考 Classic Container Insights 指標名稱的所有 CloudWatch 警示。
-
使用參考 OTel 指標名稱的 PromQL 型指標數學表達式建立對等警示。
-
驗證新警示是否進入
OK狀態,並產生同等的閾值評估。 -
更新任何 CloudWatch 儀表板,以包含以 OTel 指標為基礎的小工具,以及現有的 Classic Widget。
階段 4:停用傳統 (僅切換到 OTel)
驗證 OTel 指標、警示和儀表板是否正常運作後,請停用 Classic 串流。
停用 Classic 並僅保留 OTel
-
執行下列命令來停用 Classic 指標發佈。
aws eks update-addon \ --cluster-namecluster-name\ --addon-name amazon-cloudwatch-observability \ --configuration-values '{"containerInsights":{"enabled":false},"otelContainerInsights":{"enabled":true}}' \ --resolve-conflicts OVERWRITE -
等待附加元件狀態傳回
ACTIVE。 -
移除您在階段 3 中取代的 Classic 警示。
驗證
完成遷移後,請確認可觀測性堆疊是否正常運作。
-
檢查 Query Studio 中的指標 — 使用 PromQL 查詢來確認指標從 OTel 管道流動。
-
與基準值比較 — 確認指標值與您在階段 2 期間記錄的 Classic 指標一致。
-
驗證 Container Insights 儀表板 — 確認 Container Insights 主控台會顯示叢集的資料。
-
驗證日誌交付 — 檢查容器日誌是否繼續出現在 CloudWatch Logs 中。
-
驗證警示 — 確認沒有警示處於
INSUFFICIENT_DATA狀態。
轉返
如果您在遷移後遇到問題,您可以還原先前的 Classic 組態。
轉返至增強型容器洞見 (傳統)
-
識別您在階段 1 中記錄的先前附加元件版本。
-
執行下列命令來降級附加元件。
aws eks update-addon \ --cluster-namecluster-name\ --addon-name amazon-cloudwatch-observability \ --addon-versionprevious-version\ --resolve-conflicts OVERWRITE -
等待附加元件狀態傳回
ACTIVE。aws eks describe-addon \ --cluster-namecluster-name\ --addon-name amazon-cloudwatch-observability \ --query "addon.status" -
重新套用您用於先前版本的任何自訂組態值。