

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

# Amazon RDS でリモートデータベースと Oozie を使用する
<a name="oozie-rds"></a>

デフォルトでは、Oozie のユーザー情報とクエリ履歴は、マスターノード上のローカルの MySQL データベースに保存されます。または、Amazon S3 に保存されている設定と、Amazon Relational Database Service(Amazon RDS) の MySQL データベースを使用して、Oozie が有効な 1 つ以上のクラスターを作成することができます。このようにすることで、Amazon EMR クラスターを実行し続けなくても、Oozie によって作成されたユーザー情報とクエリ履歴を永続化できます。設定ファイルは、Amazon S3 サーバーサイド暗号化機能を使って保存することをお勧めします。

最初に、Oozie のリモートデータベースを作成します。

**外部の MySQL データベースを作成するには**

1. Amazon RDS コンソール ([https://console.aws.amazon.com/rds/](https://console.aws.amazon.com/rds/)) を開きます。

1. [**DB インスタンスの起動**] を選択します。

1. [MySQL]、[**Select (選択)**] の順に選択します。

1. [**Multi-AZ Deployment and Provisioned IOPS Storage (マルチ AZ 配置とプロビジョンド IOPS ストレージ)**] はデフォルトのままにし、[**Next (次へ)**] を選択します。

1. [インスタンスの仕様] はデフォルトのままにし、[Settings (設定)] を指定して、[**Next (次へ)**] を選択します。

1. [Configure Advanced Settings] ([詳細設定] の設定) ページで、適切なセキュリティグループとデータベース名を選択します。使用するセキュリティグループは、少なくともクラスターのマスターノードからのポート 3306 に対するインバウンド TCP アクセスを許可する必要があります。この時点でまだクラスターを作成していない場合、ポート 3306 への接続をすべてのホストに許可し、クラスターを起動した後にセキュリティグループを調整することができます。[**DB インスタンスの起動**] を選択します。

1. RDS ダッシュボードで、[**Instances (インスタンス)**] を選択し、先ほど作成したインスタンスを選択します。データベースが使用できる時、dbname、username、password、および RDS instance hostname をメモします。クラスターの作成および設定時に、この情報を使用します。

**を使用してクラスターを起動するときに Oozie の外部 MySQL データベースを指定するには AWS CLI**

 AWS CLIを使用してクラスターを起動するときに Oozie の外部 MySQL データベースを指定するには、RDS インスタンスを作成する際にメモしておいた情報を、設定オブジェクトの `oozie-site` の設定に使用します。
**注記**  
外部にある同一のデータベースを使用するが、各クラスターはクエリ履歴とユーザー情報を共有する複数のクラスターを作成できます。
+ を使用して AWS CLI、Oozie がインストールされたクラスターを作成し、作成した外部データベースを使用し、データベースプロパティを指定する Oozie の設定分類を持つ設定ファイルを参照します。次の例では、Amazon S3 の設定ファイルとデータベース設定を指定する `myConfig.json` を参照して、Oozie がインストールされた状態でクラスターを作成します。
**注記**  
読みやすくするために、Linux 行連続文字 (\$1) が含まれています。Linux コマンドでは、これらは削除することも、使用することもできます。Windows の場合、削除するか、キャレット (^) に置き換えてください。

  ```
  aws emr create-cluster --release-label emr-7.12.0 --applications Name=Oozie Name=Spark Name=Hive \
  --instance-type m5.xlarge --instance-count 3 \
  --configurations https://s3.amazonaws.com/amzn-s3-demo-bucket/myfolder/myConfig.json --use-default-roles
  ```

  `myConfig.json` ファイルのコンテンツの例を以下に示します。*JDBC URL*、*username*、*password* は、RDS インスタンスの JDBC URL、ユーザー名、パスワードに置き換えます。
**重要**  
JDBC URL には、データベース名をサフィックスとして含める必要があります。たとえば、jdbc:mysql://oozie-external-db.xxxxxxxxxx.us-east-1.rds.amazonaws.com:3306/**dbname** となります。

  ```
  [{
    "Classification": "oozie-site",
      "Properties": {
          "oozie.service.JPAService.jdbc.driver": "org.mariadb.jdbc.Driver",
          "oozie.service.JPAService.jdbc.url": "JDBC URL",                               
          "oozie.service.JPAService.jdbc.username": "username",
          "oozie.service.JPAService.jdbc.password": "password"
      },
      "Configurations": []
  }]
  ```