モニタリング設定を使用した、Spark Kubernetes オペレータと Spark ジョブのモニタリング
モニタリング設定を使用することにより、Spark アプリケーションとオペレータログのログアーカイブを Amazon S3 または Amazon CloudWatch に簡単に設定できます。1 つまたは両方を選択することができます。これにより、Spark オペレータポッド、ドライバー、エグゼキュターポッドにログエージェントのサイドカーが追加され、その後、これらのコンポーネントのログが設定されたシンクに転送されます。
前提条件
モニタリングを続行する前に、以下の設定タスクを完了していることを確認してください:
(オプション) Spark 演算子の古いバージョンを以前にインストールしている場合は、SparkApplication/ScheduledSparkApplication CRD を削除します。
kubectl delete crd scheduledsparkapplications.sparkoperator.k8s.io kubectl delete crd sparkapplications.sparkoperator.k8s.ioまだ持っていない場合は、IAM でオペレータ/ジョブ実行ロールを作成します。
次のコマンドを実行して、先ほど作成したオペレータ/ジョブ実行ロールの信頼ポリシーを更新します:
aws emr-containers update-role-trust-policy \ --cluster-namecluster\ --namespacenamespace\ --role-nameiam_role_name_for_operator/job_execution_roleIAM ロール信頼ポリシーを編集し、 オペレータ/ジョブ実行ロールを以下に更新します:
{ "Effect": "Allow", "Principal": { "Federated": "${OIDC-provider}" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringLike": { "OIDC_PROVIDER:sub": "system:serviceaccount:${Namespace}:emr-containers-sa-*" } } }次のアクセス許可を使用して、IAM で monitoringConfiguration ポリシーを作成します:
オペレータ/ジョブ実行ロールにポリシーを添付します。