Babelfish for Aurora PostgreSQL DB クラスターの作成 - Amazon Aurora

Babelfish for Aurora PostgreSQL DB クラスターの作成

Babelfish for Aurora PostgreSQL のこのリリースは Aurora PostgreSQL バージョン 13.4 以降のリリースでサポートされています。

AWS Management Console または AWS CLI を使用して、Babelfish で Aurora PstgreSQL クラスターを作成できます。

注記

Aurora PostgreSQL クラスターでは、babelfish_db データベース名は Babelfish 用に予約されています。Aurora PostgreSQL の Babelfish に独自の「babelfish_db」データベースを作成すると、Aurora は正常に Babelfish のプロビジョニングができなくなります。

AWS Management Console で実行している Babelfish を使ってクラスターを作成する方法
  1. https://console.aws.amazon.com/rds/ で Amazon RDS コンソールを開き、データベースを作成を選択します。

    実行中の Babelfish で Aurora PostgreSQL クラスターを作成する。
  2. データベース作成方法を選択するには、次のいずれかを実行します:

    • 詳細なエンジンオプションを指定するには、スタンダード作成を選択します。

    • Aurora クラスターのベストプラクティスをサポートする事前設定済みのオプションを使用するには、Easy Create (簡単作成)を選択します

  3. [エンジンタイプには] として、[Aurora (PostgreSQL 互換)] を選択します。

  4. [フィルターを表示] を選択した後 [Babelfish for PostgreSQL 特徴をサポートしているバージョンを表示する] を選択し、Babelfish をサポートするエンジンの種類をリストアップします。Babelfish は現在 Aurora PostgreSQL バージョン 13.4 以降でサポートされています。

  5. [使用できるバージョン] で、Aurora PostgreSQL のバージョンを選択します。Babelfish の最新機能を入手するには、Aurora PostgreSQL の最高メジャーバージョンを選択してください。

    Aurora PostgreSQL のバージョンを選択します。
  6. テンプレート で、ユースケースに合うテンプレートを選択します。

  7. DB cluster identifier (DB クラスター識別子)で、後ほど DB クラスターリストで簡単に見つけられる名前を入力します。

  8. [マスターユーザーネーム] で、管理者ユーザーネームを入力します。Aurora PostgreSQL のデフォルト値は postgres です。デフォルトを使用するか、別の名前を選択します。例えば、SQL Server データベースで使用される命名規則に従うには、マスターユーザー名に sa (システム管理者) と入力します。

    この時点で sa という名前のユーザーを作成しない場合、選択したクライアントを使用して後ほど作成できます。ユーザーを作成したら、ALTER SERVER ROLE コマンドを使用してクラスターの sysadmin グループ (ロール) に追加します。

    警告

    マスターユーザー名は、常に小文字を使用する必要があり、そうしないと、DB クラスターは TDS ポート経由で Babelfish に接続できません。

  9. [マスターパスワード] には、強力なパスワードを作成し、パスワードを確認します。

  10. [Bablfish の設定] セクションまで続くオプションについては、DB クラスター設定を指定します。各設定の詳細については、「Aurora DB クラスターの設定」を参照してください。

  11. Babelfish 機能を利用可能にするには、Babelfish を有効にするボックスを選択します。

    Aurora PostgreSQL クラスターで Babelfish を有効にする。
  12. DB クラスターのパラメータグループで、次のいずれかを実行します:

    • 新規作成を選択し、Babelfish が有効な新しいパラメータグループを作成します。

    • 既存のものを選択を選択して、既存のパラメータグループを使用します。既存のグループを使用する場合は、クラスターを作成する前にグループを変更し、Babelfish パラメータの値を追加してください。Babelfish パラメータの詳細については、Babelfish の DB クラスターパラメータグループ設定 を参照してください。

      既存のグループを使用する場合は、次のボックスにグループ名を入力します。

  13. データベース移行モードの場合は、次のいずれかを選択します。

    • 単一データベースを選択して、単一の SQL Server データベースを移行する。

      Aurora PostgreSQL への完全な移行が最終目標の場合などには、Babelfish を使用せずにネイティブ Aurora PostgreSQL へ複数のユーザーデータベースを一緒に移行することもできます。最終的なアプリケーションで統合スキーマ (単一の dbo スキーマ) が必要な場合は、まず SQL Server データベースを単一の SQL Server データベースに統合してください。その後、単一データベースモードを使用して Babelfish に移行します。

    • マルチデータベースによる、複数の SQL Server データベース (単一の SQL Server インストールを発生元とする) の移行。マルチデータベースモードでは、単一の SQL Server インストールを発生元としないマルチデータベースは統合されません。マルチデータベースの移行については、1 つのデータベースまたは複数のデータベースでの babelfish の使用 を参照してください。

    注記

    Aurora PostgreSQL 16 バージョンから、デフォルトでデータベース移行モードとして複数のデータベースが選択されています。

    SQL Server データベースの移行モードを選択します。
  14. デフォルトの照合ロケール で、サーバーロケールを入力します。デフォルト: en-US。照合の詳細については、Babelfish がサポートする照合順序 を参照してください。

  15. 照合順名フィールドは、デフォルトの照合順序を入力します。デフォルト: sql_latin1_general_cp1_ci_as。詳細については、「Babelfish がサポートする照合順序」を参照してください。

  16. [Babelfish TDS ポート] に、デフォルトポート 1433 を入力します。現在、Babelfish は、DB クラスターについてはポート 1433 のみをサポートしています。

  17. [DB パラメータグループ] で、パラメータグループを選択するか、Aurora にデフォルト設定で新しいグループを作成させます。

  18. フェイルオーバー優先順位で、インスタンスのフェイルオーバー優先度を選択します。値を選択しない場合、デフォルト値は tier-1 になります。この優先度により、プライマリインスタンスの障害からの復旧時に、 レプリカを昇格する順序が決まります。詳しくは、「Aurora DB クラスターの耐障害性」を参照してください。

  19. Backup retention period (バックアップ保持期間) で、Aurora がデータベースのバックアップコピーを保持する期間 (1~35 日) を選択します。バックアップコピーは、2 番目のデータベースに対するポイントインタイム復元 (PITR) で使用できます。デフォルトの保持期間は 7 日間です。

    Aurora PostgreSQL のバージョンを選択します。
  20. スナップショットにタグをコピーを選択し、スナップショット作成時に DB インスタンスタグを DB スナップショットにコピーします。

    注記

    スナップショットから DB クラスターを復元する場合、Babelfish for Aurora PostgreSQL DB クラスターとしては復元されません。Babelfish を再度有効にするには、DB クラスターパラメータグループの Babelfish 設定を制御するパラメータをオンにする必要があります。Babelfish パラメータの詳細については、「Babelfish の DB クラスターパラメータグループ設定」を参照してください。

  21. Enable encryption (暗号化の有効)をクリックして、この DB クラスター保存時の暗号化 (Aurora ストレージ暗号化) を有効にします。

  22. Performance Insights の有効をクリックして Amazon RDS Performance Insights を有効にします。

  23. DB クラスターが実行されているオペレーティングシステムに対してリアルタイムでのメトリクスの収集をスタートするには、Enable enhanced monitoring (高度なモニタリングの有効) を選択します。

  24. PostgreSQL ログを選択して、Amazon CloudWatch Logs にログファイルを発行します。

  25. マイナーバージョン自動アップグレードの有効化を選択して、マイナーバージョンのアップグレードが利用可能な際に Aurora DB クラスターを自動的に更新します。

  26. Maintenance window (メンテナンスウィンドウ) で、次の作業を行います。

    • Amazon RDS が変更やメンテナンスを実行する時間を設定するには、ウィンドウを選択を選びます。

    • 予定外の時刻に Amazon RDS メンテナンスを実行するには、指定なしを選択します。

  27. 削除保護の有効化ボックスを選択して、データベースが誤って削除されるのを防ぎます。

    この特徴を有効にすると、データベースを直接削除することができなくなります。代わりに、データベースを削除する前にデータベースクラスターを変更し、この特徴を無効にする必要があります。

    追加の Aurora PostgreSQL 管理機能から選択します。
  28. [データベースの作成] を選択します。

