跳至內容

如何對 OpenSearch Service 中的 Kibana 或 OpenSearch Dashboards 錯誤進行疑難排解?

4 分的閱讀內容
0

我想對在 Amazon OpenSearch Service 中,收到的 Kibana 或 OpenSearch Dashboards 錯誤進行疑難排解。

解決方法

如果存在基礎結構或組態問題,您可能會收到以下其中一個錯誤訊息:

「OpenSearch Dashboards/Kibana server is not ready yet」

「OpenSearch Dashboards/Kibana did not load properly」

「OpenSearch Dashboards/Kibana did not load properly.Check the server output for more information.」

若要對這些問題進行疑難排解,並確認您的伺服器運作正常,請檢查以下設定:

如果您仍遇到問題,請使用以下疑難排解步驟來解決問題。

對「Http request timed out」錯誤或 VPC 存取問題進行疑難排解

如果您的 OpenSearch Service 叢集位於虛擬私有雲端 (VPC),您可能會收到「{"Message":"Http request timed out connecting"}」錯誤訊息。當網路可達性問題阻礙與 Kibana 或 OpenSearch Dashboards 的連線時,就會出現此問題。

若要對此問題進行疑難排解,請執行下列動作:

  • 確保 VPC 的安全群組允許從您的用戶端 IP 位址傳入 443 連接埠的流量。
  • 如果您的用戶端位於與 OpenSearch Service 叢集不同的 VPC,請確認您正確設定了用戶端與 OpenSearch Service 的子網路。例如,檢查您的 VPC 端點、VPC 對等互連、VPN 或 AWS Direct Connect 連線。
  • 確保您的子網路路由表具有存取 OpenSearch Service 網域所需的路由。

如需更多資訊,請參閱在 VPC 內啟動 OpenSearch Service 網域。

對「User: anonymous is not authorized to perform」錯誤進行疑難排解

如果您啟用了精細存取控制,並使用 SAML 2.0 驗證,您可能會收到以下錯誤訊息:

「{"Message":"User: anonymous is not authorized to perform: es:ESHttpGet because no resource-based policy allows the es:ESHttpGet action"}」

若要對此問題進行疑難排解,請執行下列動作:

對 SAML 2.0、Amazon Cognito 或 IAM Identity Center 整合問題進行疑難排解

請執行下列操作:

對自訂 Proxy 問題進行疑難排解

如果使用自訂 Proxy 時遇到問題,請採取以下措施:

有關範例 Proxy 組態,請參閱在 VPC 中為 OpenSearch Service 網域建立 SAML 聯合身分。

有關 VPC 中的 Amazon Cognito 驗證,請參閱如何使用 NGINX Proxy,從 VPC 外部存取具有 Amazon Cognito 驗證的 OpenSearch Dashboards?

憑證過期疑難排解

Proxy 端點的過期憑證可能造成存取問題。

若要疑難排解存取問題,請採取以下措施:

  • 檢查 Proxy 設定中使用的憑證到期日。
  • 續約過期憑證,並在 Proxy 組態中更新。
  • 監控您的憑證,以便在憑證過期前收到通知。

對「exceeded the number of permissible concurrent requests」錯誤或資源限流問題進行疑難排解

如果您的節點收到太多使用不同 IAM 憑證的已簽署請求,您可能會收到以下錯誤訊息:

「You have exceeded the number of permissible concurrent requests with unique IAM Identities」

若要對此問題進行疑難排解,請執行下列動作:

  • 整合您的 IAM 角色或使用者,以減少請求中使用的憑證種類。
  • 向叢集新增節點,以增加節點層級的限流閾值。
  • 在您的用戶端應用程式中實作重試邏輯。
  • 逐步增加請求量。
  • 避免使用多個憑證的批次操作。

對藍/綠部署期間的索引與遷移問題進行疑難排解

您在進行藍/綠部署期間,可能會因以下問題而遇到狀況:

  • 萬用字元索引模式範本衝突,影響 Kibana 或 OpenSearch Dashboards 索引。
  • Kibana 或 OpenSearch Dashboards 索引中的文件損壞。

若要解決這些問題,請執行以下命令以檢查索引範本衝突:

GET _cat/templates

輸出範例:

GET _cat/templates?v

name                   index_patterns order      version composed_of
my-index-template      [*] 0

GET _template/my-index-template

{
  "my-index-template": {
    "order": 0,
    "index_patterns": [
      "*"
    ],
    "settings": { <index-settings> },
    "mappings": { <index-mappings> },
    "aliases": { <index-alias> }
  }
}

如需更多資訊,請參閱 OpenSearch 網站上的 CAT 範本 API。

在索引範本中使用 "index_patterns": "*" 並非最佳實務,因為它會包含所有索引。請改為執行以下命令來修改索引範本,使其僅包含具有特定首碼的索引:

PUT _template/my-index-template
{
    "index_patterns": ["your-index-prefix-*"],
    "settings": { index-settings },
    "mappings": { index-mappings },
    "aliases": { index-alias }
}

**注意:**將 your-index-prefix-* 替換為索引首碼,將 index-settings 替換為您的索引組態,將 index-mappings 替換為您的索引對應,並將 index-alias 替換為您的索引別名。如需更多資訊,請參閱 OpenSearch 網站上的設定範本。

如有需要,請刪除 Kibana 或 OpenSearch Dashboards 索引。如需更多資訊,請參閱 OpenSearch 網站上的刪除索引 API。然後,從手動快照還原索引。

