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

SUSE Rancher Prime管理クラスターのノード要件

このページでは、アプリやサービスがインストールされるRancher管理Kubernetesクラスターの要件について説明します。これらの下流クラスターは、Rancherを実行している三ノードクラスターとは別である必要があります。

Rancherが高可用性Kubernetesクラスターにインストールされている場合、Rancherサーバーの三ノードクラスターと下流クラスターは異なる要件があります。Rancherのインストール要件については、インストールセクションのノード要件を参照してください。

オペレーティングシステムとコンテナランタイムの要件

Rancherは、最新のLinux配布パッケージおよび最新のDockerバージョンで動作するはずです。すべての下流クラスターのetcdおよびコントロールプレーンノードにはLinuxが必要です。ワーカーノードはLinuxまたはWindows Server.を実行できます。

各RancherバージョンでテストされたOSおよびDockerバージョンの詳細については、 サポート保守条件を参照してください。

すべてのサポートされているオペレーティングシステムは64ビットx86です。

ARM64を使用する予定がある場合は、ARM64での実行(実験的)を参照してください。

Dockerのインストール方法については、公式の Dockerドキュメントを参照してください。

Oracle LinuxおよびRHEL派生Linuxノード

Oracle Linuxを含むRHELから派生した一部のLinuxディストリビューションには、Helmとの通信をブロックするデフォルトのファイアウォールルールがある場合があります。firewalldを無効にすることをお勧めします。Kubernetes 1.19では、firewalldをオフにする必要があります。

RHEL 8.4では、NetworkManagerに2つの追加サービスが含まれています:nm-cloud-setup.service`と`nm-cloud-setup.timer。これらのサービスは、CNIプラグインの構成に干渉するルーティングテーブルを追加します。これらのサービスが有効になっている場合は、以下のコマンドを使用して無効にし、接続を復元するためにノードを再起動する必要があります:

   systemctl disable nm-cloud-setup.service nm-cloud-setup.timer
   reboot

SUSE Linux ノード

SUSE Linux には、デフォルトで全ポートをブロックするファイアウォールがある場合があります。その場合は、これらの手順に従って、カスタムクラスターにホストを追加するために必要なポートを開いてください。

Flatcar Container Linux ノード

Flatcar Container Linux ノードを使用して Rancher で Kubernetes を起動する する際には、クラスター構成ファイルに以下の設定を使用する必要があります。

  • カナル

  • Calico

rancher_kubernetes_engine_config:
  network:
    plugin: canal
    options:
      canal_flex_volume_plugin_dir: /opt/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds
      flannel_backend_type: vxlan

  services:
    kube-controller:
      extra_args:
        flex-volume-plugin-dir: /opt/kubernetes/kubelet-plugins/volume/exec/
rancher_kubernetes_engine_config:
  network:
    plugin: calico
    options:
      calico_flex_volume_plugin_dir: /opt/kubernetes/kubelet-plugins/volume/exec/nodeagent~uds
      flannel_backend_type: vxlan

  services:
    kube-controller:
      extra_args:
        flex-volume-plugin-dir: /opt/kubernetes/kubelet-plugins/volume/exec/

Docker サービスを有効にする必要もあります。以下のコマンドを使用して Docker サービスを有効にできます。

systemctl enable docker.service

Docker サービスは、ノードドライバーを使用する際に自動的に有効になります。

Windowsノード

Windows Server を搭載したノードは、Docker Enterprise Edition を実行する必要があります。

Windows ノードは、ワーカーノードとしてのみ使用できます。Windows 用のカスタムクラスターの構成を参照してください

ハードウェア要件

worker ロールを持つノードのハードウェア要件は、主にワークロードに依存します。Kubernetes ノードコンポーネントを実行するための最小要件は、1 CPU(コア)と1GBのメモリです。

CPU とメモリに関しては、Kubernetes クラスターの異なるプレーン(etcd、コントロールプレーン、ワーカー)は、互いに別々にスケールできるように異なるノードにホストすることをお勧めします。

大規模な Kubernetes クラスターのハードウェア推奨については、 大規模クラスターの構築に関する公式 Kubernetes ドキュメントを参照してください。

本番環境の etcd クラスターのハードウェア推奨については、公式の etcd ドキュメントを参照してください。

ネットワーキング要件

本番クラスターの場合、以下のポート要件で定義されたポートのみを開くことでトラフィックを制限することをお勧めします。

開く必要があるポートは、ユーザークラスターの起動方法によって異なります。以下の各セクションには、異なる クラスター作成オプション に対して開く必要があるポートがリストされています。

etcdノード、コントロールプレーンノード、およびKubernetesクラスター内のワーカーノードのポート要件の詳細については、 Rancher Kubernetes Engineのポート要件を参照してください。

各状況で使用されるポートの詳細は、ダウンストリームクラスターのポート要件の下にあります。

IPv6アドレス要件

Rancherは、IPv4のみ、IPv6のみ、またはデュアルスタックネットワーキングで構成されたクラスターをサポートしています。

クラスターのネットワーキング構成に従って、各ノードには少なくとも1つの有効なIPv4アドレス、1つのIPv6アドレス、またはその両方をプロビジョニングする必要があります。

IPv6専用環境では、オペレーティングシステムを正しく構成し、`/etc/hosts`ファイルに有効なlocalhostエントリが含まれていることを確認してください。例えば:

::1       localhost

同じホスト名またはIPアドレスを持つノードを登録してはいけません。そうすると、RKEがノードの参加を防ぎ、プロビジョニングが停止します。これは、ノードドライバーとカスタムクラスターの両方で発生する可能性があります。ノードが既存のノードのホスト名またはIPを再利用する必要がある場合は、ノードを登録する前に`hostname_override` RKEオプションを設定する必要があります。これにより、そのノードが正しく参加できるようになります。

オプション:セキュリティ上の考慮事項

CIS(インターネットセキュリティセンター)Kubernetesベンチマークに準拠したKubernetesクラスターをプロビジョニングしたい場合は、Kubernetesをインストールする前にノードを構成するためにハードニングガイドに従うことをお勧めします。

ハードニングガイドおよびガイドのどのバージョンがあなたのRancherおよびKubernetesのバージョンに対応しているかの詳細については、セキュリティセクションを参照してください。