5.2. エッジルーターデプロイメントの作成

エッジルーターデプロイメントを追加して、ルーターネットワークを効率的にスケーリングできます。エッジルーターは、メッセージングアプリケーションの接続コンセントレーターとして機能します。各エッジルーターは、内部ルーターへの単一のアップリンク接続を維持し、メッセージングアプリケーションはエッジルーターに接続してメッセージを送受信します。

前提条件

手順

この手順では、OpenShift Container Platform クラスターの各ノードにエッジルーターを作成し、それらを以前に作成した内部ルーターメッシュに接続します。

  1. エッジルーターデプロイメントを記述する Interconnect カスタムリソース YAML ファイルを作成します。

    edge-routers.yaml ファイルのサンプル

    apiVersion: interconnectedcloud.github.io/v1alpha1
    kind: Interconnect
    metadata:
      name: edge-routers
    spec:
      deploymentPlan:
        role: edge
        placement: Every  1
      edgeConnectors:  2
        - host: router-mesh  3
          port: 45672  4

    1
    エッジルーター Pod は、OpenShift Container Platform クラスターの各ノードにデプロイされます。この配置は、クラスター全体でメッセージングアプリケーショントラフィックのバランスを取るのに役立ちます。Operator は DaemonSet を作成し、スケジュールされる Pod の数がクラスター内のノード数を常に表すようにします。
    2
    エッジコネクターは、エッジルーターから内部ルーターへの接続を定義します。
    3
    内部ルーター用に作成されたサービスの名前。
    4
    内部ルーターがエッジ接続をリッスンするポート。デフォルトは 45672 です。
  2. YAML ファイルで記述されるエッジルーターを作成します。

    $ oc apply -f edge-routers.yaml

    Operator は OpenShift Container Platform クラスターの各ノードにエッジルーターをデプロイし、それらを内部ルーターに接続します。

  3. エッジルーターが作成され、Pod が実行されていることを確認します。

    各ルーターは別個の Pod で実行されます。各エッジルーターは、以前に作成された内部ルーターのいずれかに接続します。

    $ oc get pods
    NAME                                     READY   STATUS    RESTARTS   AGE
    edge-routers-2jz5j                       1/1     Running   0          33s
    edge-routers-fhlxv                       1/1     Running   0          33s
    edge-routers-gg2qb                       1/1     Running   0          33s
    edge-routers-hj72t                       1/1     Running   0          33s
    interconnect-operator-587f94784b-4bzdx   1/1     Running   0          54m
    router-mesh-6b48f89bd-588r5              1/1     Running   0          42m
    router-mesh-6b48f89bd-bdjc4              1/1     Running   0          42m
    router-mesh-6b48f89bd-h6d5r              1/1     Running   0          42m