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

4.SUSE Rancher Primeをインストールします。

このセクションでは、エアギャップ環境での高可用性KubernetesインストールのためにRancherをデプロイする方法について説明します。エアギャップ環境とは、Rancherサーバーがオフラインで、ファイアウォールの背後またはプロキシの背後にインストールされる場所を指します。

Rancherの特権アクセス

RancherサーバーがDockerコンテナ内にデプロイされると、Rancherが使用するためのローカルKubernetesクラスターがコンテナ内にインストールされます。Rancherの多くの機能はデプロイメントとして実行され、コンテナ内でコンテナを実行するには特権モードが必要なため、`--privileged`オプションを使用してRancherをインストールする必要があります。

Dockerの手順

Dockerコマンドを使用してエアギャップインストールを続行したい場合は、このページの残りをスキップし、xref:[このページの指示に従ってください。]

Kubernetesの手順

RancherはKubernetesクラスターにRancherをインストールすることを推奨しています。高可用性のKubernetesインストールは、Kubernetesクラスター上でRancherサーバーコンポーネントを実行する3つのノードで構成されています。永続層(etcd)もこれらの3つのノードに複製され、ノードの1つが故障した場合に冗長性とデータの重複を提供します。

1.Helmチャートリポジトリを追加する

インターネットにアクセスできるシステムから、最新のHelmチャートを取得し、その結果のマニフェストをRancherサーバークラスターにアクセスできるシステムにコピーします。

  1. まだインストールしていない場合は、インターネットアクセスがあるワークステーションに`helm`をローカルにインストールしてください。注意:RancherをインストールするHelmのバージョンを選択するには、Helmのバージョン要件を参照してください。

  2. `helm repo add`コマンドを使用して、Rancher Primeをインストールするためのチャートを含むHelmチャートリポジトリを追加します。

    helm repo add rancher-prime <helm-chart-repo-url>

    To learn more about the Rancher Prime Helm chart repository URL, see our Prime-only documentation. Authentication is required. Use your SUSE Customer Center (SCC) credentials to log in.

  3. SUSE Rancher Primeチャートを取得します。これにより、チャートがダウンロードされ、現在のディレクトリに`.tgz`ファイルとして保存されます。

    • 最新バージョンを取得するには:

      helm fetch rancher-prime/rancher
    • 特定のバージョンを取得するには:

      1. 利用可能なRancher Primeのバージョンを確認してください。

        helm search repo --versions rancher-prime
      2. 特定のバージョンを取得するには、`--version`パラメータを指定してください。

        helm fetch rancher-prime/rancher --version=<version>

2.SSL設定を選択してください。

Rancher Serverはデフォルトで安全に設計されており、SSL/TLS設定が必要です。

RancherがエアギャップのKubernetesクラスターにインストールされている場合、証明書のソースとして推奨される2つのオプションがあります。

SSL/TLSを外部で終了させたい場合は、外部ロードバランサーでのTLS終了を参照してください。

設定 チャートオプション 説明 cert-managerが必要です。

Rancher生成の自己署名証明書

ingress.tls.source=rancher

Rancherが生成したCA(自己署名)によって発行された証明書を使用します。
これは*デフォルト*であり、Helmテンプレートをレンダリングする際に追加する必要はありません。

yes

ファイルからの証明書

ingress.tls.source=secret

Kubernetes Secretを作成することで、自身の証明書ファイルを使用してください。
このオプションは、Rancher Helmテンプレートをレンダリングする際に渡す必要があります。

no

エアギャップインストール用のHelmチャートオプション

Rancher Helmテンプレートを設定する際、エアギャップインストール専用に設計されたHelmチャートのオプションがいくつかあります。

チャートオプション チャート値 説明

certmanager.version

<version>

実行中のcert-managerのバージョンに応じて、適切なRancher TLS発行者を設定します。

systemDefaultRegistry

<REGISTRY.YOURDOMAIN.COM:PORT>

クラスターをプロビジョニングする際に、Rancherサーバーが常にプライベートレジストリからプルするように設定します。

useBundledSystemChart

true

RancherサーバーがHelmシステムチャートのパッケージ版を使用するように設定します。 システムチャートリポジトリには、監視、ログ記録、アラート、グローバルDNSなどの機能に必要なすべてのカタログアイテムが含まれています。これらの HelmチャートはGitHubにありますが、エアギャップ環境にいるため、Rancherにバンドルされているチャートを使用する方がGitミラーを設定するよりもはるかに簡単です。

3.Cert-Managerチャートを取得する

2で行った選択に基づいて。SSL設定を選択し、以下の手順のいずれかを完了してください。

オプションA:デフォルトの自己署名証明書

デフォルトでは、RancherはCAを生成し、Rancherサーバーインターフェースへのアクセスのためにcert-managerを使用して証明書を発行します。

cert-managerへの最近の変更により、アップグレードが必要です。Rancherをアップグレードしており、cert-managerのバージョンがv0.11.0より古い場合は、cert-managerのアップグレードドキュメントを参照してください。

1.cert-managerリポジトリを追加します。

インターネットに接続されたシステムから、Helmにcert-managerリポジトリを追加します。

helm repo add jetstack https://charts.jetstack.io
helm repo update
2.cert-managerチャートを取得します。

Helmチャートリポジトリから利用可能な最新のcert-managerチャートを取得します。

