TPA installation
================

TPAを使用するには、パッケージまたはソースからインストールし、\ ``tpaexec setup``
コマンドを実行する必要があります。このドキュメントでは、TPAパッケージをインストールする方法について説明します。
EDBサブスクリプションプランを契約しており、EDBリポジトリにアクセスできる場合、これらの手順に従う必要があります。ソースからTPAをインストールするには、
 :ref:`Installing TPA from source <Installing TPA from source>` を参照してください。

サポートされているプラットフォームについては、
 :ref:`ディストリビューションのサポート <ディストリビューションのサポート>` を参照してください。

..  Note::
   システムの日付と時刻が正しいことを完全に確認してください。そうしないと、さまざまな機能が失敗します。ネットワーク時間、例 `sudo ntpdate pool.ntp.org` を使用することをお勧めします

クイックスタート
----------------

 `EDB Repos 2.0 <https://www.enterprisedb.com/repos-downloads>`_ にログイン

トークンを取得します。次に、次のコマンドを実行します。

DebianまたはUbuntuにリポジトリを追加し、TPAをインストールします
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   curl -1sLf https://downloads.enterprisedb.com/<your-token>/<your-plan>/setup.deb.sh | sudo -E bash
   sudo apt-get install tpaexec

RHEL、Rocky、AlmaLinux、またはOracle Linuxにリポジトリを追加し、TPAをインストールします
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   curl -1sLf https://downloads.enterprisedb.com/<your-token>/<your-plan>/setup.rpm.sh | sudo -E bash
   sudo yum install tpaexec

追加の依存関係をインストールする
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   sudo /opt/EDB/TPA/bin/tpaexec setup

インストールの検証一般のユーザーとして実行
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   /opt/EDB/TPA/bin/tpaexec selftest

各ステップのより詳細な説明を以下に示します。

TPAをインストールする場所
-------------------------

サポートされているプラットフォームを使用している限り、TPAはワークステーションからインストールして実行できます。これは、学習、ローカルテスト、またはデモンストレーションの目的に適しています。
TPAは :ref:`deploying to Docker containers <Docker>` をサポート

独自のワークステーションで完全な展開を実行したい場合。

運用環境で使用する場合、専用の永続的な仮想マシンでTPAを実行することをお勧めします。これにより、クラスターディレクトリが保持され、将来のクラスター管理または更新にチームが利用できるためです。また、TPAのコピーを1つだけ更新する必要があり、単一のTPAホストからターゲットインスタンスへのネットワークアクセスを提供するだけであることも意味します。

TPAパッケージのインストール
---------------------------

TPAをインストールするには、最初にそれを提供するEDBリポジトリをサブスクライブする必要があります。リポジトリの優先ソースはEDB
Repos 2.0です。

 `EDB Repos 2.0 <https://www.enterprisedb.com/repos-downloads>`_ にログイン

トークンを取得します。次に、次のコマンドを実行します。

DebianまたはUbuntuにリポジトリを追加する
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   curl -1sLf https://downloads.enterprisedb.com/<your-token>/<your-plan>/setup.deb.sh | sudo -E bash

RHEL、Rocky、AlmaLinux、またはOracle Linuxにリポジトリを追加します
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   curl -1sLf https://downloads.enterprisedb.com/<your-token>/<your-plan>/setup.rpm.sh | sudo -E bash

または、古い2ndQuadrantリポジトリからTPAを取得することもできます。これを行うには、EDBカスタマーサポートポータルにログインし、
 `products/tpa/release <https://techsupport.enterprisedb.com/software_subscriptions/add/products/tpa/>`_ を購読します。

Support/Software/Subscriptionsの下でサブスクリプションを追加し、指示に従ってシステムでリポジトリを有効にします。

これらのリポジトリのいずれかを有効にしたら、次のようにTPAをインストールできます。

DebianまたはUbuntuにインストールする
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   sudo apt-get install tpaexec

RHEL、Rocky、AlmaLinux、またはOracle Linuxにインストールする
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

.. code:: bash

   sudo yum install tpaexec

これにより、TPAが\ ``/opt/EDB/TPA``
にインストールされます。また、他の必要なパッケージPython
3.6以降がインストールされていることも確認します。

ここで\ ``sudo``
について言及しているのは、どのコマンドがroot権限を必要とするかを示すためです。他の手段を使用して、rootとしてコマンドを実行できます。

TPA Python環境のセットアップ
----------------------------

次に、 ``tpaexec setup``
を実行して、分離されたPython環境を作成し、必要なすべてのモジュールの正しいバージョンをインストールします。

