tpaexec download-packages
=========================

ダウンローダーの目的は、既存の構成からTPAクラスターのフルインストールを行うために必要なパッケージを提供することです。これは、インターネットにアクセスできないセキュリティで保護されたクラスターにパッケージを出荷する場合、またはテストクラスター用にパッケージを繰り返しダウンロードしないようにする場合に役立ちます。

ダウンローダーは、必要なパッケージの完全な依存関係ツリーをダウンロードし、結果のパッケージリポジトリにはターゲット配布パッケージマネージャーのメタデータファイルが含まれるため、クラスターの構築にのみ使用できます。現時点では、パッケージマネージャー
Apt と YUMがサポートされています。

使用法
------

``tpaexec configure``
コマンドを使用して達成できる既存のクラスター構成が存在する必要があります。ダウンローダーを使用するために特定のオプションは必要ありません。
 :ref:`configuring a cluster <Cluster configuration>` を参照

。

download-packagesサブコマンドを実行して、ダウンロードプロセスを開始します。ダウンローダーが使用するOSとOSバージョンを提供します。

.. code:: shell

   tpaexec download-packages cluster-dir --os RedHat --os-version 8

これは、特定のdockerイメージとして表現することもできます。以下の例のようにプレフィックスが付いたtpaイメージのいずれかを使用することを強くお勧めします。

.. code:: shell

   tpaexec download-packages cluster-dir --docker-image tpa/redhat:8

ダウンローダーは、ダウンロードしたファイルをデフォルトで\ ``local-repo``
ディレクトリに配置します。オプション\ ``--download-dir path``
を使用して、別のディレクトリにダウンロードすることができます。

結果の使用
----------

``local-repo``
ディレクトリの内容には、dockerイメージに含まれるOSに従ってansibleによって決定された構造が入力されます。たとえば、dockerイメージ\ ``tpa/redhat:8``
には次のものがあります。

::

   cluster-dir/
   `-- local-repo
       `-- RedHat
           `-- 8
               |-- *.rpm
               `-- repodata
                   `--  *repodata-files* 

これをクラスターでそのまま使用するか、対象の制御ノードにコピーできます。
 :ref:`recommendations for installing to an air-gapped environment <Managing clusters in a disconnected or air-gapped environment>` を参照してください。
 :ref:`local-repo <Creating and using a local repository>` は、TPAによって自動的に検出および使用されます。

失敗したダウンローダーコンテナのクリーンアップ
----------------------------------------------

ダウンロードプロセス中にエラーが発生した場合、コマンドはデバッグに役立つダウンローダーコンテナーを実行したままにします。たとえば、失敗したダウンローダーコンテナにログインして、ログまたはネットワーキングを検査することができます。ダウンローダーコンテナーの名前は、コンテナー名に許可されている制限である64文字を超えない限り、通常
$cluster_name-downloader です。 ``docker ps``
を実行して実行中のコンテナをリストし、クラスター名と一致するコンテナ名を探すことにより、正確な名前を確認できます。ほとんどの場合、
``docker exec -it $cluster_name-downloader /bin/bash``
を実行して、実行中のコンテナにログインできます。検査後、
``--tags cleanup`` で\ ``download-packages``
コマンドを実行して、残ったコンテナーをクリーンアップできます。例：

.. code:: shell

   tpaexec download-packages cluster-dir --docker-image tpa/redhat:8 --tags cleanup
