この文書は自動機械翻訳技術を使用して翻訳されています。 正確な翻訳を提供するように努めておりますが、翻訳された内容の完全性、正確性、信頼性については一切保証いたしません。 相違がある場合は、元の英語版 英語 が優先され、正式なテキストとなります。

SUSE Storageをエアギャップ環境にインストールする

SUSE StorageはHelmチャートを使用してエアギャップ環境でインストールできます。

前提条件

  • Helm v3.0以降が必要です。

  • SUSE Storageコンポーネントのイメージを独自のレジストリにデプロイします。

  • Kubernetes CSIドライバーコンポーネントのイメージを独自のレジストリにデプロイします。

エアギャップ環境のためのイメージ管理

  1. 必要なイメージのリストを取得する
    スクリプトを実行して、SUSE Storageに必要なすべてのイメージの完全なリストをダウンロードします。スクリプトはイメージのリストを含む`longhorn-images.txt`ファイルを生成します。

    このスクリプトは、必要なイメージリストを抽出するために、SUSE Application Collection OCIレジストリからSUSE Storageチャートを取得します。Helmはレジストリにアクセスするための認証情報で構成する必要があります。セットアップ手順については、 Helm認証ドキュメントを参照してください。

  2. イメージをプルして保存するSUSE Storage
    SUSE Storageは、 save-images.shスクリプトを提供して、`longhorn-images.txt`ファイルにリストされたイメージを迅速にプルします。

    このスクリプトを実行するには、SUSE Application Collection OCIレジストリにアクセスしてコンテナイメージをプルするためのDocker認証が必要です。Dockerクライアントが正しく認証されていることを確認してください。セットアップ手順については、 Docker認証ドキュメントを参照してください。

    Longhornイメージを`tar.gz`ファイル(例:longhorn-images.tar.gz)にプルして保存するには、次のコマンドを実行します:

    wget https://raw.githubusercontent.com/longhorn/longhorn/v1.11.2/scripts/save-images.sh
    chmod +x save-images.sh
    ./save-images.sh --image-list longhorn-images.txt --images longhorn-images.tar.gz

    次に、生成された`longhorn-images.tar.gz`ファイルをエアギャップ環境にコピーします。`--images`フラグを使用してファイル名を指定しない場合、スクリプトはイメージをローカルのDockerイメージキャッシュにのみプルし、ファイルに保存しません。

  3. プライベートレジストリにSUSE Storageのイメージをロードしてプッシュします
    SUSE Storageは、イメージをプライベートコンテナレジストリにプッシュするための別のスクリプト、 load-images.shスクリプトを提供します。tar.gz`ファイル(例えば、`longhorn-images.tar.gz)からイメージをロードし、それらをレジストリにプッシュするには、次のコマンドを実行してください。`<YOUR-PRIVATE-REGISTRY>`をプライベートレジストリの実際のアドレスに置き換えてください。

    wget https://raw.githubusercontent.com/longhorn/longhorn/v1.11.2/scripts/load-images.sh
    chmod +x load-images.sh
    ./load-images.sh --image-list longhorn-images.txt --images longhorn-images.tar.gz --registry <YOUR-PRIVATE-REGISTRY>

    `--images`フラグを使用して`tar.gz`ファイルを指定しない場合、スクリプトはローカルのDockerキャッシュ内のイメージを見つけて、それらをレジストリにプッシュします。

