

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# Amazon CloudWatch で EMR HBase のイベントのモニタリング
<a name="emr-hbase-cw"></a>

EMR 7.0 以降、Amazon EMR は Amazon CloudWatch エージェントを提供して CloudWatch または Prometheus にメトリクスを送信し、Ganglia モニタリングシステムを置き換えます。詳細については、「[Amazon CloudWatch エージェント設定ガイド](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-config-700.html)」を参照してください。

 EMR 7.0 Amazon CloudWatch エージェントは基本的な統合を提供しましたが、設定にはコンポーネントのダウンロードやブートストラップアクションの使用など、手動作業が必要でした。ただし、EMR 7.1 以降では、プロセスは簡素化されています。EMR 7.1 で Amazon CloudWatch エージェントを使用することにより、HBase のメトリクスを含め、システムレベルとアプリケーション固有のメトリクスの両方を簡単にモニタリングできます。EMR 設定 API を使用することにより、メトリクス収集プロセスをすばやく設定およびカスタマイズし、データを Amazon CloudWatch または Prometheus に送信する場所を選択できます。この柔軟性により、HBase クラスターを注意深く監視し、円滑かつ効率的に動作させることができます。

EMR 設定 API を使用してセットアップ全体を処理することで、プロセスが大幅にスムーズになります。EMR 7.1 の CloudWatch エージェントは、主に 3 種類のメトリクスをサポートしています:
+ **システムメトリクス** – これには、CPU 使用率、ディスク使用率、メモリ使用率、ネットワーク I/O、プロセス、スワップ使用率などのシステムパフォーマンスの主要な指標が含まれます。
+ **Hadoop デーモンメトリクス** – これらのメトリクスは、DataNode メトリクス、NameNode メトリクス、YARN NodeManager メトリクス、YARN ResourceManager メトリクスなど、Hadoop のさまざまなコンポーネントに関連しています。
+ **HBase メトリクス** – これらのメトリクスは HBase のパフォーマンスに関するインサイトを提供します。HBase マスターメトリクス、HBase リージョンサーバーメトリクス、HBase REST サーバーメトリクス、HBase Thrift Server メトリクスです。

------
#### [ Using the AWS CLI ]

Hadoop と HBase のすべてのメトリクスは JMX ベースです。つまり、Java Management Extensions を使用して詳細なインサイトを提供します。HBase をモニタリングするように Amazon CloudWatch エージェントをセットアップする方法は以下のとおりです。
+ Amazon CloudWatch Agent でクラスターを作成する前に、「[前提条件](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-create.html)」を参照してください。このリストの後に表示されるサンプルのような `create-cluster` コマンドを使用します。
+ HBase クラスターでサポートされている「[設定](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/AmazonCloudWatchAgent-config.html)」を参照してください。
+ HBase モニタリングを設定する設定例については、以下のサンプルを参照してください。`--configuration` 入力の設定例を参照してください。

```
aws emr create-cluster --name "HBase cluster with CloudWatch agent" \
--release-label emr-7.1.0 \
--applications Name=HBase Name=AmazonCloudWatchAgent \
--ec2-attributes KeyName=myKey --instance-type m7g.2xlarge \
--configurations file://./configurations.json \  
--instance-count 3 --use-default-roles
```

メトリクスの JSON サンプル設定の詳細については、「[Set up metrics](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-setting-up-metrics.html)」を参照してください。

------
#### [ Using the console ]

コンソールを操作して Amazon CloudWatch エージェントでクラスターを作成するには、これらのステップを実行します:

**コンソールを操作して CloudWatch エージェントでクラスターを作成する**

