CNI (container network interface) プラグイン、OVS (Open vSwitch)、NCP Docker イメージは、OpenShift ノードにインストールする必要があります。このインストールは Ansible Playbook によって実行されます。

注:

単一の Playbook を使用して NCP と OpenShift をインストールする場合、この手順は必要ありません。「単一の Playbook を使用した NCP と OpenShift のインストール」を参照してください。

Playbook には、ノードに NSX-T リソースを設定する手順が含まれています。NSX-T リソースのセットアップ の説明に従って、NSX-T Data Center リソースを手動で設定することもできます。perform_nsx_config パラメータは、Playbook の実行時にリソースを設定するかどうかを指定します。

手順

  1. roles/ncp_prep/default/main.yamlroles/nsx_config/default/main.yaml のパラメータ値を更新します。CNI プラグイン RPM、OVS、対応するカーネル モジュールの RPM をダウンロードする URL も更新します。uplink_port は、ノード仮想マシンのアップリンク ポート vNIC の名前です。残りの変数は、次のような、NSX-T Data Center 管理プレーンの構成に関連する変数です。

    指定する必要のあるパラメータ:

    • perform_nsx_config: リソース設定を行うかどうかを指定します。設定を手動で行う場合は false に設定します。この場合、nsx_config スクリプトは実行されません。

    • nsx_manager_ipNSX Manager の IP アドレス

    • nsx_edge_cluster_name: Tier-0 ルーターで使用される Edge クラスタの名前

    • nsx_transport_zone_name: オーバーレイ トランスポート ゾーンの名前

    • os_node_name_list: ノード名のカンマ区切りリスト

      node1、node2、node3 など

    • subnet_cidr: 管理者がノード上の br-int に割り当てる IP の CIDR アドレス

    • vc_hostvCenter Server の IP アドレス

    • vc_uservCenter Server 管理者のユーザー名

    • vc_passwordvCenter Server 管理者のパスワード

    • vms: 仮想マシン名のカンマ区切りリスト。順番は os_node_name_list と一致させる必要があります。

    次のパラメータには、デフォルト値が指定されています。これらは必要に応じて変更できます。

    • nsx_t0_router_name: クラスタの Tier-0 論理ルーターの名前。デフォルト: t0

    • pod_ipblock_name: ポッドの IP アドレス ブロックの名前。デフォルト: podIPBlock

    • pod_ipblock_cidr: この IP アドレス ブロックの CIDR アドレス。デフォルト: 172.20.0.0/16

    • snat_ippool_name: SNAT の IP アドレス ブロックの名前。デフォルトは externalIP です。

    • snat_ippool_cidr: この IP アドレス ブロックの CIDR アドレス。デフォルト:172.30.0.0/16

    • start_range: この IP アドレス プールに対して指定された CIDR の開始 IP アドレス。デフォルト: 172.30.0.1

    • end_range: この IP アドレス プールに対して指定された CIDR の終了 IP アドレス。デフォルト: 172.30.255.254

    • os_cluster_name: OpenShift クラスタの名前。デフォルト: occl-one

    • nsx_node_ls_name: ノードに接続されている論理スイッチの名前。デフォルト: node_ls

    • nsx_node_lr_name: スイッチ node_ls の論理ルーターの名前。デフォルト: node_lr

    nsx-config Playbook では、1 つの IP アドレス プールと 1 つの IP アドレス ブロックのみを作成できます。複数必要な場合は、手動で作成してください。

  2. openshift-ansible-nsx ディレクトリに変更し、ncp_prep ロールを実行します。
        ansible-playbook -i /PATH/TO/HOSTS/hosts ncp_prep.yaml

タスクの結果

Playbook には、次の操作を実行する手順が含まれています。

  • CNI プラグイン インストール ファイルをダウンロードします。

    ファイル名は nsx-cni-1.0.0.0.0.xxxxxxx-1.x86_64.rpm です。xxxxxxx はビルド番号です。

  • CNI プラグイン インストール ファイルをインストールします。

    プラグインが /opt/cni/bin にインストールされます。CNI 構成ファイル 10.net.conf が /etc/cni/net.d にコピーされます。rpm は、ループバック プラグインの構成ファイル /etc/cni/net.d/99-loopback.conf もインストールします。

  • OVS インストール ファイルをダウンロードしてインストールします。

    ファイル名は openvswitch-2.9.1.xxxxxxx-1.x86_64.rpmopenvswitch-kmod-2.9.1.xxxxxxx-1.el7.x86_64.rpm です。xxxxxxx はビルド番号です。

  • まだ作成されていない場合には、br-int インスタンスを作成します。

        # ovs-vsctl add-br br-int

  • ノードの論理スイッチに接続するネットワーク インターフェイス (node-if) を br-int に追加します。

  • br-intnode-if link が起動していることを確認します。

        # ip link set br-int up
        # ip link set <node-if> up

  • 再起動後にネットワーク インターフェイスが起動するように、ネットワーク構成ファイルを更新します。

  • NCP tar ファイルをダウンロードし、この tar ファイルから Docker イメージをロードします。

  • ncp-rbac yaml ファイルをダウンロードし、apiVersionv1 に変更します。

  • NSX-T Data Center に論理トポロジおよび関連リソースを作成し、NCP が認識できるようにタグを作成します。

  • NSX-T Data Center リソース情報を使用して ncp.ini を更新します。

次のタスク

OpenShift Container Platform をインストールします。「OpenShift Container Platform のインストール」を参照してください。