フレキシブル サーバーでエラスティック クラスター Azure Database for PostgreSQL作成する

エラスティック クラスターを備えた Azure Database for PostgreSQL は、水平方向のスケールアウト機能を使用して、クラウドで高可用性 PostgreSQL データベースを実行、管理、およびスケーリングするために使用するマネージド サービスです。 このクイック スタートでは、エラスティック クラスターを作成する方法について説明します。

Azure サブスクリプションをお持ちでない場合は、開始する前に無料の Azure アカウントを作成してください。

コンピューティング リソースとストレージ リソースのセットを構成して、フレキシブル サーバーなどのエラスティック クラスターを作成します。 Azure リソース グループ内にクラスターを作成します。 「 Azure Database for PostgreSQL の作成 」で説明されている手順は、エラスティック クラスターにも同様に適用されます。 このセクションでは、プロセスの変更について概説します。

エラスティック クラスターを作成する手順

Azure portal を使用します。

  1. 基本情報を入力したら、[ サーバーの構成 ] リンクを選択します。

    [コンピューティングとストレージ] セクションとアクション可能な [サーバーの構成] リンクを示すAzure ポータルのスクリーンショット。

  2. [ クラスター ] セクションで、[ エラスティック クラスター ] オプションを選択します。

    [コンピューティングとストレージの構成] ページの上部セクションのスクリーンショット。サーバーが選択されています。エラスティック クラスターがクリアされます。

  3. ノード数を指定し、コンピューティング サイズを構成します。

    エラスティック クラスターを使用したコンピューティングとストレージの構成のスクリーンショット。エラスティック クラスターが選択されています。ノード数の入力ボックスの値は 4 です。コンピューティング レベルとサイズのオプションが表示されます。

  4. 変更を保存し、メインの構成ページで選択内容を確認します。 Citus 拡張機能が作成される既定のデータベースの名前を変更するには、[ データベース名 ] テキスト ボックスを使用します。 次に、[ 確認と作成 ] を選択して選択内容を確認します。

    メイン構成ページのスクリーンショット。[コンピューティング + ストレージ] セクションには、新しい行のシャーディング スキーマ/行と、4 つのノードを示す行があります。データベース名フィールドを使用すると、既定のデータベース名を postgres から任意の任意のユーザー設定に変更できます。

  5. [作成] を選択して、サーバーをプロビジョニングします。

    デプロイを開始する前にクラスターの詳細を確認できる [確認と作成] タブを示すスクリーンショット。

  6. デプロイが開始されます。

    デプロイが進行中であることを示すスクリーンショット。

  7. デプロイが完了したら、[ ダッシュボードにピン留めする] を選択できます。 このアクションにより、サーバーの [概要] ページへのショートカットとして、Azure ポータル ダッシュボードにこのサーバーのタイルが作成されます。 [リソースに移動] を選択すると、サーバーの [概要] ページが開きます。

    デプロイが完了したことを示すスクリーンショット。

    既定では、postgres データベースがサーバーに作成されます。 この既定のデータベースの名前は、クラスターのプロビジョニング時にのみ変更できます。 postgres データベースは、ユーザー、ユーティリティ、アプリケーションを対象とした既定のデータベースです。 (その他の既定のデータベースは azure_maintenance です。その機能は、管理されたサービス プロセスをユーザーのアクションから分離することです。このデータベースにはアクセスできません。)

    Note

    Azure Database for PostgreSQLフレキシブル サーバーへの接続は、ポート 5432 と 6432 (PgBouncer) を介して通信します。 企業ネットワーク内から接続しようとすると、ポート 5432 および 6432 経由の送信トラフィックがネットワークのファイアウォールで許可されない場合があります。 その場合、IT 部門がポート 5432 と 6432 を開かない限り、サーバーに接続できません。 エラスティック クラスターでは、クラスター ノード間の負荷分散接続にポート 7432 と 8432 (PgBouncer) も使用されるため、IT 部門が同様の方法で一覧表示できるようにする必要がある場合があります。

接続情報の取得