..  Note::
   20.04より前のUbuntuバージョンでは、 `sudo -H tpaexec setup` を使用して、`tpaexec configure` 中の後続の権限エラーを回避してください

.. code:: bash

   sudo /opt/EDB/TPA/bin/tpaexec setup

これは\ ``/opt/EDB/TPA``
に書き込むため、rootとして実行する必要がありますが、プロセスは、インストールしているシステム全体のPythonモジュールAnsibleを含むには影響しません。

通常\ ``tpaexec`` コマンドを実行するユーザーの\ ``PATH``
に\ ``/opt/EDB/TPA/bin``
を追加します。たとえば、これを.bashrcまたは同等のシェル構成ファイルに追加できます。

.. code:: bash

   export PATH=$PATH:/opt/EDB/TPA/bin

インターネットまたはネットワークアクセスエアギャップなしでTPAをインストールする
-------------------------------------------------------------------------------

このセクションでは、EDBリポジトリ、Pythonパッケージインデックス、またはその両方にアクセスできないサーバーにTPAをインストールする方法について説明します。このような環境でTPAを使用する方法については、
`Managing clusters in a disconnected or air-gapped
environment <reference/air-gapped/>`__\ を参照してください。

TPAパッケージのダウンロード
^^^^^^^^^^^^^^^^^^^^^^^^^^^

TPAをインストールする必要があるサーバーからEDBリポジトリに直接アクセスできない場合、インターネットに接続されたマシンからパッケージをダウンロードして転送できます。これを行うには、いくつかの方法があります。

インターネットに接続されたマシンがターゲットと同じオペレーティングシステムを使用している場合、
``yumdownloader`` RHELライクまたは\ ``apt download``
Debianライクを使用してパッケージをダウンロードすることをお勧めします。

これが不可能な場合は、EDBサポートに連絡してください。サブスクリプションに適切なダウンロードリンクまたは手順を提供します。

Pythonパッケージインデックスへのアクセスを使用しないインストール
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

``tpaexec setup``
を実行すると、通常はPythonパッケージインデックスからPythonパッケージをダウンロードします。環境が別のインデックスを提供しない限り、デフォルトは公式の
 `PyPI <https://pypi.org>`_ 
です。使用可能なパッケージインデックスがない場合は、インストールした\ ``tpaexec``
と同じ方法で\ ``tpaexec-deps``
パッケージをインストールする必要があります。 ``tpaexec-deps`` パッケージ
tpaexecと同じリポジトリから入手できますは、ダウンロードされるすべてをバンドルしているため、ネットワークアクセスなしでインストールできます。
``tpaexec setup``
を実行する前にパッケージをインストールするだけで、バンドルされたコピーが自動的に使用されます。

TPAインストールの検証
---------------------

上記の手順がすべて完了したら、次のコマンドを実行してローカルインストールを確認します。

.. code:: bash

   tpaexec selftest

そのコマンドがエラーなしで完了した場合、TPAインストールは使用できる状態です。

TPAのアップグレード
-------------------

TPAの新しいリリースにアップグレードするには、次のことを行う必要があります。

1. 最新の\ ``tpaexec`` パッケージをインストールする

2. 最新の\ ``tpaexec-deps``
   パッケージ必要な場合、上記を参照してください。

3. ``tpaexec setup`` を再度実行します

上記のようにTPAパッケージリポジトリをサブスクライブしている場合、
``apt-get update && apt-get upgrade`` または\ ``yum update``
を実行すると、これらのパッケージの利用可能な最新バージョンをインストールする必要があります。それ以外の場合は、利用可能な任意の手段でパッケージをインストールできます。

``tpaexec`` の新しいバージョンがインストールされるときは、
``tpaexec setup``
を再度実行することをお勧めします。一部の新しいリリースはこれを厳密に必要としない場合がありますが、他のリリースはそれなしでは動作しません。

Ansibleコミュニティのサポート
-----------------------------

TPAは、デフォルトでansibleのコミュニティディストリビューションを使用するようになりました。
``--use-2q-ansible`` オプションを\ ``tpaexec setup``
に渡すことにより、2ndQuadrant /
ansibleフォークを継続して使用できます。将来のTPAリリースでは、2ndQuadrantアンシブルフォークのサポートが削除されます。

ほとんどのユーザーにとって、これは問題ではありません。ただし、
2ndQuadrant ansibleで\ ``--skip-tags``
を使用している場合、これはサポートされていないことに注意してください
2ndQuadrant
ansibleのサポートが削除される前に、すべてのansibleバージョンと互換性のあるタスクをスキップする代替手段が提供されます。
