AWS Glue
AWS Glue ジョブのアセットと Spark ジョブのメトリクスを収集します。
設定¶
Func のインストール¶
Guance のインテグレーション - 拡張機能 - ホステッド Func の有効化を推奨します。前提条件はすべて自動的にインストールされるため、そのままスクリプトのインストールに進んでください。
Func を自身でデプロイする場合は、セルフホスト Func を参照してください。
スクリプトの有効化¶
ヒント:要件を満たす AWS アクセスキーを事前に用意してください(簡単に設定するには、グローバル読み取り専用権限
ReadOnlyAccessを付与できます)。
マネージド版のスクリプト有効化¶
- Guanceコンソールにログインします
- [統合] メニューをクリックし、[クラウドアカウント管理] を選択します
- [クラウドアカウントを追加] をクリックし、[AWS] を選択して画面に必要な情報を入力します。以前にクラウドアカウント情報を設定済みの場合は、この手順をスキップしてください
- [テスト] をクリックし、成功したら [保存] をクリックします。失敗した場合は、関連設定が正しいか確認して再度テストしてください
- [クラウドアカウント管理] の一覧で追加済みのクラウドアカウントを確認できます。該当するクラウドアカウントをクリックして詳細ページに入ります
- クラウドアカウント詳細ページの【統合】ボタンをクリックし、
未インストール一覧からAWS Glueを見つけて【インストール】をクリックし、表示されるインストール画面でそのままインストールします
手動でのスクリプト有効化¶
- Func コンソールにログインし、[スクリプトマーケット]をクリックして Guance スクリプトマーケットを開き、
integration_aws_glueを検索します。 - [インストール]をクリックし、AWS AK ID、AK Secret、アカウント名を入力します。
- [起動スクリプトをデプロイ]をクリックします。
Startupスクリプトセットが自動的に作成され、対応する起動スクリプトが設定されます。 - 有効化すると、[管理 / 自動トリガー設定]に対応する設定が表示されます。[実行]をクリックすると、スケジュール時刻を待たずにすぐに実行できます。しばらく待ってから、タスクの実行履歴とログを確認してください。
検証¶
- [管理 / 自動トリガー設定]で、対象タスクの自動トリガー設定が存在することを確認し、タスク履歴とログに異常がないか確認します。
- Guance の[インフラストラクチャ / カスタム]で、アセット情報が存在するか確認します。
- Guance の[メトリクス]で、対応する監視データが存在するか確認します。
メトリクス¶
メトリクスセットは aws_glue です。
| MetricName | MetricDescribe | Dimensions | Unit |
|---|---|---|---|
glue.ALL.jvm.heap.usage |
すべての executor の JVM ヒープ使用率 | JobName, JobRunId, Type | 比率(0–1) |
glue.ALL.s3.filesystem.read_bytes |
すべての executor が S3 から読み取ったバイト数 | JobName, JobRunId, Type | B |
glue.ALL.s3.filesystem.write_bytes |
すべての executor が S3 に書き込んだバイト数 | JobName, JobRunId, Type | B |
glue.ALL.system.cpuSystemLoad |
すべての executor のシステム CPU 負荷 | JobName, JobRunId, Type | 比率(0–1) |
glue.driver.aggregate.bytesRead |
driver が集計した読み取りバイト数 | JobName, JobRunId, Type | B |
glue.driver.aggregate.elapsedTime |
driver が集計した実行時間 | JobName, JobRunId, Type | ms |
glue.driver.aggregate.numCompletedStages |
完了した Spark stage 数 | JobName, JobRunId, Type | count |
glue.driver.aggregate.numCompletedTasks |
完了した Spark task 数 | JobName, JobRunId, Type | count |
glue.driver.aggregate.numFailedTasks |
失敗した Spark task 数 | JobName, JobRunId, Type | count |
glue.driver.aggregate.numKilledTasks |
終了させられた Spark task 数 | JobName, JobRunId, Type | count |
glue.driver.aggregate.recordsRead |
読み取ったデータレコード数 | JobName, JobRunId, Type | count |
glue.driver.aggregate.shuffleBytesWritten |
Shuffle で書き込んだバイト数 | JobName, JobRunId, Type | B |