Vertica 接続の作成 - AWS Glue

Vertica 接続の作成

前提条件:

  • データベースの読み取りおよび書き込み時に一時ストレージとして使用する Amazon S3 バケットまたはフォルダ。tempS3Path によって参照されます。

    注記

    AWS Glue ジョブデータプレビューで Vertica を使用する場合、一時ファイルは tempS3Path から自動的に削除されない場合があります。一時ファイルを確実に削除するには、[データプレビュー] ペインで [セッションの終了] を選択して、データプレビューセッションを直接終了します。

    データプレビューセッションが直接終了することを保証できない場合は、Amazon S3 ライフサイクル構成を設定して古いデータを削除することを検討してください。ジョブの最大実行時間にマージンを加えた値に基づいて、49 時間を超える時間が経過しているデータを削除することをお勧めします。Amazon S3 ライフサイクルの設定の詳細については、Amazon S3 ドキュメントの「ストレージのライフサイクルの管理」を参照してください。

  • AWS Glue ジョブロールに関連付けることができる、Amazon S3 パスに対する適切な許可を持つ IAM ポリシー。

  • Vertica インスタンスが Amazon VPC 内にある場合は、トラフィックがパブリックインターネットを経由することなく、AWS Glue ジョブが Vertica インスタンスと通信できるように Amazon VPC を設定します。

    Amazon VPC で、AWS Glue がジョブの実行中に使用する [VPC][サブネット]、および [セキュリティグループ] を特定または作成します。さらに、Vertica インスタンスとこの場所の間のネットワークトラフィックを許可するように Amazon VPC が設定されているようにする必要があります。ジョブは、Vertica クライアントポート (デフォルトは 5433) との TCP 接続を確立する必要があります。ネットワークレイアウトに基づいて、セキュリティグループルール、ネットワーク ACL、NAT ゲートウェイ、およびピアリング接続の変更が必要になる場合があります。

Vertica に対する接続を設定するには:
  1. AWS Secrets Manager で、Vertica 認証情報、verticaUsername および verticaPassword を使用してシークレットを作成します。Secrets Manager でシークレットを作成するには、AWS Secrets Manager ドキュメントの「AWS Secrets Manager シークレットを作成する」にあるチュートリアルに従ってください。シークレットを作成したら、次のステップのためにシークレット名 secretName を保存しておきます。

    • [key/value ペア] を選択する際に、verticaUsername という値を持つキー user のペアを作成します。

    • [key/value ペア] を選択する際に、verticaPassword という値を持つキー password のペアを作成します。

  2. AWS Glue コンソールで、「AWS Glue 接続の追加」にあるステップに従って接続を作成します。接続を作成したら、次のステップのために接続名 connectionName を保存しておきます。

    • [接続タイプ] を選択する際に、[Vertica] を選択します。

    • [Vertica ホスト] を選択する場合は、Vertica インストールのホスト名を入力します。

    • [Vertica ポート] を選択すると、Vertica インストールを使用できるポートが選択されます。

    • [AWS Secret] をクリックして、secretName を入力します。

  3. 次の状況では、追加の設定が必要になる場合があります。

    • Amazon VPC の AWS でホストされている Vertica インスタンスの場合

      • Vertica セキュリティ認証情報を定義する AWS Glue 接続に、Amazon VPC 接続に関する情報を提供します。接続を作成または更新する際に、[ネットワークオプション][VPC][サブネット]、および [セキュリティグループ] を設定します。

AWS Glue ジョブを実行する前に、次のステップを実行する必要があります。

  • AWS Glue ジョブの許可に関連付けられた IAM ロールを tempS3Path に付与します。

  • AWS Glue ジョブに関連付けられている IAM ロールに secretName を読み取るアクセス許可を付与します。