Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

外部 Docker レジストリの構成

概要 このトピックでは、Paragon Automationで外部レジストリを設定する方法について説明します。

外部ノードで Docker レジストリを構成できます。また、Paragon Automationで生成されたレジストリの代わりに、カスタムの外部ユーザーレジストリを使用することもできます。以前のリリースでは、Paragon Automationは各クラスタノードにDockerレジストリを生成し、Cephストレージに保存していました。そのため、Docker イメージはクラスター内でローカルに使用できました。ノードまたはポッドに障害が発生し、クラスターを再デプロイする必要がある場合、Cephストレージが読み取り不能であったため、レジストリからDockerイメージを回復できませんでした。現在のリリースでは、レジストリは外部ノードに格納できるため、ノードやポッドに障害が発生した場合でもアクセスできます。

次のレジストリオプションを使用するようにParagon Automationを設定できます。

インベントリー・ファイルとconfig.yml・ファイル (およびその結果、inv および conf コマンド・プロンプト) は、外部レジストリーおよび外部ノード上のレジストリーの構成に対応するように編集されます。

既存の外部ユーザー・レジストリーを構成する

既存の一元化されたコンテナレジストリがあり、Paragon Automationクラスタに既存のユーザーレジストリを使用する場合は、この手順を使用します。Paragon Automationは、安全なレジストリと安全でないレジストリの両方をサポートしており、レジストリにログインするためのユーザー名とパスワードを設定することもできます。単一のリモート レジストリ サーバー アドレス (IP アドレス、VIP、または負荷分散された DNS 名) を構成できます。レジストリ アドレスは、config.yml ファイルに <registry server>:<port number> 形式で保存されます。

Paragon Automation を使用して既存の外部ユーザー・レジストリーを構成するには、以下のステップを実行する必要があります。

  1. 必要に応じて、conf コマンドを使用して config.yml ファイルを設定できます。y を入力して、外部ユーザー・レジストリーを構成します。

    以下のサンプル config.yml ・ファイルは、外部ユーザー・レジストリーの構成用に新しく追加されたフィールドを示しています。このサンプルでは、外部レジストリのサーバー IP アドレスとして 10.10.10.10 を考慮します。

    手記:

    外部レジストリ ポート番号は、既定では 5000 です。ポート番号は必要に応じて編集できます。

  2. (オプション)config.ymlファイルを手動で編集することも、さらにカスタマイズすることもできます。
    手記:

    既存の外部ユーザー・レジストリーを構成する際に、 インベントリー ・ファイルを編集する必要はありません。

外部ノードで1つのParagon Automationレジストリを設定します

この手順は、冗長性なしで外部ノードにParagon Automationレジストリを 1つだけ インストールする場合に使用します。Ansibleコントロールホストをレジストリノードとして使用することもできます。

  1. レジストリ ノードの IP アドレスまたはホスト名、およびノードへの接続に必要なユーザ名と認証情報を使用してインベントリ ファイルをカスタマイズします。invコマンドを使用してインベントリ ファイルを更新するか、ファイルを手動で編集することができます。
    • invコマンドを使用して、インベントリ ファイルを更新します。以下のサンプル・インベントリーは、外部レジストリーの構成用に新しく追加されたフィールドを示しています。このサンプルでは、外部ノードの IP アドレスとして 10.10.10.11 を考慮します。

    • または、 インベントリ ファイルを手動で編集します。例えば:

  2. conf コマンドを使用して、config.yml ファイルを設定します。以下のサンプルconfig.yml・ファイルは、外部レジストリーの構成用に新しく追加されたフィールドを示しています。このサンプルでは、外部ノードの IP アドレスとして 10.10.10.11 を考慮します。
    手記:

    外部レジストリ ポート番号は、既定では 5000 です。ポート番号は必要に応じて編集できます。TLS を有効にし、config.yml ファイルで user_registry_notls: false を設定すると、config.yml ファイルで外部レジストリ ポート番号が自動的に 443 に設定されます。

  3. (オプション)config.ymlファイルを手動で編集することも、さらにカスタマイズすることもできます。

複数の外部ノードで冗長なParagon Automationレジストリを設定する

複数の外部ノードに冗長 Paragon Automation レジストリ ノードをインストールする場合は、この手順を使用します。Paragon Automationでは、1つ以上の専用レジストリノードを導入できます。Ansibleコントロールホストをレジストリノードとして使用することもできます。各専用レジストリ ノードには、少なくとも 1 つのレジストリが必要です。

複数の外部レジストリー・ノードがある場合、仮想 IP (VIP) アドレスを使用して接続できるように、すべてのレジストリー・ノードが同じサブネット内にある必要があります。レジストリ アドレスは、config.yml ファイルに <vrrp vip>:<port number> 形式で保存されます。

複数の外部ノードで冗長 Paragon Automation レジストリを構成するには、次の手順を実行する必要があります。

  1. レジストリー・ノードの IP アドレスまたはホスト名、およびノードへの接続に必要なユーザー名と認証情報を使用してインベントリー・ファイルをカスタマイズします。invコマンドを使用して在庫ファイルを更新するか、ファイルを手動で編集することができます。
    • invコマンドを使用して、インベントリ ファイルを更新します。以下のサンプル・インベントリーは、外部レジストリーの構成用に新しく追加されたフィールドを示しています。このサンプルでは、外部ノードの IP アドレスとして 10.10.10.12 と 10.10.10.13 を考慮します。

    • または、インベントリ ファイルを手動で編集します。例えば:

  2. conf コマンドを使用して、config.yml ファイルを設定します。以下のサンプルconfig.yml・ファイルは、外部レジストリーの構成用に新しく追加されたフィールドを示しています。このサンプルでは、外部ノードの IP アドレスとして 10.10.10.12 と 10.10.10.13 を、外部レジストリ ノードの VIP として 10.10.10.100 を考慮します。
    手記:

    外部レジストリ ポート番号は、既定では 5000 です。ポート番号は必要に応じて編集できます。TLS を有効にし、config.yml ファイルで user_registry_notls: false を設定すると、config.yml ファイルで外部レジストリ ポート番号が自動的に 443 に設定されます。

  3. (オプション)config.ymlファイルを手動で編集することも、さらにカスタマイズすることもできます。

Docker レジストリの移行

レジストリを内部レジストリから外部レジストリに移行できます。

  1. Paragon Automationクラスタをリリース22.1から23.1にアップグレードします。
  2. 外部レジストリ情報を追加してインベントリ ファイルを更新します。
  3. 在庫ファイルに従って、それに応じてconfig.ymlを更新します。
  4. migrate option.を使用してdeployコマンドを再実行します
    ./run -c config-dir deploy -e migrate_registry=1