Red Hat Enterprise Linux への Multinode クラスタのインストール
Red Hat Enterprise Linux(RHEL)ホストOSを搭載したマルチノードクラスターにParagon Automationをインストールする方法については、以下のトピックを参照してください。 図1 は、インストールタスクの概要を高レベルで示しています。インストールを開始する前に、 Red Hat Enterprise Linux でのインストールの前提条件 に関する事前構成と準備の手順を完了していることを確認してください。

Web ブラウザで高解像度の画像を表示するには、その画像を右クリックして新しいタブで開きます。PDF形式で画像を表示するには、ズームインオプションを使用します。
Paragonオートメーションソフトウェアをダウンロードする
前提 条件
-
Paragon Automationソフトウェアをダウンロードするには、ジュニパーのアカウントが必要です。
- 制御ホストにログインします。
- ソフトウェアをダウンロードするディレクトリを作成します。
このディレクトリは、このガイドと呼 pa-download-dir んでいます。
- https://support.juniper.net/support/downloads/?p=pa のParagon Automationソフトウェアダウンロードページのバージョンリストからバージョン番号を選択します。
- コマンドを使用して、Paragon Automationセットアップのインストールファイルをダウンロードフォルダに
wget "http://cdn.juniper.net/software/file-download-url"
ダウンロードします。Paragon Automationのセットアップインストールバンドルは、各コンポーネントモジュールをインストールするための以下のスクリプトとTARファイルで構成されています。
-
davinci.tar.gz(プライマリインストーラファイル)です。
-
Infra.tar:Docker や Helm などの Kubernetes インフラストラクチャ コンポーネントをインストールします。
-
ems.tar:ベース プラットフォーム コンポーネントをインストールします。
-
northstar.tar:Paragon PathfinderとParagon Plannerのコンポーネントをインストールします。
-
healthbot.tar:Paragon Insightsコンポーネントをインストールします。
-
paragon_ui.tar:Paragon Automation UIコンポーネントをインストールします。
-
addons.tar:Kubernetes ベースのインストールに含まれていないインフラストラクチャ コンポーネントをインストールします。インフラストラクチャコンポーネントには、IAM、Kafka、ZooKeeper、cert-manager、Ambassador、Postgres、Metrics、Kubernetesダッシュボード、Elasticsearch用Open Distro、Fluentd、Reloader、ArangoDB、Argoなどがあります。
-
rhel-84-airgap.tar.gz:ベースOSがRed Hat Enterprise Linux(RHEL)のノード にのみ 、air-gap方式でParagon Automationをインストールします。
-
run
これはインストーライメージを実行するスクリプトです。
メモ:Paragon Automationのセットアップインストールバンドルは 、フォグホーン.tar ファイルで構成されています。ただし、フォグホーンはリリース 22.1 ではサポートされていません。
ソフトウェアをダウンロードしたら、Paragon Automationをインストールする準備が完了しました。
-
マルチノードクラスターへのParagon Automationのインストール
- ディレクトリでスクリプトの
run
実行可能ファイルをpa-download-dir作成します。# chmod +x run
- スクリプトを
run
使用して、設定テンプレートファイルで設定ディレクトリを作成および初期化します。# ./run -c config-dir init
config-dir は、特定のインストールに関する設定情報を含む、制御ホスト上のユーザー定義ディレクトリです。コマンドが存在しない場合は
init
、そのディレクトリを自動的に作成します。または、 コマンドを実行する前にディレクトリをinit
作成することもできます。コマンドにドットとスラッシュ(./)を
run
含める必要があります。同じコントロールホストを使用してParagon Automationの複数のインストールを管理する場合、異なる名前の設定ディレクトリを使用することでインストールを区別できます。
- 制御ホストがインストールユーザーアカウントを使用してSSHを介してクラスターノードに接続できることを確認します。
SSHクライアント認証の設定で生成したプライベートキーをユーザー定義のconfig-dirディレクトリにコピーします。インストーラーにより、Docker コンテナーからconfig-dirこのディレクトリーにアクセスできるようになります。SSHキーは、制御ホストがクラスタノードに接続するためのディレクトリで利用できる必要があります。
# cd config-dir # cp ~/.ssh/id_rsa . # cd ..
コピー コマンド()の末尾に点(
cp
.)を含める必要があります。 - クラスタノードのIPアドレスまたはホスト名、およびノードへの接続に必要なユーザー名と認証情報を含む、ディレクトリにあるインベントリファイル config-dir をカスタマイズします。インベントリファイルはYAML形式で、Paragon Automationがインストールされるクラスタノードについて説明します。ファイルの編集には、
inv
コマンドやviなどのLinuxテキストエディタを使用できます。-
次のコマンドを使用してインベントリ ファイルを
inv
カスタマイズします。# ./run -c config-dir inv
次の表に、コマンドで
inv
入力を求める設定オプションを示します。表 1: invコマンド オプション inv コマンド プロンプトの 説明 Kubernetes マスター ノード Kubernetes プライマリ ノードの IP アドレスを入力します。 Kubernetes ワーカー ノード Kubernetes ワーカー ノードの IP アドレスを入力します。 ローカル ストレージ ノード アプリケーションで使用可能なディスク領域を持つノードを定義します。ローカル ストレージ ノードには、プライマリ ノードとワーカー ノードの IP アドレスが事前設定されています。これらのアドレスを編集できます。ローカル・ストレージを必要とするアプリケーションを実行するノードの IP アドレスを入力します。
Postgres、ZooKeeper、Kafkaなどのサービスでは、 エクスポート/ローカルボリューム内でパーティション化されたローカルストレージまたはディスク容量を使用します。デフォルトでは、ワーカー ノードはローカル ストレージを使用できます。ここにプライマリノードを追加しない場合、プライマリノードにローカルストレージを必要としないアプリケーションのみを実行できます。
メモ:ローカルストレージはCephストレージとは異なります。
Kubernetes ノードのユーザー名(root など) ユーザーアカウントと認証方法を設定して、クラスタノードでインストーラを認証します。ユーザーアカウントは、rootである必要があります。または、非ルートユーザーの場合、そのアカウントにはスーパーユーザー(ユーザーsudo)権限が必要です。 SSHプライベートキーファイル(オプション) 認証を選択した
ssh-key
場合、制御ホストがインストールプロセス中にノードで認証されるようにするには、ansible_ssh_private_key_fileが配置されているディレクトリ(config-dir)とid_rsaファイルを「」{{ config-dir }}/id_rsa
に設定します。Kubernetes ノードのパスワード(オプション) インストールプロセスでノードで認証するために制御ホストのパスワード認証を選択した場合は、認証パスワードを直接入力します。警告:パスワードはプレーンテキストで書かれています。
認証にこのオプションを使用することはお勧 めしません 。
Kubernetes クラスタ名(オプション) Kubernetes クラスタの名前を入力します。 インベントリ ファイルを書く をクリック
Yes
してインベントリ情報を保存します。例えば:
$ ./run -c config-dir inv Loaded image: paragonautomation:latest ==================== PO-Runtime installer ==================== Supported command: deploy [-t tags] deploy runtime destroy [-t tags] destroy runtime init init configuration skeleton inv basic inventory editor conf basic configuration editor info [-mc] cluster installation info Starting now: inv INVENTORY This script will prompt for the DNS names or IP addresses of the Kubernetes master and worker nodes. Addresses should be provided as comma-delimited lists. At least three master nodes are recommended. The number of masters should be an odd number. A minimum of four nodes are recommended. Root access to the Kubernetes nodes is required. See https://docs.ansible.com/ansible/2.10/user_guide/intro_inventory.html ? Kubernetes master nodes 10.12.xx.x3,10.12.xx.x4,10.12.xx.x5 ? Kubernetes worker nodes 10.12.xx.x6 ? Local storage nodes 10.12.xx.x3,10.12.xx.x4,10.12.xx.x5,10.12.xx.x6 ? Kubernetes nodes' username (e.g. root) root ? SSH private key file (optional; e.g. "{{ inventory_dir }}/id_rsa") config/id_rsa ? Kubernetes nodes' password (optional; WARNING - written as plain text) ? Kubernetes cluster name (optional) k8scluster ? Write inventory file? Yes
-
または、テキスト エディタを使用してインベントリ ファイルを手動でカスタマイズすることもできます。
# vi config-dir/inventory
インベントリ ファイルで以下のグループを編集します。
-
クラスターの Kubernetes プライマリ ノードとワーカー ノードの IP アドレスを追加します。
グループは
master
プライマリ ノードを識別し、グループはnode
ワーカー ノードを識別します。とnode
グループの両方master
で同じIPアドレスを持つことはできません。マルチプライマリノード設定を作成するには、グループの下のプライマリノードとして機能するすべてのノードのアドレスまたはホスト名を
master
一覧表示します。グループのワーカー ノードとして機能するノードのアドレスまたはホスト名をnode
追加します。master: hosts: 10.12.xx.x3: {} 10.12.xx.x4: {} 10.12.xx.x5: {} node: hosts: 10.12.xx.x6: {}
-
グループの下のアプリケーションで使用可能なディスク領域を持つノードを
local_storage_nodes:children
定義します。local_storage_nodes: children: master: hosts: 10.12.xx.x3: {} 10.12.xx.x4: {} 10.12.xx.x5: {} node: hosts: 10.12.xx.x6: {}
-
ユーザー アカウントと認証方法を構成して、Ansible コントロール ホストのインストーラーをグループの下
vars
のクラスター ノードで認証します。vars: ansible_user: root ansible_ssh_private_key_file: config/id_rsa ansible_password:
-
(オプション)グループ内の Kubernetes クラスターの名前を
kubernetes_cluster_name
指定します。kubernetes_cluster_name: k8scluster
-
-
- コマンドを使用してインストーラを
conf
設定します。# ./run -c config-dir conf
コマンドは
conf
インタラクティブなインストールウィザードを実行し、インストールするコンポーネントを選択し、Paragon Automationの基本的な設定を行います。コマンドは、 config.yml ファイルに 入力設定を追加します。高度な設定を行うには、 config.yml ファイルを手動で編集する必要があります。ウィザードのプロンプトに従って情報を入力します。カーソルキーを使用してカーソルを移動し、スペースキーを使用してオプションを選択し、 または
i
キーをa
使用してすべてのオプションの選択またはクリアを切り替えます。Enter キーを押して、次の設定オプションに移動します。ピリオド(.
)を入力することで、設定オプションをスキップできます。ウィザードを終了し、最初から再起動することで、すべての選択肢を再入力できます。インストーラーを使用すると、既に行った選択肢を保存した後、または最初から再起動した後にウィザードを終了できます。ウィザードを終了して再起動せずに、現在のワークフローで既に行った選択肢を元に戻してやり直すことはできません。次の表に、コマンドで
conf
入力を求める設定オプションを示します。表 2: confコマンド オプション conf
コマンド プロンプト説明/オプション
コンポーネントの選択
インフラストラクチャ、Pathfinder、Insights、基本プラットフォームコンポーネントをインストールできます。デフォルトでは、すべてのコンポーネントが選択されています。
要件に応じてPathfinderをインストールできます。ただし、フォグホーンとは別に、他のすべてのコンポーネントをインストールする必要があります。
メモ:フォグホーンは、リリース 22.1 ではサポートされていません。[フォグホーン]オプションは選択 しないでください 。[フォグホーン]を選択すると、インストールが失敗します。
インフラストラクチャ オプション
これらのオプションは、前のプロンプトでインフラストラクチャ コンポーネントをインストールするように選択した場合にのみ表示されます。
-
Kubernetes クラスタのインストール — 必要な Kubernetes クラスタをインストールします。既存のクラスタにParagon Automationをインストールする場合は、この選択をクリアできます。
-
MetalLB LoadBalancer のインストール - Kubernetes クラスターの内部ロード バランサーをインストールします。デフォルトでは、このオプションは既に選択されています。ロードバランシングを事前に設定した既存のクラスタにParagon Automationをインストールする場合は、この選択をクリアできます。
-
Nginx Ingress Controllerのインストール—Nginx Ingress Controllerのインストールは、Pathfinderコンポーネントのロードバランシングプロキシです。
-
Install Chrony NTP Client— Install Chrony NTP.クラスタ ノードのクロックを同期するには NTP が必要です。NTP がすでにインストールおよび構成されている場合は、Chrony をインストールする必要はありません。すべてのノードは、NTP またはその他の時刻同期プロトコルを常に実行する必要があります。
-
マスター スケジューリングを許可 — マスター スケジューリングを有効にする場合に選択します。マスター スケジューリングでは、プライマリ ノードとして動作するノードをどのように使用するかを決定します。 マスター は、プライマリとして動作するノードの別の用語です。
このオプションを選択すると、プライマリ ノードはワーカー ノードとしても機能し、コントロール プレーンとして機能するだけでなく、アプリケーション ワークロードも実行できます。マスター スケジューリングを選択しない場合、プライマリ ノードは制御プレーンとしてのみ使用されます。
マスター スケジューリングでは、プライマリとして動作するノードの使用可能なリソースをワークロードに使用できます。ただし、このオプションを選択すると、問題のあるワークロードがプライマリ ノードのリソースを使い果たし、クラスター全体の安定性に影響を与える可能性があります。マスター スケジューリングを行わないと、容量とディスク容量が大きい複数のプライマリ ノードがある場合、そのノードを完全に利用せず、リソースを無駄にするリスクがあります。
メモ:このオプションは、Ceph ストレージの冗長化に必要です。
NTP サーバーのリスト
NTP サーバーのコンマ区切りリストを入力します。このオプションは、Chrony NTP のインストールを選択した場合にのみ表示されます。
Kubernetesマスター仮想IPアドレス マルチプライマリノード導入のKubernetes APIサーバーの仮想IP(VIP)アドレスを入力します。VIP アドレスがプライマリ ノードと同じレイヤー 2 ドメインにあることを確認します。この VIP アドレスは、VIP アドレスの負荷分散プールの一部ではありません。
このオプションは、 インベントリ ファイルに複数のプライマリ ノードを設定している場合(マルチプライマリ インストール)にのみ表示されます。
マスター仮想 IP アドレスの LoadBalancer のインストール (オプション)マスター VIP アドレスにキープアライブ ロード バランスをインストールする場合に選択します。
このオプションは、 インベントリ ファイルに複数のプライマリ ノードを設定している場合(マルチプライマリ インストール)にのみ表示されます。
イングレスコントローラの仮想IPアドレス(es)
KubernetesクラスタまたはParagon Automation UIのWebアクセスに使用するVIPアドレスを入力します。これは、MetalLB ロード バランサー プールによって管理される未使用の IP アドレスである必要があります。
インフラストラクチャNgginx Ingress Controllerの仮想IPアドレス Nginx Ingress Controller の VIP アドレスを入力します。これは、MetalLB ロード バランサー プールによって管理される未使用の IP アドレスである必要があります。このアドレスはNetFlowトラフィックに使用されます。
Insightsサービスの仮想IPアドレス
Paragon InsightsサービスのVIPアドレスを入力します。これは、MetalLB ロード バランサー プールによって管理される未使用の IP アドレスである必要があります。
SNMP トラップ レシーバーの仮想 IP アドレス(オプション) この機能が必要な場合にのみ、SNMPトラップレシーバープロキシのVIPアドレスを入力します。 このオプションが必要ない場合は、期間(.)を入力します。
Pathfinderオプション を選択して Netflowd をインストールします。netflowdにVIPアドレスを設定したり、netflowdのプロキシを使用することができます(インフラストラクチャNgginx Ingress ControllerのVIPアドレスと同じです)。 ネットフロードをインストールしないことを選択した場合、netflowdのVIPアドレスを設定することはできません。
ネットフロー型プロキシーの使用 を入力 Y
して、ネットフロー型プロキシを使用します。このオプションは、netflowdのインストールを選択した場合にのみ表示されます。ネットフロー型プロキシーの使用を選択した場合、netflowd に VIP アドレスを構成する必要はありません。インフラストラクチャ Nginx Ingress Controller の VIP アドレスは、netflowd のプロキシとして使用されます。
Pathfinder Netflowdの仮想IPアドレス Paragon Pathfinderのネットフローに使用するVIPアドレスを入力します。このオプションは、netflowd プロキシを使用 しないことを 選択した場合にのみ表示されます。 PCEサーバープロキシ PCE サーバーのプロキシ モードを選択します。および から None
を選択しますNginx-Ingress
。Pathfinder PCEサーバーの仮想IPアドレス Paragon Pathfinder PCEサーバーアクセスに使用するVIPアドレスを入力します。このアドレスは、ロードバランサーが管理する未使用のIPアドレスである必要があります。
PCE サーバー プロキシーとして Nginx-Ingress を選択した場合、この VIP アドレスは必要ありません。このウィザードでは、このアドレスの入力を求めるプロンプトは表示されず、PCEP はインフラストラクチャ Nginx Ingress Controller の VIP アドレスと同じアドレスを使用します。
メモ:イングレスコントローラ、Infrastructure Nginx Ingress Controller、Insightsサービス、PCEサーバーのアドレスは一意である必要があります。4 つの VIP アドレスすべてに同じアドレスを使用することはできません。
これらのアドレスはすべて、LoadBalancer IP アドレス範囲オプションに自動的に表示されます。
負荷分散の IP アドレス範囲
LOADBalancer IP アドレスは VIP アドレス範囲から事前設定されます。これらのアドレスを編集できます。外部からアクセス可能なサービスは MetalLB を介して処理されます。MetalLB では、クラスターの外部からアクセス可能な 1 つ以上の IP アドレス範囲が必要です。異なるサーバーのVIPアドレスは、これらのアドレス範囲から選択されます。
アドレス範囲は、クラスタ ノードと同じブロードキャスト ドメイン内に含めることができます(ただし、不要です)。管理を容易にするために、ネットワーク トポロジーは Insights サービスと PCE サーバー クライアントにアクセスする必要があるため、同じ範囲の VIP アドレスを選択することをお勧めします。
詳細については、「 仮想 IP アドレスに関する考慮事項」を参照してください。
アドレスは、カンマ区切り値(CSV)、範囲として、または両方の組み合わせとして入力できます。例えば:
-
10.x.x.1、10.x.x.2、10.x.x.3
-
10.x.x.1-10.x.x.3
-
10.x.x.1、10.x.x.3-10.x.x.5
-
10.x.x.1-3 は有効な形式ではありません。
メイン Web アプリケーションのホスト名
イングレスコントローラーのホスト名を入力します。この値は、IP アドレスまたは完全修飾ドメイン名(FQDN)として構成できます。例えば、10.12.xx.100 または www.paragon.juniper.net(DNS 名)と入力できます。http:// または https:// は含めないでください。
メモ:このホスト名を使用して、ブラウザからParagon Automation Web UIにアクセスします。たとえば、https://hostname または https://IP-address。
BGP 自律システムの CRPD ピア数
コンテナ化ルーティングプロトコルデーモン(cRPD)自律システムと、cRPDがBGPセッションを作成するノードを設定します。
cRPDがネットワーク内の1つ以上のBGPリンクステート(BGP-LS)ルーターとピアリングできるように、ネットワークの自律システム(AS)番号を設定する必要があります。デフォルトでは、AS番号は64500です。
メモ:インストール時にAS番号を設定できますが、後でcRPD設定を変更することもできます。 cRPD設定の変更 を参照してください。
CRPD ピアのコンマ区切りリスト
ネットワーク内の少なくとも1つのBGP-LSルーターとピアリングして、ネットワークトポロジーをインポートするようにcRPDを設定します。単一の自律システムでは、cRPDとピアリングするBGP-LSルーターのアドレスを設定して、Paragon Pathfinderにトポロジー情報を提供します。クラスタの一部として実行されているcRPDインスタンスは、セッション確立後に、指定されたピアルーターへのBGP-LS接続を開始し、トポロジーデータをインポートします。複数のピアが必要な場合は、LoadBalancer IP アドレスを追加する方法と同様に、ピアを範囲として、または両方の組み合わせとして、CSP として追加できます。
メモ:インストール時にピアIPアドレスを設定できますが、 cRPD設定の変更で説明されているように、 後でcRPD設定を変更することもできます。
cRPDから開始されたBGP接続を受け入れるには、BGPピアルーターを設定する必要があります。BGPセッションは、bmpポッドが送信元アドレスとして実行されているワーカーのアドレスを使用して、cRPDから開始されます。
cRPDは、特定の時間にワーカーノード上で実行されている可能性があるため、これらのアドレスからの接続を許可する必要があります。作業者が属する IP アドレスの範囲(10.xx.43.0/24 など)または各ワーカーの特定の IP アドレス(10.xx.43.1/32、10.xx.43.2/32、10.xx.43.3 など)を許可できます。また、 オプション付きの
passive
コマンドをneighbor
使用して、ルーターが接続を試みないように設定することもできます。コマンドまたは
neighbor
コマンドのいずれかを使用して、各作業者の住所をallow
入力するように選択した場合は、すべての作業者を含める必要があります。その理由は、すべての作業者が特定の時間に cRPD を実行している可能性があるためです。BGP セッションは 1 つだけ開始されます。cRPDを実行しているノードに障害が発生した場合、cRPDコンテナを含むbmpポッドが別のノードで作成され、BGPセッションが再開始されます。以下の例のコマンドシーケンスは、cRPDからのBGP-LS接続を許可するようにジュニパーデバイスを設定するオプションを示しています。
以下のコマンドは、すべてのワーカーノードが接続されている10.xx.43.0/24ネットワーク内の任意のホストからBGP-LSセッションを受け入れるルーターを設定します。
[edit groups northstar] root@system# show protocols bgp group northstar type internal; family traffic-engineering { unicast; } export TE; allow 10.xx.43.0/24; [edit groups northstar] root@system# show policy-options policy-statement TE from family traffic-engineering; then accept;
以下のコマンドは、10.xx.43.1、10.xx.43.2、および10.xx.43.3(クラスター内の3人の労働者のアドレス)からのみBGP-LSセッションを受け入れるルーターを設定します。
[edit protocols bgp group BGP-LS] root@vmx101# show | display set set protocols bgp group BGP-LS family traffic-engineering unicast set protocols bgp group BGP-LS peer-as 11 set protocols bgp group BGP-LS allow 10.x.43.1 set protocols bgp group BGP-LS allow 10.x.43.2 set protocols bgp group BGP-LS allow 10.x.43.3 set protocols bgp group BGP-LS export TE
cRPDはBGPセッションを開始します。一度に 1 つのセッションのみが確立され、現在 cRPD を実行しているワーカー ノードのアドレスを使用して開始されます。オプションを使用
allow
する代わりに特定のIPアドレスを設定する場合は、すべてのワーカーノードのアドレスを冗長化するために設定します。次のコマンドはまた、10.xx.43.1、10.xx.43.2、および10.xx.43.3(クラスター内の3人の労働者のアドレス)からのBGP-LSセッションを受け入れるルーターを設定します。このオプションは
passive
、ルーターがcRPDでBGP-LSセッションを開始することを試みないようにします。ルーターは、これらの3つのルーターのいずれかによってセッションが開始されるのを待ちます。[edit protocols bgp group BGP-LS] root@vmx101# show | display set set protocols bgp group BGP-LS family traffic-engineering unicast set protocols bgp group BGP-LS peer-as 11 set protocols bgp group BGP-LS neighbor 10.xx.43.1 set protocols bgp group BGP-LS neighbor 10.xx.43.2 set protocols bgp group BGP-LS neighbor 10.xx.43.3 set protocols bgp group BGP-LS passive set protocols bgp group BGP-LS export TE
また、以下に示すように、OSPF/IS-IS および MPLS トラフィック エンジニアリングを有効にする必要があります。
set protocols rsvp interface interface.unit set protocols isis interface interface.unit set protocols isis traffic-engineering igp-topology Or set protocols ospf area area interface interface.unit set protocols ospf traffic-engineering igp-topology set protocols mpls interface interface.unit set protocols mpls traffic-engineering database import igp-topology
詳細については、 https://www.juniper.net/documentation/us/en/software/junos/mpls/topics/topic-map/mpls-traffic-engineering-configuration.html を参照してください。
コンフィギュレーションの完了とファイルへの書き込み をクリック Yes
して、設定情報を保存します。このアクションは基本的なセットアップを設定し、ディレクトリ内の config.yml ファイルに情報を config-dir 保存します。
$ ./run -c config conf Loaded image: paragonautomation.latest ==================== PO-Runtime installer ==================== Supported command: deploy [-t tags] deploy runtime destroy [-t tags] destroy runtime init init configuration skeleton inv basic inventory editor conf basic configuration editor info [-mc] cluster installation info Starting now: conf NOTE: depending on options chosen additional IP addresses may be required for: multi-master Kubernetes Master Virtual IP address Infrastructure Virtual IP address(es) for ingress controller Infrastructure Virtual IP address for Infrastructure Nginx Ingress Cont roller Insights Virtual IP address for Insights services Insights Virtual IP address for SNMP Trap receiver (optional) Pathfinder Virtual IP address for Pathfinder Netflowd Pathfinder Virtual IP address for Pathfinder PCE server ? Select components done (4 selections) ? Infrastructure Options done (4 selections) ? List of NTP servers 0.pool.ntp.org ? Virtual IP address(es) for ingress controller 10.12.xx.x7 ? Virtual IP address for Insights services 10.12.xx.x8 ? Virtual IP address for SNMP Trap receiver (optional) ? Pathfinder Options [Install Netflowd] ? Use netflowd proxy? Yes ? PCEServer proxy Nginx Ingress ? LoadBalancer IP address ranges 10.12.xx.x7-10.12.xx.x9 ? Hostname of Main web application host.example.net ? BGP autonomous system number of CRPD peer 64500 ? Comma separated list of CRPD peers 10.12.xx.11 ? Finish and write configuration to file Yes
-
- (オプション)クラスタをより高度に設定するには、テキスト エディタを使用して config.yml ファイルを手動で編集します。
config.yml ファイルは、ファイルの先頭にある必須セクションで構成され、インストール ウィザードで入力を求める設定オプションに対応します。ファイルには、ファイルに直接複雑な設定値を入力するための不可欠なセクションの下にある広範なセクションのリストもあります。
以下のオプションを設定できます。
-
パスワードを
opendistro_es_admin_password
設定して、Kibana アプリケーションにログインします。Open Distro を使用して、アプリケーション ログと可視化ツール Kibana を統合およびインデックス化し、キーワードとフィルターを使用してログを検索します。デフォルトでは、ユーザー名は admin
#opendistro_es_admin_user: admin
in として事前設定されており、install_opendistro_es
オプションは Elasticsearch バージョンを Open Distro に置き換えるために true に設定されています。管理者をユーザー名とパスワードとして使用して、Kibanaにログインします。デフォルトでは、本番環境でパージされる前に、データが 7 日間ディスクに保持されます。ディスクサイズが小さい場合は、日数をより小さな数に
opendistro_es_retain
編集できます。# install_opendistro_es: true # opendistro_es_admin_user: admin # opendistro_es_admin_password: opendistro_password # opendistro_es_retain: 7d
パスワードを設定
opendistro_es_admin_password
しない場合、インストーラはランダムなパスワードを生成します。次のコマンドを使用してパスワードを取得できます。# kubectl -n kube-system get secret opendistro-es-account -o jsonpath={..password} | base64 -d
-
iam_skip_mail_verification
アイデンティティおよびアクセス管理 (IAM) による SMTP を使用しないユーザー管理の構成オプションを true に設定します。デフォルトでは、SMTP を使用したユーザー管理の場合、このオプションは false に設定されています。アカウントの作成、アクティブ化、ロック時、またはアカウントパスワードの変更時にParagon Automationユーザーに通知できるように、Paragon AutomationのSMTPを設定する必要があります。 -
オプションを
callback_vip
、イングレスコントローラーの仮想IP(VIP)アドレスとは異なるIPアドレスで設定します。VIP アドレスの MetalLB プールから IP アドレスを使用できます。このIPアドレスを設定して、サウスバウンドインターフェイスとノースバウンドインターフェイスからの管理トラフィックとデータトラフィックを分離できます。デフォルトでは、callback_vip
イングレスコントローラーのアドレスの1つまたは同じアドレスが割り当てられます。 -
クラスタ間通信にデフォルトインターフェイス以外のインターフェイスを使用する場合は、 変数を設定します
kubernetes_system_interface
。現在の設定は、"{{ ansible_default_ipv4.interface }}"
で、デフォルト ルートが使用するインターフェイスです。この変数はkubernetes_system_interface
、Kubernetes APIサーバーとCalicoを設定します。デフォルトのインターフェイスを表示するには、プライマリノードでこのコマンドを実行します。
root@primary-node:~# ip r show default default via 10.12.xx.254 dev ens3 proto dhcp src 10.12.xx.121 metric 100
この例では、ens3はこのマシンのデフォルトインターフェイスです。
デフォルトのインターフェイスとは異なるインターフェイスを使用し、同じインターフェイスをすべてのクラスタノードで使用できる場合は、 config.ymlファイルで を設定
kubernetes_system_interface
します。例えば:kubernetes_system_interface: ens4
デフォルトのインターフェイスとは異なるインターフェイスを使用したいが、異なるノードでインターフェイスが異なる場合は、config.ymlファイルから削除
kubernetes_system_interface
する必要があります。代わりに、インベントリ ファイルにインターフェイス名を設定します。例えば:master: hosts: 10.12.xx.x3: kubernetes_system_interface: ens7 10.12.xx.x4: kubernetes_system_interface: ens8 10.12.xx.x5: kubernetes_system_interface: ens9 node: hosts: 10.12.xx.x6: kubernetes_system_interface: ens7
は 、
calico_ip_autodetect
に"interface={{ kubernetes_system_interface }}"
設定されており、デフォルトインターフェイスが変更された場合と同じ値kubernetes_system_interface
を受け取り、明示的に変更する必要があることに注意してください。
ファイルの編集が完了したら、ファイルを保存して終了します。
-
- (オプション)認識された認証機関(CA)によって署名されたカスタムSSL証明書を展開する場合は、秘密鍵と証明書をディレクトリにconfig-dir格納します。プライベートキーを ambassador.key.pem として保存し、証明書を ambassador.cert.pem として保存します。
デフォルトでは、アンバサダーは Kubernetes クラスタ内部 CA によって署名されたローカルで生成された証明書を使用します。
メモ:証明書の有効期限が間に合う場合は、新しい証明書を ambassador.cert.pem として同じディレクトリに保存し、 コマンドを
./run -c config-dir deploy -t ambassador
実行します。 - config.ymlとインベントリファイルで設定した情報に基づいてParagon Automationクラスターをインストールします。
# ./run -c config-dir deploy
構成済みクラスターのインストール時間は、クラスターの複雑さによって異なります。基本的なセットアップのインストールが完了するのに少なくとも 45 分かかります。
インストーラーは、インストールの開始時に NTP 同期をチェックします。クロックが同期していない場合、インストールは失敗します。
マルチプライマリノード導入の場合のみ、インストーラはインストールの開始時に1秒あたりのディスク入出力操作(IOPS)を確認します。IOPS値が300未満の場合、インストールは失敗します。ディスクIOPSチェックを無効にするには、 コマンドを
# ./run -c config-dir deploy -e ignore_iops_check=yes
使用して展開を再実行してください。既存のKubernetesクラスタにParagon Automationをインストールする場合、コマンドは
deploy
、現在導入されているクラスタを最新のKubernetesバージョンにアップグレードします。コマンドはまた、必要に応じてDocker CEバージョンをアップグレードします。Docker EE がすでにノードにインストールされている場合、deploy
コマンドは Docker CE で上書きしません。KubernetesバージョンまたはDockerバージョンをアップグレードする場合、 コマンドは1つのノードで一度に順番にアップグレードを実行します。コマンドは各ノードをオフにして、スケジューリングから削除します。アップグレードを実行し、ノードでKubernetesを再起動し、最終的にノードを修正して、スケジューリングに戻します。 - 展開が完了したら、ワーカー ノードにログインします。
テキストエディタを使用して、 limits.conf ファイルおよび sysctl.conf ファイルでParagon Insightsの以下の推奨情報を設定します。これらの値は、流入 DB メモリ要件のソフト メモリとハード メモリの制限を設定します。これらの制限を設定しない場合は、既定のシステム制限が原因で、「メモリ不足」や「開くファイルの数が多すぎる」などのエラーが表示される場合があります。
-
# vi /etc/security/limits.conf # End of file * hard nofile 1048576 * soft nofile 1048576 root hard nofile 1048576 root soft nofile 1048576 influxdb hard nofile 1048576 influxdb soft nofile 1048576
-
# vi /etc/sysctl.conf fs.file-max = 2097152 vm.max_map_count=262144 fs.inotify.max_user_watches=524288 fs.inotify.max_user_instances=512
すべてのワーカー ノードに対してこの手順を繰り返します。
-
Paragon Automationクラスターをインストールして導入したら、Paragon Automation UIにログインする準備ができました。
Paragon Automation UIにログインする
Paragon Automation UIにログインするには、次の手順にしたがっています。
- ブラウザーを開き、メインの Web アプリケーションのホスト名、またはインストール ウィザードの URL フィールドに入力したイングレス コントローラーの VIP アドレスのいずれかを入力します。
例えば、 https://vip-of-ingress-controller-or-hostname-of-main-web-application。Paragon Automationログインページが表示されます。
- 初めてアクセスするには、ユーザー名として admin を、ログインするためのパスワードに Admin123! を入力します。パスワードは直ちに変更する必要があります。
[パスワードの設定] ページが表示されます。Paragon Automationの設定にアクセスするには、新しいパスワードを設定する必要があります。
- パスワード要件を満たす新しいパスワードを設定します。
6~20文字の間で使用し、大文字、小文字、数字、特殊文字を組み合わせて使用します。新しいパスワードを確認し、[ OK] をクリックします。[ダッシュボード] ページが表示されます。Paragon Automation UIのインストールとログインが正常に完了しました。
- URLを更新して、認証>認証>ポータル設定のParagon Automation UIにアクセスして、ユーザーにアカウントをアクティブ化するために送信されたアクティベーション電子メールに、GUIにアクセスするための正しいリンクが含まれていることを確認します。詳細については、「ポータル設定の構成」を参照してください。
Paragon Automation UIにログインした後に実行できる高レベルのタスクについては、 Paragon Automationの始め方を参照してください。