Babelfish 用にセットアップされた新しいデータベースは、データベースリスティングから確認できます。デプロイが完了した際、Staus (ステータス) 列に Available (使用可能) が表示されます。

Babelfish が実行されている Aurora PostgreSQL クラスター。

Babelfish for Aurora PostgreSQL を作成する場合、AWS CLI を使用して、クラスターに使用する DB クラスターパラメータグループの名前をコマンドに渡す必要があります。詳しくは、「DB クラスターの前提条件」を参照してください。

AWS CLI を使って Babelfish で Aurora PostgreSQL クラスターを作成するには、以下の操作を行います。

AWS CLI を使用して Babelfish で Aurora PostgreSQL DB クラスターを作成する方法

以下の例では、デフォルトのマスターユーザー名 postgres を使用しています。必要に応じて、sa または、デフォルトを受け入れなかった場合に選択したユーザー名など、DB クラスター用に作成したユーザー名に置き換えます。

  1. パラメータグループを作成します。

    Linux、macOS、Unix の場合:

    aws rds create-db-cluster-parameter-group \ --endpoint-url endpoint-url \ --db-cluster-parameter-group-name parameter-group \ --db-parameter-group-family aurora-postgresql14 \ --description "description"

    Windows の場合:

    aws rds create-db-cluster-parameter-group ^ --endpoint-url endpoint-URL ^ --db-cluster-parameter-group-name parameter-group ^ --db-parameter-group-family aurora-postgresql14 ^ --description "description"
  2. パラメータグループを変更して Babelfish を有効にします。

    Linux、macOS、Unix の場合:

    aws rds modify-db-cluster-parameter-group \ --endpoint-url endpoint-url \ --db-cluster-parameter-group-name parameter-group \ --parameters "ParameterName=rds.babelfish_status,ParameterValue=on,ApplyMethod=pending-reboot"

    Windows の場合:

    aws rds modify-db-cluster-parameter-group ^ --endpoint-url endpoint-url ^ --db-cluster-parameter-group-name paramater-group ^ --parameters "ParameterName=rds.babelfish_status,ParameterValue=on,ApplyMethod=pending-reboot"
  3. 新しい DB クラスターの DB サブネットグループと Virtual Private Cloud (VPC) セキュリティグループ ID を認証し、create-db-cluster コマンドを呼び出します。

    Linux、macOS、Unix の場合:

    aws rds create-db-cluster \ --db-cluster-identifier cluster-name\ --master-username postgres \ --manage-master-user-password \ --engine aurora-postgresql \ --engine-version 14.3 \ --vpc-security-group-ids security-group \ --db-subnet-group-name subnet-group-name \ --db-cluster-parameter-group-name parameter-group

    Windows の場合:

    aws rds create-db-cluster ^ --db-cluster-identifier cluster-name ^ --master-username postgres ^ --manage-master-user-password ^ --engine aurora-postgresql ^ --engine-version 14.3 ^ --vpc-security-group-ids security-group ^ --db-subnet-group-name subnet-group ^ --db-cluster-parameter-group-name parameter-group

    この例では、マスターユーザーパスワードを生成して Secrets Manager で管理する --manage-master-user-password オプションを指定しています。詳しくは、「Amazon Aurora および AWS Secrets Manager によるパスワード管理」を参照してください。または、--master-password オプションを使用して、自分でパスワードを指定して管理することもできます。

  4. DB クラスターにプライマリインスタンスを明示的に作成します。次のように、create-db-instance コマンドを呼び出すときに --db-cluster-identifier 引数に対してステップ 3 で作成したクラスターの名前を使用します。

    Linux、macOS、Unix の場合:

    aws rds create-db-instance \ --db-instance-identifier instance-name \ --db-instance-class db.r6g \ --db-subnet-group-name subnet-group \ --db-cluster-identifier cluster-name \ --engine aurora-postgresql

    Windows の場合:

    aws rds create-db-instance ^ --db-instance-identifier instance-name ^ --db-instance-class db.r6g ^ --db-subnet-group-name subnet-group ^ --db-cluster-identifier cluster-name ^ --engine aurora-postgresql