Installing packages
===================

TPAは、展開の早い段階で非Postgres関連パッケージのバッチをインストールし、次にすべてのPostgres関連パッケージを一緒にインストールし、次にオプションコンポーネントのパッケージを個別にインストールします。これらの手順は、sysstatやstraceのようなパッケージをインストールするためのもので、Postgresパッケージに依存していません。

``config.yml`` の\ ``cluster_vars`` または特定のインスタンスの\ ``vars``
の下の\ ``packages`` にエントリを追加できます。

.. code:: yaml

   cluster_vars:
     packages:
       common:
         - pkg1
         - pkg2
       Debian:
         - debpkg1
       RedHat:
         - rhpkg1
         - rhpkg2
       Ubuntu:
         - ubpkg1
       SLES:
         - slespkg1

この例では、TPAは独自のリストの\ ``default_packages``
、すべてのインスタンスの\ ``packages.common``
の下にリストされているパッケージ、およびインスタンスが実行されているディストリビューションに基づいて、残りのディストリビューション固有パッケージをインストールします。これらのパッケージのいずれかが使用できない場合、展開は失敗します。

Postgresに依存するパッケージをリストしないでください。
:ref:`extra_postgres_packages <Installing Postgres-related packages>` を使用する

代わりに。

オプショナルパッケージ
----------------------

インストールできる\ ``optional_packages``
のリストを指定できます。これらは利用可能な場合はインストールされ、それ以外の場合は無視されます。他の設定と同様に、\ ``common``
エントリはすべてのインスタンスに適用されますが、他のリストは、関連するディストリビューションを実行しているインスタンスにのみ適用されます。

.. code:: yaml

   optional_packages:
     common:
       - pkg1
       - pkg2
     Debian:
       - debpkg4

パッケージの削除
----------------

``unwanted_packages``
がインストールされている場合に削除する\ ``unwanted_packages``
のリストを指定できます。

.. code:: yaml

   unwanted_packages:
     common:
       - badpkg1
     Ubuntu:
       - badpkg2