Helmチャートによるインストール

  1. SUSE Storageチャートを取得します
    SUSE Storageチャートを取得し、ダウンロードしたtarアーカイブを解凍します:

    helm pull longhorn oci://dp.apps.rancher.io/charts/suse-storage:1.11.2
    tar -zxf suse-storage-1.11.2.tgz
    cd suse-storage
  2. `values.yaml`でイメージ設定を構成します
    クローン後、選択した方法に基づいて`values.yaml`ファイル内でイメージ設定を構成します:

    メソッド 環境設定の詳細

    デフォルトのイメージ名を使用する

    values.yaml`で`Private registry URL`を指定してください。レジストリが認証を必要とする場合、`Private registry userPrivate registry password、および`Private registry secret`も指定してください。SUSE Storageは、その情報を使用して秘密を自動的に生成し、プライベートレジストリからイメージをプルします。

    privateRegistry:
      # -- Setting that allows you to create a private registry secret.
      createSecret: true
      # -- URL of a private registry. When unspecified, Longhorn uses the default system registry.
      registryUrl: <REGISTRY_URL>
      # -- User account used for authenticating with a private registry.
      registryUser: <REGISTRY_USER>
      # -- Password for authenticating with a private registry.
      registryPasswd: <REGISTRY_PASSWORD>
      # -- Kubernetes secret that allows you to pull images from a private registry. This setting applies only when creation of private registry secrets is enabled. You must include the private registry name in the secret name.
      registrySecret: <REGISTRY_SECRET_NAME>

    カスタムイメージ名を使用する

    `values.yaml`で各コンポーネントのイメージ設定を構成します。

    プライベートレジストリのプレフィックス(例えば、example.com/username/)を含めないでください。自動的に追加されます。イメージが`example.com/username/longhorn-manager`の場合、次のチャートで`username/longhorn-manager`を使用してください。

    各SUSE Storageコンポーネントイメージの`repository`と`tag`を指定してください:

      image:
        longhorn:
          engine:
            repository: <USERNAME>/longhorn-engine
            tag: <LONGHORN_ENGINE_IMAGE_TAG>
          manager:
            repository: <USERNAME>/longhorn-manager
            tag: <LONGHORN_MANAGER_IMAGE_TAG>
          ui:
            repository: <USERNAME>/longhorn-ui
            tag: <LONGHORN_UI_IMAGE_TAG>
          instanceManager:
            repository: <USERNAME>/longhorn-instance-manager
            tag: <LONGHORN_INSTANCE_MANAGER_IMAGE_TAG>
          shareManager:
            repository: <USERNAME>/longhorn-share-manager
            tag: <LONGHORN_SHARE_MANAGER_IMAGE_TAG>

    CSIドライバーコンポーネントイメージの`repository`と`tag`を指定してください:

        csi:
          attacher:
            repository: <USERNAME>/csi-attacher
            tag: <CSI_ATTACHER_IMAGE_TAG>
          provisioner:
            repository: <USERNAME>/csi-provisioner
            tag: <CSI_PROVISIONER_IMAGE_TAG>
          nodeDriverRegistrar:
            repository: <USERNAME>/csi-node-driver-registrar
            tag: <CSI_NODE_DRIVER_REGISTRAR_IMAGE_TAG>
          resizer:
            repository: <USERNAME>/csi-resizer
            tag: <CSI_RESIZER_IMAGE_TAG>
          snapshotter:
            repository: <USERNAME>/csi-snapshotter
            tag: <CSI_SNAPSHOTTER_IMAGE_TAG>

    最後に、Private registry URL`を指定してください。レジストリが認証を必要とする場合は、`Private registry userPrivate registry password、および`Private registry secret`を指定してください。SUSE Storageはその情報を使用して秘密を自動的に生成し、プライベートレジストリからイメージをプルします。

    privateRegistry:
      # -- Setting that allows you to create a private registry secret.
      createSecret: true
      # -- URL of a private registry. When unspecified, Longhorn uses the default system registry.
      registryUrl: <REGISTRY_URL>
      # -- User account used for authenticating with a private registry.
      registryUser: <REGISTRY_USER>
      # -- Password for authenticating with a private registry.
      registryPasswd: <REGISTRY_PASSWORD>
      # -- Kubernetes secret that allows you to pull images from a private registry. This setting applies only when creation of private registry secrets is enabled. You must include the private registry name in the secret name.
      registrySecret: <REGISTRY_SECRET_NAME>
  3. インストール SUSE Storage
    クローンしたディレクトリで次のコマンドを実行して SUSE Storage をインストールします:

    helm install longhorn --namespace longhorn-system --create-namespace ./