Azure で Azure Database PostgreSQL インスタンスを作成する
バージョン 2020.4 以降では、Azure クラウド プラットフォームで外部リポジトリをホストできます。このトピックでは、PostgreSQL 用の Azure Database インスタンスを作成して Tableau Server の外部リポジトリとして使用する方法について説明します。
要件と推奨事項
Tableau Server 外部リポジトリ用に 50 GB のストレージを備えた 8 台の仮想コア メモリ最適化サーバーを使用することを推奨します。ただし、要求事項と使用状況によって正確な要件は異なります。Tableau Server がすでにある場合は、既存のリポジトリの使用状況を確認して、ストレージのニーズを判断します。
必要な場合は、リソースを拡張することもできます。詳細については、「PostgreSQL Azure Database リソースのスケーリング」を参照してください。
Tableau Server と外部 PostgreSQL DB インスタンス間の SSL を使用した安全な通信は、推奨されていますが、必須ではありません。
Tableau Server と外部リポジトリ間の安全な接続を使用しない場合は、暗号化されていない接続を許可するように Azure Database を構成する必要があります。
PostgreSQL DB インスタンスを Tableau Server クラスタ内のすべてのノードから到達可能にする必要があります。データベース インスタンスは、すべての Tableau Server ノードからの接続を許可するように設定する必要があります。この設定には 2 つの方法があります。
最も安全な方法: PostgreSQL 用の Azure Database インスタンスを構成して、仮想ネットワークのサービス エンドポイントを介したプライベート アクセスのみを許可します。詳細については、「Azure Database for PostgreSQL の仮想ネットワーク サービス エンドポイントと規則を使用する」および「VNet サービス エンドポイントを作成および管理する」を参照してください。
Azure 仮想ネットワークに関する概要トピックを確認することもできます。
- もう 1 つの方法として、PostgreSQL 用 Azure Database を構成して、パブリック IP アドレスの範囲からの接続を許可します。この方式では、Azure Database のエンドポイントをインターネット上からのパブリック アクセスにさらします。
Azure Database インスタンスを設定する場合は、管理者ユーザー名として postgres を使用することをお勧めします。別のユーザー名を使用する場合は、ユーザー名が pg または azure で始まらないようにしてください。また、ユーザー名は、rails、tblwgadmin、tableau、readonly、または tbladminviews にすることはできません。
PostgreSQL のバージョンは、Tableau Server をローカルにインストールするときに使用するバージョンと一致する必要があります。Tableau Server 2020.4 は、PostgreSQL バージョン 12 を使用します。
Tableau は、内部のデータベース ユーザーが内部で使用するためのパスワードを自動生成します。このパスワードは長さが 32 文字で、小文字と数字で構成されています。管理者がアクセスしたり、設定したりすることはできません。外部の PostgreSQL インスタンスでは、パスワード ポリシーを設定できる場合があります (使用しているプラットフォームによって異なります)。数字と小文字以外の文字タイプを含むポリシーを指定すると、Tableau Server が外部リポジトリを使用するように設定したときにエラーが発生する可能性があります。
Azure Database で PostgreSQL インスタンスを作成する
ステップ 1: PostgreSQL 用 Azure Database インスタンスの委任サブネットを作成する
ネットワークのオプションとしてプライベート アクセスを設定する場合、このステップはインスタンスを作成するときの必須条件になります。通信をセキュリティで保護するためには、データベースへのアクセスをプライベートに設定する必要があります。これにより、仮想ネットワーク内に作成した仮想マシンであればデータベース インスタンスに接続できますが、仮想ネットワークの外部にあるマシンからは接続できません。
現在 Tableau Server をホストしている同じ仮想ネットワークで、Azure データベース インスタンス用の新しい委任サブネットを作成します。プライベート アクセスの設定の詳細については、Azure Web サイトの「PostgreSQL 用 Azure Database のネットワーク オプション - フレキシブル サーバー」を参照してください。
ステップ 2: PostgreSQL 用 Azure Database インスタンスを作成する
新しい PostgreSQL 用 Azure Database を作成するには、「Amazon ドキュメント サイト」(新しいウィンドウでリンクが開く)に記載されている手順に従ってください。
以下に、新しい PostgreSQL DB インスタンス用の構成オプションと推奨値を示します。
サーバーの詳細
- 新しいサーバーを作成するには、データ ソースとして [なし] を指定します。
- 管理者のユーザー名は postgres を使用することをお勧めします。別のユーザー名を使用する場合は、ユーザー名が pg または azure で始まらないようにしてください。また、ユーザー名は、rails、tblwgadmin、tableau、readonly、または tbladminviews にすることはできません。
AWS の要件を満たすパスワードを選択します。
- 使用している Tableau Server バージョンと互換性のある PostgreSQL バージョンを使用します。Tableau Server バージョンと互換性のある PostgreSQL バージョンの完全なリストについては、製品の互換性を参照してください。
- 少なくとも 512 GB のストレージを割り当てます。
コンピューティングとストレージ
- 少なくとも、汎用コンピューター層と Standard_D8s_v3 (8 仮想コア、32 GB RAM) の計算サイズを備えた Flexible Server を使用します。
- ネットワーク オプション
- プライベート アクセス (仮想ネットワーク) を選択します。これにより、データベースとのプライベートで安全な通信を確保します。
高可用性
要件に応じて高可用性オプションを有効にします。
バックアップ
要件に応じて保持期間を設定します。これは Tableau Server のバックアップではなく、Asure の自動バックアップに関する設定です。要件を満たす設定を指定できます。
ステップ 3: サーバー レベルのファイアウォール ルールを構成する
データベースを作成したら、サーバー レベルのファイアウォール 規則を構成して、Tableau Server ノードへのアクセスを許可します。
すべての Tableau Server ノードから Database インスタンスに接続できることを確認します。
ステップ 4: PostgreSQL インスタンス用の Azure Database を構成する
Tableau Server の観点では、インスタンスのほとんどのパラメーター値はデフォルトに設定できます。特別なパフォーマンスやログ取得の要件がある場合はパラメーター値を変更できますが、次のパラメーターはデフォルト値のままにして、変更しないことを強くお勧めします。
standard_conforming_strings
escape_string_warning
また、パフォーマンスの問題を回避するために、work_mem
の値は少なくとも 16384 に設定することをお勧めします。
サーバー パラメーターの構成方法については、「Azure のドキュメント」を参照してください。
ステップ 5: PostgresSQL DB インスタンスのエンドポイントを取得する
インスタンスの準備が完了したら、このインスタンスを Tableau Server リポジトリ用に使用するように Tableau Server を構成するためのエンドポイント情報を取得します。
ステップ 6: SSL 証明書ファイルをダウンロードする
Tableau Server と外部リポジトリ間の SSL を使用した安全な通信は、必須ではありませんが、推奨されています。
Tableau Server と外部リポジトリ間の通信にセキュリティで保護された接続を設定する場合は、証明書ファイルをダウンロードします。この証明書ファイルは、この外部リポジトリを使用するように Tableau Server を構成する際に必要になります。詳細については、「PostgreSQL 用 Azure Database の TLS 接続の構成」(新しいウィンドウでリンクが開く)を参照してください。
Tableau Server と外部リポジトリ間でセキュリティで保護された接続を使用する必要がない場合は、暗号化されていない接続を許可するように Azure Database インスタンスを構成する必要があります。
PostgreSQL DB の高可用性の構成
Tableau Server では、外部リポジトリの高可用性の管理やセットアップは行われません。Azure には、高可用性を提供するために使用できる機能が用意されています。詳細については、「Azure Database の高可用性」(新しいウィンドウでリンクが開く)を参照してください。
PostgreSQL DB の災害復旧
災害が発生すると、PostgreSQL 用 Azure Database の新しいインスタンスの設定が必要になる場合があります。他のシナリオにおいても、データベース インスタンスの問題から復旧することが必要にある場合があります。このようなシナリオで新しい Azure Database インスタンスを使用するように Tableau Server を構成するには、次の手順に従います。
新しい Azure Database インスタンスにバックアップを復元する。PostgresQL 用 Azure Database で復元を実行すると、元のサーバーのバックアップから新しいサーバーが作成されます。PostgreSQL 用 Azure Database のバックアップと復元の詳細については、「PostgreSQL 用 Azure Database のバックアップと復元」を参照してください。
JSON 設定ファイルを新規作成する。設定ファイルには、新しい PostgreSQL 用 Azure Database インスタンスへの接続情報が含まれています。JSON 設定ファイルの作成に関する詳細については、「PostgreSQL 外部リポジトリでの Tableau Server のインストール」のステップ 1 を参照してください。
tsm topology external-services repository replace-host
コマンドを使用して、新しい Azure Database for PostgreSQL インスタンスに Tableau Server を指定します。tsm topology external-services repository replace-host
コマンドの詳細については、tsm topologyを参照してください。
実行可能なユーザー
Tableau Server を、外部リポジトリを使用するように構成できるのは、Tableau Server 管理者のみです。Azure Databaseを作成するには、AWS アカウントも必要です。
次のステップ
新規インストールの場合: PostgreSQL 外部リポジトリでの Tableau Server のインストール
外部リポジトリを使用するように既存の Tableau Server を構成する場合は、「Tableau Server リポジトリの再構成」を参照してください。