EMR は、クラスタ インスタンスにカスタム ソフトウェアをインストールするために使用できるブートストラップ アクションを提供します。 ブートストラップアクションを作成するには、ブートストラップスクリプトをインストールし、スクリプトに情報を入力する必要があります。 スクリプトは、EMR クラスタからアクセス可能な URI に格納する必要があります。QueryGridコンポーネントの互換性については、Teradata QueryGrid互換性マトリックスを参照してください。
必要なスクリプト、TDQG_DEPLOYMENT-version.shは、tdqg-node-version.tar.gzノード パッケージにパッケージ化されます。
この手順では、次の項目を前提条件とします。
- EMR クラスタからアクセス可能な場所に格納されている EMR クラスタとスクリプトをプロビジョニングする特権が必要です。
- cURLツールが、QueryGridをインストールするすべてのノードにインストールされている。
ブートストラップアクションでは、以下の考慮事項に注意してください。
- クラスタプロビジョニング中にのみ提供可能
- クラスタ後プロビジョニングを変更できません
- 実行中のクラスタでは起動できません
- 作成後は常に永続化され、将来のすべての EMR ノードはブートストラップ アクションを実行します。
- システムを追加し、Teradata QueryGrid サービスにQueryGrid Managerによって生成されたtdqg-node.json トークン ファイルをダウンロードします。tdqg-node.jsonのダウンロードの詳細については、手動でのノードの追加を参照してください。
- 次のいずれかを実行します。
オプション アクション AWS EMR にTeradata QueryGridをインストールする - ノード パッケージをダウンロードします。
詳細については、<必要なパッケージのダウンロード>を参照してください。
- パッケージを解凍する:
tar -xvzf tdqg-node-version.tar.gz
TDQG_DEPLOYMENT.shスクリプトは、パスqgdeployment/emrにあり、TDQG_DEPLOYMENT.shという名前です。
- QueryGridデプロイスクリプトを AWS S3 (または EMR クラスタからアクセス可能な任意のパス) にアップロードします。
- (オプション)EMR クラスタの作成時にカスタム ブートストラップ アクションとして配置スクリプトを追加するには、詳細オプション を選択します。
- クラスタ全般の設定で、クラスタ名を入力し、ログを有効にします。
- 構成 をクリックします。 に移動し、
- ブートストラップ アクションの追加ウィンドウに次のパラメータを指定します。
- 名前 - ブートストラップアクションの名前
- スクリプトの場所 - TDQG_DEPLOYMENT.shのパス
- オプションの引数 - 入力としてtdqg_node_jsonファイル
- ./TDQG_DEPLOYMENT.sh --tdqg_node_json_file input入力しますが、inputは次のいずれかになります。
- tdqg_node_json_fileへのパス (推奨される方法)
- tdqg_node_jsonファイルの内容を完了するEMR では、テキスト入力で二重引用符は使用できません。テキスト ファイルを指定する場合は、二重引用符をエスケープします。クラスタがプロビジョニングされるとブートストラップ アクションを更新することはできないため、Teradata ではテキストではなくパスとしてファイルを指定することを推奨します。
- 追加 をクリックして、ウィザードを終了します。
詳細については、<https://docs.aws.amazon.com/emr/latest/ManagementGuide/emr-plan-bootstrap.html>を参照してください。
既存ノードへのQueryGridのインストール ブートストラップ アクション スクリプトを実行するには、sudo権限を持つユーザーが必要です。 - クラスタ内の各ノードでTDQG_DEPLOYMENT.shを実行します。
クラスタが現在アクティブでないことを確認してから実行してください。
- ./TDQG_DEPLOYMENT.sh --tdqg_node_json_file input入力しますが、inputは次のいずれかになります。
- tdqg_node_json_fileへのパス (Teradata推奨メソッド)
- tdqg_node_jsonファイルの内容を完了するEMR では、テキスト入力で二重引用符は使用できません。テキスト ファイルを指定する場合は、二重引用符をエスケープします。クラスタがプロビジョニングされるとブートストラップ アクションを更新することはできないため、Teradata ではテキストではなくパスとしてファイルを指定することを推奨します。
新しいノードへのQueryGridのインストール 新しいノードでのブートストラップ アクションは、EMR クラスタをプロビジョニングする際にTDQG_DEPLOYMENT.sh スクリプトを実行した方法によって異なります。 - スクリプトをカスタム ブートストラップ アクションとして実行した場合、スクリプトは新しいノードで自動的に実行されます。
- スクリプトをカスタム ブートストラップ アクションとして実行しなかった場合は、既存のノードにインストールする場合と同様に、新しいノードでスクリプトを実行します。
- ノード パッケージをダウンロードします。