跳至內容

為什麼我無法存取 Amazon EMR 叢集?

1 分的閱讀內容
0

我無法連線到 Amazon EMR 叢集。

解決方法

Amazon EMR 安全群組規則不正確

若要解決此問題,請執行下列動作:

  • 確認 Amazon EMR 受管安全群組規則對於內部使用者以及外部使用者和應用程式是否正確。
  • 允許連接埠 8443 上的 TCP,以便叢集管理器可以與叢集的主節點進行通訊。
  • 允許連接埠 22 上的 SSH,以便您可以使用 SSH 連線到叢集。

私有子網路中的 Amazon EMR 叢集設定不正確

若要解決此問題,請執行下列動作:

  • 新增用於服務存取的受管安全群組。安全群組規則必須允許叢集管理器與叢集節點進行通訊。
  • 如果您使用的是堡壘主機,則設定堡壘主機安全群組以允許來自用戶端系統的傳入流量。此外,設定 Amazon EMR 叢集安全群組,以允許來自堡壘主機的傳入流量。

**注意:**網路組態設定各不相同,因此請確定正確設定了端對端連線,避免出現網路死角。

驗證設定不正確

檢查驗證設定是否使用 Amazon Elastic Compute Cloud (Amazon EC2) 金鑰對Kerberos。然後,正確設定您的驗證設定。

叢集節點中的資源限制

若要解決此問題,請執行下列動作:

  • 確認基礎主節點是否存在且處於執行中狀態。
  • 檢查主節點的執行個體狀態日誌,以確定您使用資源的方式。
    執行以下命令,以查看最大的 CPU 使用者:
    ps auxwww --sort -%cpu | head -10
    執行以下命令,以檢查核心效能:
    dmesg | tail -n 25
    執行以下命令,以檢查記憶體使用情況:
    free -m
    執行以下命令,以檢查磁碟使用情況:
    df -h

主節點的執行個體控制器未執行

確定主節點的執行個體控制器正在執行中。執行個體控制器是在叢集節點上執行的常駐程式,並與 Amazon EMR 控制平面和叢集的其餘部分進行通訊。

執行下列命令檢查 Amazon EMR 版本 5.30.0 及更新版本上執行個體控制器的狀態:

sudo systemctl status instance-controller

如果執行個體控制器未處於作用中狀態,請執行下列命令來啟動執行個體控制器:

sudo systemctl start instance-controller

若要在早期 Amazon EMR 版本上檢查執行個體控制器的狀態並啟動執行個體控制器,請參閱如何在 Amazon EMR 中重新啟動服務?

AWS 官方已更新 1 年前