このページの内容
Paragon Automationのシステム要件
Paragon Automationソフトウェアをインストールする前に、システムがこれらのセクションで説明する要件を満たしていることを確認してください。
Paragon Automationの実装に必要なリソースを決定するには、Paragon Automationの基盤となるインフラストラクチャの基本を理解している必要があります。
Paragon Automationは、APIを介して相互に対話し、Kubernetesクラスター内のコンテナ内で実行されるマイクロサービスの集合体です。Kubernetesクラスターは、コンテナ化されたアプリケーションを実行するノードまたはマシンのセットです。各ノードは、物理(ベアメタルサーバー)または仮想マシン(仮想マシン)のいずれかの単一のマシンです。
クラスター内のノードは、インストールされているKubernetesコンポーネントに応じて、異なるロールまたは機能を実装します。インストール中に、各ノードが持つロールを指定すると、インストールプレイブックはそれに応じて各ノードに対応するコンポーネントをインストールします。
-
コントロールプレーン(プライマリ)ノード—クラスターの状態を監視し、ワーカーノードを管理し、アプリケーションワークロードをスケジュールし、ワークロードのライフサイクルを管理します。
-
コンピュート(ワーカー)ノード—コントロールプレーンノードが割り当てるタスクを実行し、アプリケーションワークロードを実行するポッドとコンテナをホストします。各ワーカーノードは、コンテナのコレクションである1つ以上のポッドをホストします。
-
ストレージノード—クラスター内のオブジェクト、ブロック、ファイルのストレージを提供します。Paragon Automation では、Ceph はクラスターにストレージサービスを提供します。ストレージノードはワーカーノードに存在する必要がありますが、すべてのワーカーノードがストレージを提供する必要はありません。
プライマリ、ワーカー、ストレージノードの最小設定の詳細については、 Paragon Automationの実装 と ハードウェア要件をご覧ください。
Kubernetesクラスターは、複数のプライマリノードとワーカーノードで構成されています。両方のロールに必要なコンポーネントが同じノードにインストールされている場合、単一のノードはプライマリとワーカーの両方として機能できます。
以下のクラスターパラメーターを決定するには、意図するシステムの容量(デバイス、LSPの数など)、必要な可用性レベル、予想されるシステムのパフォーマンスを考慮する必要があります。
- クラスター内のノード(仮想または物理)の合計数
- 各ノードのリソース量(CPU、メモリ、ディスク領域)
- プライマリ、ワーカー、ストレージノードとして機能するノード数
Paragon Automationの実装
Paragon Automationは、1つ以上のプライマリノードと1つ以上のワーカーノードで構成されるKubernetesクラスターの上に実装されます。機能するクラスターには、少なくとも 1 つのプライマリノードと 1 つのワーカーノードが必要です。Paragon Automationは、マルチノードクラスターとして実装されます。
マルチノード実装は、VM または BMS の複数のノードで構成され、少なくとも 1 つのノードがプライマリとして機能し、少なくとも 3 つのノードがワーカーとして機能し、ストレージを提供します。この実装により、パフォーマンスが向上するだけでなく、クラスター内の高可用性が可能になります。
-
コントロールプレーンの高可用性—コントロールプレーンの冗長性を確保するために、少なくとも3つのプライマリノードが必要です。プライマリ ノードの総数は奇数である必要があり、プライマリ ノードは 3 つ以上はお勧めしません。
-
ワークロードの高可用性—ワークロードの高可用性とワークロードパフォーマンスのためには、複数のワーカーが必要です。必要に応じて、クラスターにワーカーを追加できます。
-
ストレージの高可用性—ストレージの高可用性を実現するには、Ceph ストレージ用に少なくとも 3 つのノードが必要です。プライマリーノードのいずれかで Ceph ストレージを提供する場合は、インストール中に
Master Schedulingを有効にする必要があります。マスター スケジューリングを有効にすると、プライマリもワーカーとして機能できるようになります。図 3 の例に示すように、さまざまな方法で冗長性を提供するセットアップを実装できます。
図3:マルチノード冗長セットアップ
注:Paragon Automation実稼働デプロイメントの場合、
Master Scheduling有効になっている場合は少なくとも 3 つのプライマリーノード (マルチプライマリノード設定) と少なくとも 1 つのワーカーノードを備えた完全冗長セットアップを、無効になっている場合は少なくとも 3 つのプライマリーノードと 3 つのワーカーノードMaster SchedulingCeph ストレージを提供することを推奨します。インストールプロセス中にMaster Schedulingを有効にする必要があります。
ハードウェア要件
このセクションでは、Ansible制御ホストノードと、Paragon Automationクラスターのプライマリノードとワーカーノードに必要な最小限のハードウェアリソースを示しています。
Ansible制御ホストノードのコンピューティング、メモリ、ディスクの要件は、システムの意図された容量に依存しません。以下の表は、Ansible制御ホストノードの要件を示しています。
| ノード |
最小ハードウェア要件 |
ストレージ要件 |
役割 |
|---|---|---|---|
| Ansible制御ホスト |
2–4コアCPU, 12GB RAM, 100GB HDD |
ディスクパーティションや追加のディスク容量は必要ありません |
Ansibleオペレーションを実行して、クラスターをインストールします。 |
対照的に、クラスター ノードのコンピューティング、メモリ、およびディスクの要件は、システムの意図された容量によって大きく異なります。意図された容量は、監視するデバイスの数、センサーのタイプ、テレメトリメッセージの頻度、プレイブックとルールの数によって異なります。デバイスグループ、デバイス、またはプレイブックの数を増やすと、より多くのCPU容量とメモリ容量が必要になります。
以下の表は、マルチノードクラスターのインストールを正常に行うために必要な最小限のノードあたりのハードウェアリソースをまとめたものです。
| ノード |
最小ハードウェア要件 |
ストレージ要件 |
役割 |
|---|---|---|---|
| プライマリノードまたはワーカーノード |
32 コア CPU、32 GB RAM、200 GB SSD ストレージ (Ceph ストレージを含む) ディスクの最小 1000 IOPS |
クラスターには、少なくとも3つのストレージノードを含める必要があります。各ノードには、Ceph ストレージ用に、フォーマットされていないディスクパーティションまたは個別のフォーマットされていないディスクがあり、少なくとも 30 GB のスペースが必要です。 ディスク要件を参照してください。 |
Kubernetesプライマリノードまたはワーカーノード |
SSDはベアメタルサーバーに必須です。
Paragon Automationは、デフォルトでDockerレジストリを生成し、各プライマリノードの /var/lib/registry ディレクトリに内部的に保存します。
ここでは、最大2つのデバイスグループをサポートする小規模な導入の 最小 要件のみを示しました。このような導入では、各デバイスグループは、すべてのParagon Automationコンポーネントにわたる2つのデバイスと2〜3つのプレイブックで構成されます。デバイスとデバイスグループについては、 Paragon Automationユーザーガイドを参照してください。
本番環境の規模と規模の見積もり、詳細な寸法要件の検討については、ジュニパーパートナーまたはジュニパー営業担当者にお問い合わせください。
ソフトウェア要件
-
すべてのノードに、Ubuntu バージョン 20.04.4 LTS (Focal Fossa) または Ubuntu 22.04.2 LTS (Jammy Jellyfish)、または RHEL バージョン 8.4 または RHEL バージョン 8.10 のベース OS をインストールする必要があります。Paragon Automation は、RHEL 8.8 での実験的サポートも提供しています。すべてのノードで、同じOS(UbuntuまたはRHEL)バージョンのLinuxを実行する必要があります。
注:RHEL バージョン 8.10 を使用している場合は、以下の RPM バンドルを削除する必要があります。
rpm -e buildah cockpit-podman podman-catatonit podman
-
Ansible制御ホストにDockerをインストールする必要があります。制御ホストは、インストールパッケージがダウンロードされ、Ansibleインストールプレイブックが実行される場所です。詳細は、 Ubuntu のインストールの前提条件 または Red Hat Enterprise Linux のインストールの前提条件 を参照してください。
Docker CE を使用している場合は、バージョン 18.09 以降をお勧めします。
Docker EE を使用している場合は、バージョン 18.03.1-ee-1 以降をお勧めします。また、Docker EEを使用するには、制御ホストに加えて、プライマリノードとワーカーノードとして機能するすべてのクラスターノードにDocker EEをインストールする必要があります。
Dockerでは、Ansible(バージョン2.9.5)にパッケージ化されたParagon Automationインストーラーファイルと、クラスターのインストールに必要なロールとプレイブックを実行できます。
正しいバージョンがない場合、インストールは失敗します。これらのバージョンを検証するためのコマンドについては、このガイドの以降のセクションで説明しました。
ディスク要件
次のディスク要件は、シングルノードとマルチノードの両方の展開において、プライマリ ノードとワーカー ノードに適用されます。
- ディスクはSSDである必要があります。
- 必要なパーティション:
-
ルートパーティション:
ルートパーティションを /にマウントする必要があります。
少なくとも200GBのスペースを持つ単一のルートパーティションを作成できます。
または、少なくとも 50 GB の領域を持つルートパーティションと、少なくとも 150 GB の領域を持つデータパーティションを作成することもできます。また、システムディレクトリ「/var/local」、「/var/lib/rancher」、「/var/lib/registry」もバインドマウントする必要があります。例えば:
# mkdir -p /export/rancher /var/lib/rancher /export/registry /var/lib/registry /export/local /var/local # vi /etc/fstab [...] /export/rancher /var/lib/rancher none bind 0 0 /export/registry /var/lib/registry none bind 0 0 /export/local /var/local none bind 0 0 [...] # mount -a
Postgres、ZooKeeper、Kafka、および Elasticsearch には 、/export にマウントされたデータパーティションを使用します。Paragon Insights Influxdbには 、/var/local にマウントされたデータパーティションを使用します。
-
Cephパーティション:
Ceph ストレージのフォーマットされていないパーティションには、少なくとも 30 GB のスペースが必要です。
注:このパーティションを使用する代わりに、Ceph ストレージ用に少なくとも 30 GB のスペースを持つ別の未フォーマットディスクを使用できます。
-
ネットワーク要件
- すべてのノードは、常にNTPまたはその他の時刻同期を実行する必要があります。
- SSHサーバーは、すべてのノードで実行されている必要があります。すべてのノードに共通のSSHユーザー名とパスワードが必要です。
- すべてのノードでDNSを設定し、すべてのノード(Ansible制御ホストノードを含む)が同期していることを確認する必要があります。
- すべてのノードにはインターネット接続が必要です。クラスターノードがインターネットに接続されていない場合は、エアギャップ方式を使用してインストールできます。エアギャップ方式は、ベースOSとしてUbuntuとRHELを持つノードでサポートされています。
-
ノード間のクラスタ間通信を許可する必要があります。特に、「 ファイアウォールが許可する必要があるポート 」に記載されているポートは、通信用に開いた状態にしておく必要があります。これらのポートのいずれかをブロックしている可能性のあるサーバー上のiptablesエントリがないか確認してください。
表3:ファイアウォールが許可する必要があるポート ポート番号の 目的 管理ユーザーアクセス用に、すべてのクラスターノードでこれらのポートを有効にします。 80 HTTP(TCP) 443 HTTPS(TCP) 7000 Paragon Planner通信(TCP) ネットワーク要素との通信のために、すべてのクラスターノードでこれらのポートを有効にします。 67 ztpservicedhcp(UDP) 161 SNMP、テテレメトリコレクション(UDP)用 162 ingest-snmp-proxy-udp(UDP) 11111 hb-proxy-syslog-udp(UDP) 4000 ingest-jti-native-proxy-udp(UDP) 830 NETCONF通信(TCP) 7804 NETCONFコールバック(TCP) 4189 PCEPサーバー(TCP) 30000-32767 Kubernetesポート割り当て範囲(TCP) すべてのポートでクラスターノード間の通信を有効にします。少なくとも、以下のポートは開いてください。 6443 クラスター内のワーカーノードとの通信(TCP) 3300 ceph(TCP) 6789 ceph(TCP) 6800-7300 ceph(TCP) 6666 calico etcd(TCP) 2379 etcd クライアントリクエスト(TCP) 2380 etcd ピア通信(TCP) 9080 cephcsi(TCP) 9081 cephcsi(TCP) 7472 metallb(TCP) 7964 metallb(TCP) 179 calico(TCP) 10250-10256 Kubernetes API通信(TCP) 制御ホストとクラスターノードの間でこのポートを有効にします。 22 TCP 9345 Kubernetes RKE2コントロールプレーン(TCP)
Webブラウザーの要件
表4は、Paragon Automationをサポートする64ビットWebブラウザーの一覧です。
| ブラウザー |
サポートされているバージョン |
サポートされているOSバージョン |
|---|---|---|
| クロム |
85以降 |
Windows 10の場合 |
| Firefox |
79以降 |
Windows 10の場合 |
| サファリ |
14.0.3 |
MacOS 10.15以降 |
VMへのインストール
Paragon Automationは仮想マシン(VM)にインストールできます。VM は任意のハイパーバイザーで作成できますが、このトピックで説明されているサイズ、ソフトウェア、およびネットワークの要件をすべて満たしている必要があります。
VM には、推奨されるベース OS がインストールされている必要があります。VM とベアメタル サーバーのインストール プロセスは同じです。