Managing clusters in a disconnected or air-gapped environment#

インターネットへの直接接続が許可されないセキュリティ制御された環境では、TPAが必要とするすべてのパッケージを提供して、クラスターの各ノードでの展開を完了する必要があります。これらのパッケージは、選択した方法を使用して提供できます。たとえば、各ノードで事前構成された共有ネットワークリポジトリまたはローカルリポジトリを介して。

Creating and using a local repository で説明しているように、TPAが提供するローカルリポジトリのアプローチを使用することもできます。このアプローチを使用する場合、TPAのローカルリポジトリに、各ノードの展開中に必要なパッケージがすべてあることを確認する必要があります。

ローカルリポジトリのアプローチを使用する際にこの要件を支援するために、TPAは tpaexec download-packages コマンドを提供します。このコマンドは、local-repoアプローチを使用して作成されたローカルリポジトリにデータを入力できます。このコマンドを使用して、展開が成功するために必要なすべてのパッケージを確実にダウンロードします。

準備#

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

注釈

TPAがエアギャップサーバーにまだインストールされていない場合、 these instructions に従ってください

インストールします。

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

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

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

このコマンドは、 --enable-local-repo が行うことをすべて行い、他のすべてのパッケージリポジトリの構成を無効にします。 RedHatインスタンスでは、サブスクリプションベースのサービスへのアクセスも無効にします。

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

cluster_vars:
    use_local_repo_only: yes

インターネットに接続された環境と切断された環境に個別のクラスター構成は必要ありません。以下のオプションは両方で機能します。

詳細については、 Creating and using a local repository を参照してください。

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

docker installed を使用してインターネットに接続されたマシンで、次を実行します。

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

package downloader の詳細な説明を参照してください。

ターゲット環境へのパッケージのコピー#

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

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

クラスター config.yml が 準備 の説明に従って構成されていることを確認します。通常どおりにtpaexec provision およびdeploy を実行します。

切断された環境での更新#

メジャーバージョンのPostgresのアップグレード コマンドを使用して、エアギャップ環境で更新を実行できます。このコマンドを実行する前に、接続されたコントローラでdownload-packages を実行し、更新されたリポジトリを切断されたコントローラにコピーする必要があります。