Managing clusters in a disconnected or air-gapped environment
=============================================================

インターネットへの直接接続が許可されないセキュリティ制御された環境では、展開を完了するためにTPAが必要とするすべてのパッケージを提供する必要があります。これは、クラスター内の各ノードのローカルリポジトリを介して実行できます。
TPAは、
 :ref:`local-repo <Creating and using a local repository>` を介した各ノードへのカスタムリポジトリの追加をサポートしており、
 :ref:`tpaexec download-packages <tpaexec download-packages>` コマンドを使用して必要なパッケージをダウンロードできます。

準備
----

TPAをインストールできるインターネットに接続されたマシンを選択し、以下の手順に従って、既存のクラスター構成をコピーするか、新しいクラスターを作成します。

..  Note::
  エアギャップサーバーにTPAがまだインストールされていない場合は、 :ref:`TPAをインストールする場所 <TPAをインストールする場所>` の指示に従ってください

それをインストールします。

非接続環境に既存のクラスターがある場合、インターネットに接続されたホストで必要なのはconfig.ymlだけです。ディレクトリを作成してそのファイルをコピーし、そのディレクトリで\ ``tpaexec relink``
を実行して、通常\ ``tpaexec configure``
によって作成される残りのファイルを生成します。

または、ターゲットインスタンスがネットワークにアクセスしない環境用に新しい構成を作成するには、次のオプションを使用して新しいクラスターを構成します。

::

   tpaexec configure --use-local-repo-only …

これにより、 ``--enable-local-repo``
が行うすべてのことが実行され、他のすべてのパッケージリポジトリの構成が無効になります。
RedHatインスタンスでは、これには、サブスクリプションベースのサービスへのアクセスの無効化も含まれます。

既存のクラスターでは、\ ``config.yml`` に\ ``use_local_repo_only: yes``
を設定できます。

.. code:: yaml

   cluster_vars:
       use_local_repo_only: yes

注：インターネットに接続された環境と切断された環境に個別のクラスター構成は必要ないことに注意してください。以下のオプションは両方で機能します。

 :ref:`using local-repo for distributing packages <Creating and using a local repository>` の詳細

パッケージのダウンロード
------------------------

インターネットに接続されたマシンで、 :ref:`docker installed <Docker>` 
があることを確認し、次を実行します。

.. code:: shell

   tpaexec download-packages cluster-dir --os <OS> --os-version <version>

 :ref:`package downloader <Installing packages>` の詳細な説明を参照してください。

パッケージをターゲット環境にコピーする
--------------------------------------

結果のリポジトリは\ ``cluster-dir/local-repo``
ディレクトリに含まれます。これは、ターゲットOSの完全なパッケージリポジトリです。このディレクトリを、接続されたコントローラーから、クラスターのデプロイに使用される切断されたコントローラーにコピーします。
clusterディレクトリの下の同じ場所にディレクトリを配置します。 ``deploy``
が実行されると、TPAはパッケージをインスタンスに自動的にコピーします。

切断された環境での展開
----------------------

クラスター config.yml が :ref:`準備 <準備>` 
で上記のように構成されていることを確認します。通常どおりに
``tpaexec provision`` と ``deploy`` を実行します。

非接続環境での更新
------------------

 :ref:`upgrade <Upgrading your cluster>` コマンドを使用して、エアギャップ環境で更新を実行できます。このコマンドを実行する前に、接続されたコントローラーで\ ``download-packages``
を実行し、更新されたリポジトリを切断されたコントローラーにコピーし、
*そして* ``deploy``
を実行してこれらのパッケージをターゲットインスタンスにコピーする必要があります。