1. にサインインし AWS マネジメントコンソール、[https://console.aws.amazon.com/emr](https://console.aws.amazon.com/emr) で Amazon EMR コンソールを開きます。

1. **[クラスターを作成]** を選択します。

1. **[名前とアプリケーション]** で、Amazon EMR リリース 7.0.0 以降を選択します。

1. **[アプリケーションバンドル]** で、クラスターにインストールする HBase および追加のアプリを選択し、選択内容に CloudWatch エージェントを含めます。

1. **[ソフトウェア設定]** を展開します。コンソールで JSON またはシャドウテキストに倣った短縮構文を使用して、設定を直接入力できます。それ以外の方法として、JSON の `Configurations` オブジェクトとしてファイルの Amazon S3 URI を指定することもできます。メトリクスの JSON サンプル設定の詳細については、「[Set up metrics](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/emr-hbase-setting-up-metrics.html)」を参照してください。

1. ユースケースのニーズを満たすクラスターの作成に進みます。



------

# メトリクスを設定する
<a name="emr-hbase-setting-up-metrics"></a>

HBase Master をモニタリングするには、Amazon CloudWatch エージェントを設定して特定のメトリクスを収集します。

1. **HBase マスターメトリクスのセットアップ** – HBase マスターをモニタリングするには、Amazon CloudWatch エージェントを設定して特定のメトリクスを収集できます。マスター割り当てマネージャーのアクティビティを追跡するための設定例を以下に示します:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-master-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=Master,sub=AssignmentManager": "AssignFailedCount,AssignSubmittedCount",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   この設定では、
   + MBean (`Hadoop:service=HBase,name=Master,sub=AssignmentManager`) を指定して、`AssignFailedCount` や `AssignSubmittedCount` などのメトリクスを収集します。
   + これらのメトリクスを 30 秒 (30,000 ミリ秒) ごとに収集するように間隔を設定します。

1. **HBase リージョンサーバーメトリクスの設定** – HBase リージョンサーバーをモニタリングするには、CloudWatch エージェントを以下のように設定します:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-region-server-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=RegionServer,sub=IPC": "numActiveHandler,numActivePriorityHandler",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   この設定では、
   + リージョンサーバー (`numActiveHandler`、`numActivePriorityHandler`) のアクティブなハンドラーをモニタリングします。
   + メトリクス収集に 30 秒間隔を使用します。

1. **HBase REST Server メトリクスのセットアップ** – HBase REST インターフェイスをモニタリングするには、以下の設定を使用できます:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-rest-server-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=REST": "successfulPut,successfulScanCount",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   この例では、CloudWatch エージェントは 30 秒ごとに正常な PUT オペレーションとスキャン数に関するメトリクスを収集します。

1. **HBase Thrift サーバーメトリクスのセットアップ** – HBase Thrift サーバーをモニタリングするには、以下のような設定でメトリクスを設定できます:

   ```
   [
     {
       "Classification": "emr-metrics",
       "Properties": {},
       "Configurations": [
         {
           "Classification": "emr-hbase-thrift-server-metrics",
           "Properties": {
             "Hadoop:service=HBase,name=Thrift,sub=ThriftOne": "BatchGet_max,BatchGet_mean",
             "otel.metric.export.interval": "30000"
           },
           "Configurations": []
         }
       ]
     }
   ]
   ```

   この設定では、Thrift サーバーでのバッチ GET オペレーションの最大時間と平均時間を追跡します。

# メトリクスの送信先の使用
<a name="emr-hbase-using-metrics"></a>

EMR 7.1 では、メトリクスデータを Amazon CloudWatch または Amazon Managed Service for Prometheus に送信するオプションがあります。この選択により、必要性に応じてさまざまなモニタリングツールとシームレスに統合できます。

## Amazon CloudWatch へのメトリクスの送信
<a name="emr-hbase-using-metrics-cw"></a>

CloudWatch にメトリクスを送信するには、この設定を使用します:

```
[
  {
    "Classification": "emr-metrics",
    "Properties": {
      "metrics_destination": "cloudwatch"
    },
    "Configurations": []
  }
]
```

## EKS メトリクスを Amazon Managed Service for Prometheus の転送
<a name="emr-hbase-using-metrics-prom"></a>

Prometheus を使用する場合は、送信先を設定し、エンドポイント URL を指定します:

```
[
  {
    "Classification": "emr-metrics",
    "Properties": {
      "metrics_destination": "prometheus",
      "prometheus_endpoint": "https://aps-workspaces.region.amazonaws.com/workspaces/workspace_id/api/v1/remote_write"
    },
    "Configurations": []
  }
]
```

を AWS リージョン`region`に、 を Prometheus ワークスペース ID `workspace_id`に置き換えます。この設定では、指定されたエンドポイントを使用して HBase メトリクスを Prometheus に送信します。

上記のセットアップでは、**[モニタリング]** タブに以下のメトリクスが表示されます。