PostgreSQLは、広く使用されているエンタープライズグレードのオープンソースのリレーショナルデータベース管理システムであり、DB-Enginesによると世界で4番目に人気のあるデータベースです。これは、開発者コミュニティ内で急速に成長しているRDBMSです。開発者や企業の間で人気が高まっている急成長中のクラウドプロバイダーであるDigitalOceanは、PostgreSQLの導入を検討するのに最適なホストです。この投稿では、いくつかの簡単な手順で、ScaleGridの専用ホスティングを使用してDigitalOceanにPostgreSQLを簡単にデプロイする方法を紹介します。
DigitalOceanPostgreSQLデプロイメントのセットアップ
このチュートリアルでは、DigitalOceanでScaleGridのフルマネージドPostgreSQLホスティングサービスを使用します。 ScaleGridソリューションを使用すると、エンタープライズグレードの機能と無料のサポートをすべて1つのパッケージに含めることができます。 PostgreSQL拡張機能の完全なサポートを利用できるようになります。 PostgreSQLの比較ページで、他の競合他社との機能の完全な比較を取得できます。
デプロイメント構成をカスタマイズして数分後、作成プロセスが開始され、デプロイメントが起動して実行されると、アプリケーションに接続するだけで済みます。
開始するには、コンソールでアカウントにサインアップします。これ以上面倒なことはせずに、すぐに始めましょう。
ステップ1.PostgreSQLデプロイメントの詳細を入力
新しいPostgreSQLデプロイメントを作成すると、作成ウィザードが開きます。まず、名前、サイズ、バージョンなど、デプロイメントの基本的な詳細の一部をカスタマイズできます。展開の名前を入力します。英数字と、後で簡単に認識できる一意のわかりやすい名前を使用することを忘れないでください。
次に、クラウドとして専用ホスティングとDigitalOceanを選択します。次に、VMサイズと選択したバージョンを選択します(すべてのメジャーバージョンがサポートされています)。この例では、PostgreSQLバージョン13.2でNanoサイズのデプロイメントを選択しました。右側に、選択したVMサイズのサイズの説明が表示されます。続行するには、[次へ]をクリックします。
ステップ2.高可用性
2番目のステップでは、スタンドアロンデプロイメントをセットアップするか、PostgreSQLDigitalOceanマスタースタンバイで複製された高可用性デプロイメントをセットアップするかを選択できます。 DigitalOceanデータセンターリージョンがダウンした場合にアプリケーションとデータベースをオンラインに保つ必要がある場合は、高可用性のセットアップを検討することをお勧めします。 DigitalOceanは、一般的に信頼性が高く安定したクラウドプロバイダーであり、稼働時間は99.99%ですが、データセンターが必然的にダウンするリスクは常にあります。追加のデータセンターリージョンにレプリケーションを設定すると、データの損失やダウンタイムのリスクを最小限に抑えるだけでなく、ユーザーとユーザーの大きな頭痛の種を減らすことができる可能性があります。
スタンドアロン展開を実行する場合は、そのオプションと選択したクラウドリージョンを選択し、[次へ]をクリックして手順3に進みます。
高可用性は有料アカウントでのみ利用可能であることに注意してください。トライアルアカウントはレプリカセットをデプロイできません。
PostgreSQLデプロイメントの高可用性を実現するために、マスタースタンバイセットアップのカスタマイズオプションがいくつかあります。最初のオプションは、2+1クォーラムまたは3ノードのいずれかのノード数です。どちらのオプションも高可用性を提供しますが、2 + 1クォーラム設定では、フェイルオーバーイベントの場合にクォーラムノードが意思決定者として機能するため、データ保持ノードは2つだけになります。ノードの数をさらにカスタマイズするには、サポートチームに連絡して、展開にノードを追加するのを支援してください。
次に、ノードを配置するリージョンを選択できます。高可用性を確保するには、ノードごとに異なるリージョンを選択することをお勧めします。
最後に、同期レプリケーション戦略と非同期レプリケーション戦略のどちらかを選択できます。 2つの違いは、同期レプリケーションでは、トランザクションで行われたすべての変更がすべての同期スタンバイサーバーに転送されることです。ただし、非同期レプリケーションでは、変更は他のスタンバイサーバーに非同期で伝播されます。スタンバイサーバーへのフェイルオーバーの場合、まだすべてのコミットされたトランザクションがない可能性があります。
好みの設定を選択したら、[次へ]をクリックして続行します。
ScaleGridClickを使用してDigitalOceanにPostgreSQLをデプロイする方法Tweetステップ3.SSLとPgBouncerを有効にする
セットアッププロセスのステップ3で、SSLとPgBouncerを有効にできます。
SSLを有効にすると、データの転送中に暗号化が可能になります。
PgBouncerは管理プラットフォームに組み込まれています。 PgBouncerを有効にすると、PostgreSQL接続を効率的に管理できるようになります。 PostgreSQLの接続プールの詳細については、接続プールの長所と短所に関するブログ投稿をご覧ください。
DigitalOceanデプロイメントでPostgreSQLに対してPgBouncerを有効にすることにした場合、2つの追加オプションが表示されます。
- プールモード:これは、接続がプールに戻るまでの時間を決定します。一部のPostgres機能はトランザクションモードとステートメントモードではサポートされていないことに注意してください。
- プールサイズ:これにより、プールごとに(つまり、ユーザーごととデータベースの組み合わせごとに)キャッシュされる接続の最大数が決まります。
ヘルプドキュメントに、PgBouncerの管理方法に関する短いガイドがあります。選択したら、[次へ]を押して次のステップに進みます。
ステップ4.ファイアウォールの構成
PostgreSQL作成プロセスのステップ4で、PostgreSQLデプロイメントにアクセスできるIPCIDRを少なくとも1つ入力するように求められます。現在のIPがウィンドウの上部に表示されます。現在のIPCIDRにアクセスを許可する場合は、[現在のIPに開く]を押すだけです。これらのファイアウォール設定は、後でアカウントレベルと展開レベルの両方でカスタマイズできます。
この後、アクセスを許可する他のIP CIDRを入力し、[次へ]をクリックします。
ステップ5.レビューと作成
作成プロセスの最後のページに、新しいPostgreSQLDigitalOceanデプロイメントの概要が表示されます。すべてが正しく表示されていることを確認します。前の手順に戻って必要な変更を加える必要がある場合は、[戻る]を押すことができます。準備ができたら、[作成]をクリックして新しい展開を起動します。
これですべてです。現在、デプロイメントがプロビジョニングされています。これには通常、約15分かかります。待っている間、PostgreSQLコンソールで利用できるさまざまな管理ツール(バックアップ、復元、スケーリング、アラート、クエリ分析など)を自由に探索してください。
ステップ6.接続して移行する
デプロイメントが「作成中」から「実行中」に変更されると、DigitalOceanでデプロイメントに接続できるようになります。これを実現するには、ScaleGridコンソールで提供される接続文字列、コマンドラインまたは一般的なPostgreSQLGUIツールなどさまざまな方法があります。必要な接続の詳細はすべて、展開の詳細ページの[概要]タブの下半分にあります。
コンソールページの上部にあるさまざまなタブから、いつでもPostgreSQLデータベースとユーザーにアクセスして管理できます。
移行も自動化されたプロセスであり、既存の展開からいくつかの詳細を必要とします。 [概要]タブの[データのインポート]ボタンをクリックし、サーバー名、ポート、データベース名、ユーザー名、およびパスワードを入力します。詳細と追加の移行オプションについては、PostgreSQL移行ドキュメントをご覧ください。
|
DigitalOceanで実行
すべてが稼働すると、DigitalOceanへのデプロイは事実上自動的に動作します。当社のサービスは完全に管理されているため、アプリケーションの構築と改善に集中しながら、PostgreSQLの日常の管理および管理タスクをすべて処理できます。注意が必要なものがある場合は、ログインしてクラスターをスケールアップする必要があるかどうか、または24時間年中無休のエンタープライズレベルのサポートチームによるサポートが必要かどうかを確認できるように、通知を送信します。トラブルシューティングを支援し、展開を最適に拡張する方法についてアドバイスを提供します。
また読む:Ubuntu20.04にPostgreSQLをインストールする方法