Hadoop では、クラスターのマスターノードは、ジョブの送信、モニタリング、終了など、クラスター全体の管理を担当します。Hadoop クラスターでジョブを実行するには、マスターノードを介してジョブを送信する必要があります。
前提条件
EMR on ECS でクラスターが作成されていること。詳細については、「クラスターの作成」をご参照ください。
オンプレミスサーバーがクラスターのマスターノードに接続されていること。クラスターの作成時に [パブリックネットワーク] スイッチを有効にするか、クラスターの作成後に ECS コンソールでマスターノードにパブリックネットワークをアタッチできます。マスターノードの ECS インスタンスには、固定パブリック IP アドレスまたは Elastic IP Address を割り当てることができます。詳細については、「Elastic IP Address」をご参照ください。
クラスターが属するセキュリティグループでポート 22 が有効になっていること。
手順
SSH を使用してクラスターのマスターノードにログインします。詳細については、「クラスターへのログイン」をご参照ください。
SSH を使用してノードに接続した後、コマンドラインで次のコマンドを実行してジョブを送信し、実行します。この例では、Spark 3.1.1 が使用され、次のコマンドを使用してジョブを送信し、実行します。
spark-submit --class org.apache.spark.examples.SparkPi --master yarn --deploy-mode client --driver-memory 512m --num-executors 1 --executor-memory 1g --executor-cores 2 /opt/apps/SPARK3/spark-current/examples/jars/spark-examples_2.12-3.1.1.jar 10説明spark-examples_2.12-3.1.1.jarは、クラスター内の JAR パッケージの名前です。クラスターにログインして、パス/opt/apps/SPARK3/spark-current/examples/jarsを確認できます。ジョブの実行レコードを表示します。ジョブを送信した後、YARN Web UI を介してジョブの実行レコードを表示できます。以下に簡単な説明を示します。
ポート 8443 を有効にします。詳細については、「セキュリティグループの管理」をご参照ください。
ユーザーを追加します。詳細については、「OpenLDAP ユーザー管理」をご参照ください。
Knox アカウントを使用して YARN Web UI にアクセスするには、Knox アカウントのユーザー名とパスワードを取得する必要があります。
[EMR on ECS] ページで、対象クラスターの行にある [クラスターサービス] をクリックします。
[アクセスリンクとポート] タブをクリックします。
[YARN UI] 行のパブリックリンクをクリックします。
追加したユーザーを使用してログイン認証を行い、YARN Web UI にアクセスします。
[すべてのアプリケーション] ページで、対象ジョブの ID をクリックしてジョブの詳細を表示します。
