疑難排解自我管理的 Apache 卡夫卡事件來源對應錯誤 - AWS Lambda

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

疑難排解自我管理的 Apache 卡夫卡事件來源對應錯誤

下列主題針對將自我管理的 Apache Kafka 與 Lambda 搭配使用時可能遇到的錯誤和問題提供疑難排解建議。如果您發現未列在此處的問題,您可以使用此頁面上的 Feedback (意見回饋) 按鈕來報告。

如需疑難排解的詳細說明,請造訪AWS 知識中心

身分驗證和授權錯誤

如果缺少從 Kafka 叢集取用資料所需的任何權限,Lambda 會在下的事件來源對應中顯示下列其中一個錯誤訊息。LastProcessingResult

叢集無法授權 Lambda

對於 SASL/SCRAM 或 mTLS,此錯誤表示提供的使用者不具備下列 Kafka 存取控制清單 (ACL) 的所有許可:

  • DescribeConfigs 叢集

  • 描述群組

  • 讀取群組

  • 描述主題

  • 讀取主題

當您建立具有必要的 kafka-cluster 許可之 Kafka ACL 時,請將主題和群組指定為資源。主題名稱必須與事件來源映射中的主題相符。群組名稱必須與事件來源映射的 UUID 相符。

將必要的許可新增至執行角色後,可能需要數分鐘變更才會生效。

SASL 身分驗證失敗

若使用 SASL/SCRAM 或 SASL/PLAIN,此錯誤表示所提供的登入憑證無效。

伺服器無法驗證 Lambda

此錯誤表示 Kafka 代理程式無法驗證 Lambda。此狀況的發生原因如下:

  • 您並未提供 mTLS 身分驗證的用戶端憑證。

  • 您已提供用戶端憑證,但並未將 Kafka 代理程式設定為使用 mTLS 身分驗證。

  • 用戶端憑證不受 Kafka 代理程式信任。

Lambda 無法驗證伺服器

此錯誤表示 Lambda 無法驗證 Kafka 代理程式。此狀況的發生原因如下:

  • Kafka 代理程式會使用自行簽署的憑證或私有憑證授權機構,但不會提供伺服器根憑證授權機構憑證。

  • 伺服器根憑證授權機構憑證與簽署代理程式憑證的根憑證授權機構不相符。

  • 主機名稱驗證失敗,因為代理程式的憑證不包含代理程式做為主體替代名稱的 DNS 名稱或 IP 地址。

提供的憑證或私有金鑰無效

此錯誤表示 Kafka 取用者無法使用提供的憑證或私有金鑰。請確定憑證和金鑰使用 PEM 格式,且私有金鑰加密使用 PBES1 演算法。

事件來源映射錯誤

當您將 Apache Kafka 叢集新增為 Lambda 函數的事件來源時,如果您的函數遇到錯誤,則您的 Kafka 取用者會停止處理記錄。主題分割區的取用者是訂閱、讀取和處理記錄者。您的其他 Kafka 取用者可以繼續處理記錄,只要他們沒有遇到相同的錯誤。

若要確定停止取用者的原因,請檢查 EventSourceMapping 的回應中的 StateTransitionReason 欄位。下列清單說明了您可能收到的事件來源錯誤:

ESM_CONFIG_NOT_VALID

事件來源映射組態無效。

EVENT_SOURCE_AUTHN_ERROR

Lambda 無法驗證事件來源。

EVENT_SOURCE_AUTHZ_ERROR

Lambda 沒有存取事件來源所需的許可。

FUNCTION_CONFIG_NOT_VALID

函數組態無效。

注意

如果您的 Lambda 事件記錄超過允許的 6 MB 大小限制,則可能不會進行處理。