helm fetch jetstack/cert-manager --version v1.11.0
3.cert-managerのCRDを取得します。

cert-manager用の必要なCRDファイルをダウンロードします。

   curl -L -o cert-manager-crd.yaml https://github.com/cert-manager/cert-manager/releases/download/v1.11.0/cert-manager.crds.yaml

4.Rancher をインストールします。

取得したチャートをRancherサーバークラスターにアクセスできるシステムにコピーして、インストールを完了します。

1.cert-managerをインストールします。

チャートをインストールするために使用するのと同じオプションでcert-managerをインストールします。プライベートレジストリからイメージを取得するために`image.repository`オプションを設定することを忘れないでください。

cert-managerのインストールをカスタマイズする方法についてのオプションを確認するには、 cert-manager docsを参照してください。

クリックして開く。

自己署名証明書を使用している場合は、cert-managerをインストールします:

  1. cert-manager用のネームスペースを作成します。

     kubectl create namespace cert-manager
  2. cert-managerのカスタムリソース定義(CRD)を作成します。

     kubectl apply -f cert-manager-crd.yaml
  3. cert-managerをインストールします。

     helm install cert-manager ./cert-manager-v1.11.0.tgz \
         --namespace cert-manager \
         --set image.repository=<REGISTRY.YOURDOMAIN.COM:PORT>/quay.io/jetstack/cert-manager-controller \
         --set webhook.image.repository=<REGISTRY.YOURDOMAIN.COM:PORT>/quay.io/jetstack/cert-manager-webhook \
         --set cainjector.image.repository=<REGISTRY.YOURDOMAIN.COM:PORT>/quay.io/jetstack/cert-manager-cainjector \
         --set startupapicheck.image.repository=<REGISTRY.YOURDOMAIN.COM:PORT>/quay.io/jetstack/cert-manager-ctl

2.Rancher をインストールします。

まず、TLSシークレットの追加を参照して、Rancherとイングレスコントローラーが使用できるように証明書ファイルを公開します。

次に、kubectlを使用してRancher用のネームスペースを作成します。

kubectl create namespace cattle-system

次に、選択したオプションを宣言してRancherをインストールします。以下の参照表を使用して、各プレースホルダーを置き換えます。Rancherは、Rancherが起動したKubernetesクラスターやRancherツールをプロビジョニングするためにプライベートレジストリを使用するように構成する必要があります。

Placeholder 説明

<VERSION>

出力tarballのバージョン番号。

<RANCHER.YOURDOMAIN.COM>

ロードバランサーにポイントしたDNS名。

<REGISTRY.YOURDOMAIN.COM:PORT>

プライベートレジストリのDNS名です。

<CERTMANAGER_VERSION>

k8sクラスターで実行されているCert-managerのバージョン。

   helm install rancher ./rancher-<VERSION>.tgz \
    --namespace cattle-system \
    --set hostname=<RANCHER.YOURDOMAIN.COM> \
    --set certmanager.version=<CERTMANAGER_VERSION> \
    --set image.registry=<REGISTRY.YOURDOMAIN.COM:PORT> \
    --set systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT> \ # Set a default private registry to be used in Rancher
    --set useBundledSystemChart=true # Use the packaged Rancher system charts

オプション:特定のRancherバージョンをインストールするには、image.tag`の値を設定します。例:--set image.tag=v2.14.1`

オプションB:Kubernetesシークレットを使用したファイルからの証明書

1.シークレットを作成する

Rancherが使用するために、自分の証明書からKubernetesシークレットを作成します。証明書の共通名は、以下のコマンドの`hostname`オプションと一致する必要があります。そうしないと、IngressコントローラーはRancherのサイトをプロビジョニングできません。

2.Rancher をインストールします。

選択したオプションを宣言してRancherをインストールします。以下の参照表を使用して、各プレースホルダーを置き換えます。Rancherは、Rancherが起動したKubernetesクラスターやRancherツールをプロビジョニングするためにプライベートレジストリを使用するように構成する必要があります。

Placeholder 説明

<VERSION>

出力tarballのバージョン番号。

<RANCHER.YOURDOMAIN.COM>

ロードバランサーにポイントしたDNS名。

<REGISTRY.YOURDOMAIN.COM:PORT>

プライベートレジストリのDNS名です。

   helm install rancher ./rancher-<VERSION>.tgz \
    --namespace cattle-system \
    --set hostname=<RANCHER.YOURDOMAIN.COM> \
    --set image.registry=<REGISTRY.YOURDOMAIN.COM:PORT> \
    --set ingress.tls.source=secret \
    --set systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT> \ # Set a default private registry to be used in Rancher
    --set useBundledSystemChart=true # Use the packaged Rancher system charts

プライベートCA署名の証明書を使用している場合は、--set ingress.tls.source=secret`の後に--set privateCA=true`を追加してください:

   helm install rancher ./rancher-<VERSION>.tgz \
    --namespace cattle-system \
    --set hostname=<RANCHER.YOURDOMAIN.COM> \
    --set image.registry=<REGISTRY.YOURDOMAIN.COM:PORT> \
    --set ingress.tls.source=secret \
    --set privateCA=true \
    --set systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT> \ # Set a default private registry to be used in Rancher
    --set useBundledSystemChart=true # Use the packaged Rancher system charts

インストールは完了しました。