對單一節點故障進行疑難排解

單一節點當機可能導致您失去對 Kibana 或 OpenSearch Dashboards 的存取權。

若要對此問題進行疑難排解,請執行下列動作:

如果您只有單一節點,請完成以下步驟,從自動快照還原 .kibana* 索引:

  1. 若要列出儲存庫中可用的自動快照,請執行以下命令:
    GET /_cat/snapshots/repository
    **注意:**將 repository 替換為 cs-automated (非加密網域),或 cs-automated-enc (加密網域)。
  2. 若要查看特定快照中的索引清單,請執行以下命令:
    GET _snapshot/repo-name/snapshot-id?pretty
    **注意:**將 repo-name 替換為您的儲存庫名稱,並將 snapshot-id 替換為快照 ID。
  3. 若要還原 .kibana* 索引,請執行以下命令:
    POST _snapshot/repo-name/snapshot-id
    { "indices": ".kibana*" }
    **注意:**將 repo-name 替換為您的儲存庫名稱,並將 snapshot-id 替換為快照 ID。如果在還原索引時遇到權限問題,請開啟 AWS Support 案例。Kibana 與 OpenSearch Dashboards 均使用 kibana* 索引。

如需更多資訊,請參閱為什麼我的 OpenSearch 服務節點當機了?

對「OpenSearch Security not initialized」錯誤進行疑難排解

當安全性初始化失敗時,會出現「OpenSearchSecurityException[OpenSearch Security not initialized for __PATH__]」錯誤訊息。

若要確認安全性外掛程式已為網域初始化,請在瀏覽器中開啟 https://kibana-dashboards-url/api/status?pretty 網址。

**注意:**將 kibana-dashboards-url 替換為您的儀表板網址。

輸出範例:

... Redacted ...
      {
        "id": "plugin:securityDashboards@2.15.0",
        "message": "All dependencies are available",
        "since": "2025-08-22T11:23:58.243Z",
        "state": "green",
        "icon": "success",
        "uiColor": "secondary"
      },
... Redacted ...

如果輸出中的狀態不是綠色,請重新開啟該網址。如果狀態仍不是綠色,或每次開啟網址時狀態都會波動,表示安全性外掛程式未正確初始化。若要對此問題進行疑難排解,請提交 AWS Support 案例。

對「500」錯誤進行疑難排解

如果您的 CPU 使用率或 JVM 記憶體壓力過高,您可能會收到以下錯誤訊息:

「{"statusCode":500,"error":"Internal Server Error","message":"An internal server error occurred."}」

請確認您的 CPU 使用率與 JVM 記憶體壓力未過高。如需進一步了解您遇到的問題,請檢查 OpenSearch 日誌,以取得錯誤或例外狀況的詳細資訊。如果 CPU 使用率與 JVM 記憶體壓力都很低,但仍收到「500」錯誤,請提交 AWS Support 案例。

對缺少的資訊進行疑難排解

您可能會收到下列其中一個錯誤訊息:

  • 「OpenSearch Dashboards/Kibana blank page」
  • 「Unable to see any data on OpenSearch Dashboards/Kibana Visualization or Dashboards」

如果儀表板的 Discovery (探索) 頁面中缺少資訊,請完成以下步驟,以確認您的文件具有時間戳記欄位:

  1. 開啟 Kibana 或 OpenSearch Dashboards。
  2. 選擇 Dashboards Management (儀表板管理)。
  3. 選擇 Index Pattern (索引模式)。
  4. 選取您的索引模式。
  5. 在 Time field (時間欄位) 中,選取 Timestamp (時間戳記)。

在為文件設定時間戳記欄位後,檢查以下組態:

  • 若要確認是否正確設定時間戳記欄位,請在 Dev Tools (開發工具) 主控台中執行以下命令:
    GET your-index/_mappings?pretty
    注意:將 your-index 替換為您的索引名稱。在輸出中,確認時間戳記已設定為日期。如果未設定為日期,請使用 _reindex API 設定時間戳記。如需更多資訊,請參閱 OpenSearch 網站上的重新索引資料。
  • 確保您在 Discover (探索) 頁面為索引模式選取了正確的時間範圍。
  • 如果啟用了精細存取控制,請確認後端角色具有檢視資料的權限。

監控節點運作狀態

Kibana 與 OpenSearch Dashboards 使用與 OpenSearch Service 節點相同的 CPU 使用率與 JVM 記憶體壓力資源。若要檢查節點運作狀態,請查看 KibanaHealthyNodes 或 OpenSearchDashboardsHealthyNodes 指標。或者,檢查 OpenSearch Service 主控台 上,您網域 Cluster health (叢集運作狀態) 索引標籤的 Kibana 運作狀態。

運作狀態指標會顯示資料節點上所執行 Kibana 或 OpenSearch Dashboards 外掛程式的以下狀態之一:

  • 綠色表示 Kibana 或 OpenSearch Dashboards 在所有資料節點上執行,且沒有已知問題。
  • 黃色表示 Kibana 或 OpenSearch Dashboards 僅在部分資料節點上執行。在此狀態下,Kibana 或 OpenSearch Dashboards 會執行緩慢。
  • 紅色表示 Kibana 或 OpenSearch Dashboards 在所有節點上都無法執行。在此狀態下,Kibana 或 OpenSearch Dashboards 無法執行,且使用者無法存取。
AWS 官方已更新 1 年前