Amazon EMR notebook の接続問題をトラブルシューティングする方法を教えてください。
最終更新日: 2022 年 12 月 23 日
Amazon EMR notebook の接続問題をトラブルシューティングしたいと考えています。
簡単な説明
Amazon EMR notebook に接続すると、次のようなエラーが表示されることがあります。
- ワークスペース (ノートブック) は停止しています。内部エラーです。
- ワークスペース (ノートブック) をローカルモードで使用できるようになりました。
- ノートブックは停止しています。サービスロールには必要なアクセス許可がありません。
- ノートブックは停止しています。ノートブックセキュリティグループ sg-xxxxxxxx には、マスターセキュリティグループ sg-yyyyyy に接続するためのエグレスルールがありません。セキュリティグループを修正するか、デフォルトのオプションを使用してください。
- ノートブックは停止しています。ノートブックセキュリティグループ sg-xxxxxxx にイングレスルールを設定しないでください。セキュリティグループを修正するか、デフォルトのオプションを使用してください。
解決方法
EMR Notebooks のサービスロールを確認してください
1. ノートブックの AWS Identity and Access Management (IAM) ロールに最低限必要なアクセス許可が付与されていることを確認します。詳細については、「EMR Notebooks のサービスロール」を参照してください。
2. ノートブックに AmazonElasticMapReduceEditorsRole に含まれるアクセス許可があることを確認します。Amazon Simple Storage Service (Amazon S3) へのフルアクセスには、AWS マネージドポリシー S3FullAccessPolicy を使用してください。詳細については、「AWS マネージドポリシー: Amazon S3FullAccess」を参照してください。
3. ノートブックが置かれている S3 バケットにアタッチされているバケットポリシーから、アクセス許可の制限をすべて削除します。
EMR Notebooks のセキュリティグループを確認する
1. ノートブックに使用しているセキュリティグループに、最低限必要なルールが適用されていることを確認します。詳細については、「EMR Notebooks の EC2 セキュリティグループの指定」を参照してください。
2. EMR クラスターと EMR notebook には異なるセキュリティグループを使用するのがベストプラクティスです。ノートブックとクラスターのセキュリティグループは、インバウンドとアウトバウンドのルール要件が異なっています。
ノートブックセキュリティグループ ElasticMapReduceEditors-Editor には、マスターセキュリティグループ ElasticMapReduceEditors-Livy への接続を許可するエグレスルールがあります。この接続では tcp/18888 を使用します。ノートブックセキュリティグループ ElasticMapReduceEditors-Editor で追加された 0.0.0.0/0 へのルーティングのアウトバウンドルールをすべて削除します。
マスターセキュリティグループ ElasticMapReduceEditors-Livy には、ノートブックセキュリティグループ ElasticMapReduceEditors-Editor への接続を許可するイングレスルールがあります。この接続では tcp/18888 を使用します。マスターセキュリティグループ ElasticMapReduceEditors-Livy で追加された 0.0.0.0/0 へのルーティングのイングレスルールをすべて削除します。
EMR クラスターの要件
1. アタッチされているクラスターに互換性があり、すべてのクラスター要件を満たしていることを確認します。
2. Livy 偽装がオンになっている場合は、hadoop-httpfs が EMR クラスターマスターノードで実行されていることを確認します。
次のコマンドを使用して hadoop-httpfs のステータスを確認します。
$ sudo systemctl status hadoop-httpfs
次のコマンドを使用して hadoop-httpfs を有効にします。
$ sudo systemctl start hadoop-httpfs