エラスティック クラスター インスタンスを作成すると、ポータルによって、指定した名前の既定のデータベースが作成されます。 データベース サーバーに接続するには、完全なサーバー名と管理者の資格情報が必要です。 これらの値は、クイックスタート記事で前に説明しました。 そうしないと、ポータルのサーバー の [概要 ] ページでサーバー名と認証情報を簡単に見つけることができます。

サーバーの [概要] ページを開きます。 サーバー名管理者ログインを書き留めます。 各フィールドの上にカーソルを合わせると、テキストの右側にコピー シンボルが表示されます。 必要に応じてコピー シンボルを選択して値をコピーします。

サーバーの [概要] ページのスクリーンショット。

psql を使用して Azure Database for PostgreSQL データベースに接続する

多くのアプリケーションを使用して、Azure Database for PostgreSQLフレキシブル サーバーに接続できます。 クライアント コンピューターに PostgreSQL がインストールされている場合は、psql のローカル インスタンスを使用して、Azure Database for PostgreSQLフレキシブル サーバーに接続できます。 psql コマンド ライン ユーティリティを使用して、Azure Database for PostgreSQL フレキシブル サーバーに接続します。

  1. 次の psql コマンドを実行して、Azure Database for PostgreSQLフレキシブル サーバーに接続します。

    psql --host=<servername> --port=<port> --username=<user> --dbname=<dbname>
    

    たとえば、次のコマンドは、アクセス資格情報を使用して、Azure Database for PostgreSQL フレキシブル サーバー mydemoserver.postgres.database.azure.com 上の postgres という既定のデータベースに接続します。 パスワードの入力を求められたら、選択した <server_admin_password> を入力します。

    psql --host=mydemoserver-pg.postgres.database.azure.com --port=5432 --username=myadmin --dbname=postgres
    

    クラスター内のランダム ノードに接続するには、ポート 7432 を使用します。

    psql --host=mydemoserver-pg.postgres.database.azure.com --port=7432 --username=myadmin --dbname=postgres
    

    接続すると、psql ユーティリティによって、SQL コマンドを入力する postgres プロンプトが表示されます。 最初の接続時の出力には、使っている psql のバージョンが Azure Database for PostgreSQL フレキシブル サーバーのバージョンと異なる可能性があるため、警告が表示されることがあります。

    psql の出力例:

    psql (12.3 (Ubuntu 12.3-1.pgdg18.04+1), server 13.2)
    WARNING: psql major version 12, server major version 13.
          Some psql features might not work.
    SSL connection (protocol: TLSv1.3, cipher: TLS_AES_256_GCM_SHA384, bits: 256, compression: off)
    Type "help" for help.
    

    Tip

    クライアントの IP アドレスを許可するようにファイアウォールが構成されていない場合、次のエラーが発生します。

    psql: FATAL: ホスト<IP address>、ユーザー "myadmin"、データベース "postgres" に対して pg_hba.conf のエントリーがありません。SSL がオンです。FATAL: SSL接続が必要です。 Specify SSL options and retry. (SSL のオプションを指定して再試行してください。)

    クライアントの IP がファイアウォール規則で許可されていることを確認します。

  2. 次のコマンドを入力して、プロンプトで exampleschema という空のスキーマを作成します。

    CREATE SCHEMA exampleschema;
    
  3. プロンプトで、次のコマンドを実行して、スキーマ exampleschema を分散させます。

    SELECT citus_schema_distribute('exampleschema');
    
  4. \q」と入力し、Enter キーを押して、psql を終了します。

psql を使用してエラスティック クラスターに接続し、空のスキーマを作成して配布しました。

リソースをクリーンアップする

Tip

このコレクションのその他のクイック スタートは、このクイック スタートに基づいています。 引き続きクイック スタートを使用する場合は、このクイック スタートで作成したリソースをクリーンアップしないでください。 続行する予定がない場合は、次の手順に従って、このクイックスタートでポータルで作成したリソースを削除します。

このクイック スタートで作成したリソースをクリーンアップするには、次のいずれかの方法を使用します。 Azureリソース グループを削除して、リソース グループ内のすべてのリソースを削除します。 他のリソースを保持する場合は、 サーバーのみを削除します