Cisco NSO の統合

この章は次のトピックで構成されています。

NSO の統合ワークフロー

このセクションでは、Cisco NSO を Crosswork Network Controller と統合するステップについて説明します。

1. 互換性のあるバージョンの Cisco NSO のインストール

互換性のあるバージョンの Cisco NSO がインストールされていることを確認します。

さらに、Cisco NSO LSA セットアップについては、(オプション)Cisco NSO Layered Service Architecture の設定を参照してください。

表 1. Cisco NSO - 互換性のあるバージョン
ソフトウェア/ドライバ バージョン

Cisco Network Services OrchestratorCisco NSO

6.1

Cisco Network Element Driver(NED)

(注)  

 

Cisco NED は、管理しているデバイスタイプとバージョンに対してのみインストールする必要があります。たとえば、NETCONF を使用している場合は、IOS XR バージョンに対応する NED をインストールする必要があります。同様に、ネットワークに IOS デバイスがある場合は、Cisco IOS CLI NED をインストールする必要があります。

Cisco IOS XR:

  • CLI:7.46.3

  • NETCONF:7.3.2、7.315、7.4.2、7.5.2、7.6.2、7.7.2、7.8、7.9

Cisco IOS:

  • CLI:6.86.6

2. 必須の NSO コア機能パックのインストール

使用中の Cisco Crosswork アプリケーションまたはソリューションに応じて、製品に互換性を持たせるために Cisco NSO にインストールする必要がある必須のコア機能パック(CFP)があります。

NSO コア機能パックは、次のように cisco.com にバンドルされています。

表 2. NSO コア機能パック

パッケージ名

目次

Cisco Crosswork Network Controller Essential 機能パック

ファイル名:cw-cnc-essential-fp-5.0.0-101-release-230503.tar.gz

  • Cisco NSO トランスポート SDN 機能パックバンドル

  • Cisco NSO DLM サービスパック

  • Cisco NSO Telemetry Traffic Collector 機能パック

Cisco Crosswork Change Automation 機能パック

ファイル名:cw-ca-fp-5.0.0-5-release-230511.tar.gz

  • Cisco Crosswork Change Automation NSO 機能パック 4.4.0

次のいずれかの方法を使用して、CFP をインストールできます。


(注)  


Cisco Crosswork Network Controller 機能パックの SDK アプリケーション(cw-na-platform-5.0.0-signed-tsdn-sdk.tar.gz)も cisco.com からダウンロードできます。SDK は、Crosswork Network Controller で TSDN 機能パックの開発、構築、パッケージ化、および展開に使用できるツールとソースコードの例を提供します。


3. NSO プロバイダーの追加と接続の確認

Cisco NSO プロバイダの追加の指示に従って操作します。

Ansible プレイブックを使用した Cisco NSO 機能パックのインストール

このセクションでは、Ansible プレイブックを使用して Cisco NSO コア機能パック(CFP)をインストールする方法について説明します。

Ansible プレイブックは、既存の NSO VM インスタンスに NSO CFP をインストールし、互換性のある NSO バージョンを実行します。プレイブックは、管理対象ノードとして NSO インスタンスを使用して Ansible コントローラから実行されます。この機能は、次の NSO 展開構成をサポートします。

インストールとアンインストールに必要なパラメータとスクリプトについては、それぞれの展開構成を参照してください。

CFP をインストールまたはアンインストールするには、次の手順を実行します。

始める前に

前提条件:

  • CFP のクリーンインストールのみをサポートします。

  • アップグレードはサポートされていません。

  • NSO は、HA 構成とともに(展開要件に従って)すでにインストールされています。

  • Ansible スクリプトは、すべての CFP パッケージ(トランスポート SDN(TSDN)、Change Automation(CA)、Device Lifecycle Management(DLM)、Telemetry Traffic Controller(TM-TC)とブートストラップ)をインストールします。

  • LSA 構成には 3 つの VM(1 つの CFS ノードと 2 つの RFS ノード)が必要です。

  • NSO は、システムインストールモード(ローカルインストールはサポートされていません)で、以下の標準の場所にインストールされます。

    • ncsdir:/opt/ncs/current

    • confdir:/etc/ncs

    • rundir:/var/opt/ncs

    • logdir:/var/log/ncs

  • アップグレードがサポートされていないため、CFP がすでにインストールされていることを示す CFP パッケージ(cisco-tsdn-core-fp-common パッケージなど)が存在すると、インストールは失敗します。このメカニズムによって、機能している設定にパッケージを誤ってインストールすることを防ぐことができます。

  • インストールに失敗した場合、または CFP を再インストールする場合は、最初にアンインストールスクリプトを実行して古いパッケージを削除(リンク解除)します。

前提条件:

  • 最新の ansible および ansible プレイブックは、Ansible コントローラとして指定されたホストにインストールされます。

  • CFP に必要な Java および Python バージョン(OpenJDK 11、python3)は、NSO VM にすでにインストールされています。

  • HA 展開の場合、CFP インストールを実行する前に、Cisco Tail-f HCC(Tail-f High Availability Cluster Communications)パッケージがすでにインストールされ、構成され、動作している必要があります。

注意:

  1. sshnetconf-north-bound、または webui transport が以前に有効になっている場合、インストールを実行しても dual-stack config は追加されないため、手動で有効にする必要があります。次の構成を使用して、適切なポートで IPv6 リスナーを追加します。

    <extra-listen>
          <ip>::</ip>
          <port>2024</port>
        </extra-listen>
  2. アンインストールを開始する前に、CDB に追加されたすべてのサービスとデバイスを削除する必要があります。そうしないと、NSO はアップグレードプロセスを試行し、アンインストールが失敗します。

  3. NSO インスタンスを Ansible コントローラとして使用して、それ自体に CFP をインストールしないでください。この展開構成はサポートされていません。

手順


ステップ 1

NSO を構成するには、関連するパラメータを使用して host および vars.yml ファイルを編集します。

ステップ 2

CFP をインストールするには、インストールコマンドを実行します(詳細についてはそれぞれの展開構成を参照)。

例:
ansible-playbook -v -i hosts tsdn-lsa-ha-install.yml

CFP ファイルがインストールディレクトリ(/opt/ncs/packages/)にコピーされ、シンボリックリンクがランタイムディレクトリ(/var/opt/ncs/packages/)に作成されます。その後、パッケージを適用するために NSO が再起動されます。

ステップ 3

CFP をアンインストールするには、アンインストールコマンドを実行します(詳細についてはそれぞれの展開構成を参照)。

例:

ansible-playbook -v -i hosts tsdn-lsa-ha-uninstall.yml

シンボリックリンクはランタイムディレクトリで削除され、NSO は CFP パッケージなしで再起動されます。


次のタスク

以下のインストールワークフローに戻ります。

LSA

このプレイブックは、vars.yml ファイルに記述されているノードのロールに従って、CFP パッケージをインストールし、LSA クラスタを構成します。

Dir:lsa

インストール:ansible-playbook -v -i hosts tsdn-lsa-install.yml

アンインストール:ansible-playbook -v -i hosts tsdn-lsa-uninstall.yml

必須パラメータ:

ファイル:lsa/vars.yml

表 3. LSA 展開構成に必要なパラメータ

パラメータ

説明

ansible_user

SSH ユーザ名

ansible_ssh_pass

SSH パスワード

ansible_sudo_pass

sudo パスワード

nbi_port

NSO ノース バウンド インターフェイスの ポート(例:8888)

restconf_port

Restconf インターフェイスのポート(例:2022)

lsa_ned_id

NSO Netconf NED ID(例:cisco-nso-nc-6.1:cisco-nso-nc-6.1)

image_location

Ansible サーバー上の CFP パッケージの場所、Crosswork(例:/tmp/image)

tsdn_image

TSDN イメージ名(例:nso-6.1_230124-tsdn-5.0.0-M6)

ca_image

CA イメージ名(例:cw-na-fp-ca-5.0.0-nso-6.1)

dlm_image

DLM イメージ名(例:cw-na-dlm-fp-5.0.0-nso-6.1-eng)

tmtc_image

TM-TC イメージ名(例:cw-na-fp-tmtc-5.0.0-333-nso-6.1)

tmtc_internal

TM-TC の内部ディレクトリ名(例:TM-TC-5.0.0-333。これを取得するには、解凍する必要がある場合があります)

cli_ned_version

TM-TC に必要な IOS XR NED バージョン(例:7.45)

rfs_nodes

- name: rfs-1:
    ip: <RFS 1 IP address>
  - name: rfs-2:
    ip: <RFS 2 IP address>
  - name: rfs-x:
    ip: <RFS x IP address>

ファイル:lsa/hosts

[all]

[cfs_node]
10.0.0.2

[rfs_node]
10.0.0.3
10.0.0.4
10.0.0.x

host ファイルと vars.yml ファイルを準備したら、Ansible プレイブックを使用した Cisco NSO 機能パックのインストールの指示に従って CFP のインストールを完了します。

LSA HA(高可用性)

このプレイブックは、vars.yml ファイルに記述されているノードのロールに従って、CFP パッケージをインストールし、LSA クラスタを構成します。

host ファイルと vars.yml ファイルを準備したら、Ansible プレイブックを使用した Cisco NSO 機能パックのインストールの指示に従います。

Dir:lsa-ha

インストール:ansible-playbook -v -i hosts lsa-ha-install.yml

アンインストール:ansible-playbook -v -i hosts lsa-ha-uninstall.yml

必須パラメータ:

ファイル:lsa-ha/vars.yml

表 4. LSA HA 展開の構成に必要なパラメータ

パラメータ

説明

ansible_user

SSH ユーザ名

ansible_ssh_pass

SSH パスワード

ansible_sudo_pass

sudo パスワード

nbi_port

NSO ノース バウンド インターフェイスの ポート(例:8888)

restconf_port

Restconf インターフェイスのポート(例:2022)

lsa_ned_id

NSO Netconf NED ID(例:cisco-nso-nc-6.1:cisco-nso-nc-6.1)

image_location

Ansible サーバー上の CFP パッケージの場所、Crosswork(例:/tmp/image)

tsdn_image

TSDN イメージ名(例:nso-6.1_230124-tsdn-5.0.0-M6)

ca_image

CA イメージ名(例:cw-na-fp-ca-5.0.0-nso-6.1)

dlm_image

DLM イメージ名(例:cw-na-dlm-fp-5.0.0-nso-6.1-eng)

tmtc_image

TM-TC イメージ名(例:cw-na-fp-tmtc-5.0.0-333-nso-6.1)

tmtc_internal

TM-TC の内部ディレクトリ名(例:TM-TC-5.0.0-333。これを取得するには、解凍する必要がある場合があります)

cli_ned_version

TM-TC に必要な IOS XR NED バージョン(例:7.45)

rfs_nodes

- name: rfs-1:
    ip: <RFS 1 IP address>
  - name: rfs-2:
    ip: <RFS 2 IP address>
  - name: rfs-x:
    ip: <RFS x IP address>

ファイル:lsa-ha/hosts

[all]

[cfs_primary]
10.0.0.2

[cfs_secondary]
10.0.0.3

[rfs1_primary]
10.0.0.4

[rfs1_secondary]
10.0.0.5

[rfs2_primary]
10.0.0.7

[rfs2_secondary]
10.0.0.8

[rfsx_primary]
10.0.0.x1

[rfsx_secondary]
10.0.0.x2

host ファイルと vars.yml ファイルを準備したら、Ansible プレイブックを使用した Cisco NSO 機能パックのインストールの指示に従って CFP のインストールを完了します。

スタンドアロン

このプレイブックは、CFP パッケージをスタンドアロン NSO ノードにインストールします。

Dir:standalone

インストール:ansible-playbook -v -i hosts standalone-install.yml

アンインストール:ansible-playbook -v -i hosts standalone-uninstall.yml

必須パラメータ:

ファイル:standalone/vars.yml

表 5. スタンドアロン展開の構成に必要なパラメータ

パラメータ

説明

ansible_user

SSH ユーザ名

ansible_ssh_pass

SSH パスワード

ansible_sudo_pass

sudo パスワード

nbi_port

NSO ノース バウンド インターフェイスの ポート(例:8888)

image_location

Ansible サーバー上の CFP パッケージの場所、Crosswork(例:/tmp/image)

tsdn_image

TSDN イメージ名(例:nso-6.1_230124-tsdn-5.0.0-M6)

ca_image

CA イメージ名(例:cw-na-fp-ca-5.0.0-nso-6.1)

dlm_image

DLM イメージ名(例:cw-na-dlm-fp-5.0.0-nso-6.1-eng)

tmtc_image

TM-TC イメージ名(例:cw-na-fp-tmtc-5.0.0-333-nso-6.1)

tmtc_internal

TM-TC の内部ディレクトリ名(例:TM-TC-5.0.0-333。これを取得するには、解凍する必要がある場合があります)

cli_ned_version

TM-TC に必要な IOS XR NED バージョン(例:7.45)

ファイル:standalone/hosts

[all]
10.0.0.2

hosts ファイルと vars.yml ファイルを準備したら、Ansible プレイブックを使用した Cisco NSO 機能パックのインストールの指示に従って CFP のインストールを完了します。

スタンドアロン HA(高可用性)

このプレイブックは、vars.yml ファイルで説明されているように、HA 構成の NSO ノードに CFP パッケージをインストールします。

HA 展開の場合、CFP インストールを実行する前に、Cisco Tail-f HCC(Tail-f High Availability Cluster Communications)パッケージがすでにインストールされ、構成され、動作している必要があります。

Dir:ha

インストール:ansible-playbook -v -i hosts ha-install.yml

アンインストール:ansible-playbook -v -i hosts ha-uninstall.yml

必須パラメータ:

ファイル:ha/vars.yml

表 6. スタンドアロン HA 展開の構成に必要なパラメータ

パラメータ

説明

ansible_user

SSH ユーザ名

ansible_ssh_pass

SSH パスワード

ansible_sudo_pass

sudo パスワード

nbi_port

NSO ノース バウンド インターフェイスの ポート(例:8888)

image_location

Ansible サーバー上の CFP パッケージの場所、Crosswork(例:/tmp/image)

tsdn_image

TSDN イメージ名(例:nso-6.1_230124-tsdn-5.0.0-M6)

ca_image

CA イメージ名(例:cw-na-fp-ca-5.0.0-nso-6.1)

dlm_image

DLM イメージ名(例:cw-na-dlm-fp-5.0.0-nso-6.1-eng)

tmtc_image

TM-TC イメージ名(例:cw-na-fp-tmtc-5.0.0-333-nso-6.1)

tmtc_internal

TM-TC の内部ディレクトリ名(例:TM-TC-5.0.0-333。これを取得するには、解凍する必要がある場合があります)

cli_ned_version

TM-TC に必要な IOS XR NED バージョン(例:7.45)

vip_ip

仮想 IP アドレス

primary_node_ip

プライマリノードの IP アドレス

secondary_node_ip

セカンダリノードの IP アドレス

ファイル:ha/hosts

[all]

[primary_node]
  10.0.0.2

[secondary_node]
  10.0.0.3

hosts ファイルと vars.yml ファイルを準備したら、Ansible プレイブックを使用した Cisco NSO 機能パックのインストールの指示に従って CFP のインストールを完了します。

手動での Cisco NSO Function Pack のインストール

個々の機能パックを手動でインストールする必要がある場合は、以下の表の関連する手順に従ってください。

表 7. 必須の機能パックのリスト

Crosswork 製品

必要な機能パックのドキュメント

Crosswork Network Controller Essentials

または

Crosswork Network Controller Advantage

Crosswork Optimization Engine(スタンドアロン)

Cisco NSO プロバイダの追加

Cisco Network Services OrchestratorCisco NSO)プロバイダは次の機能を提供します。

  • Cisco Crosswork アプリケーションへのネットワークサービスとデバイス設定サービス。

  • デバイス管理サービスと設定メンテナンスサービス。


(注)  


Crosswork は、Cisco NSO Layered Service Architecture(LSA)展開をサポートしています。LSA 展開は、すべてのサービスを含む顧客向けサービス(CFS)NSO として機能する複数の NSO プロバイダーと、デバイスを含むリソース向けサービス(RFS)から構成されます。Crosswork は、NSO プロバイダーを CFS または RFS として自動的に識別します。許可される CFS は 1 つだけです。[マネージャ プロバイダー アクセス(Manager Provider Access)] ページの [タイプ(Type)] 列は、NSO プロバイダーを CFS として識別します。



(注)  


Cisco NSO 機能パックのサンプルは、Cisco Crosswork Network Controller の VPN サービスプロビジョニング機能の出発点として提供されます。これらのサンプルは、一部の限定されたネットワーク設定では「そのまま」使用できますが、Cisco Crosswork Network Controller の拡張可能な設計を示すことを意図としています。一般的な質問への回答は Cisco Devnet で確認できます。シスコ カスタマー エクスペリエンスの担当者は、サンプルに関する一般的な質問への回答を提供できます。特定のユースケースに合わせたサンプルのカスタマイズについては、シスコアカウントチームを通じてサポートを提供いたします。


始める前に

必要な作業は次のとおりです。
  • Cisco NSO プロバイダーのクレデンシャルプロファイルを作成します。

  • Cisco NSO プロバイダに割り当てる名前を確認します。

  • トポロジで使用する Cisco NSO NED デバイスモデルとドライババージョンを確認します。


    (注)  


    version コマンドを使用して Cisco NSO のバージョンを検索できます。次に例を示します。
    admin@ncs# show ncs-state version 
    ncs-state version 6.1
    

  • Cisco NSO サーバーの IP アドレスとホスト名を確認します。NSO が HA で設定されている場合、IP アドレスは管理 VIP アドレスになります。

  • Cisco NSO デバイスの設定を確認します。

UI から Cisco NSO プロバイダを追加するには、次の手順を実行します。すべてのプロバイダーの詳細を含む CSV ファイルを作成して Crosswork にインポートすることで、複数のプロバイダーを同時にインポートできることに注意してください。

手順


ステップ 1

メインメニューから、[管理(Administration)] > [プロバイダアクセスの管理(Manage Provider Access)] を選択します。

ステップ 2

[追加(Add)] アイコン をクリックします。

ステップ 3

Cisco NSO プロバイダのフィールドに次の値を入力します。

  1. 必須フィールド:

    • [プロバイダ名(Provider Name)]:プロバイダの名前を入力します。

    • [クレデンシャルプロファイル(Credential Profile)]:以前に作成した Cisco NSO のクレデンシャルプロファイルを選択します。

    • [ファミリ(Family)]:[NSO] を選択します。

    • [接続タイプ(Connection Type(s))] の [プロトコル(Protocol)] で、Cisco Crosswork アプリケーションがプロバイダへの接続に使用するプロトコルを選択します。 通常は HTTPS が優先されます。

    • [IP アドレス/サブネットマスク(IP Address/Subnet Mask)]:Cisco NSO サーバーの IP アドレスサブネットマスクを入力します。

      重要

       

      NSO プロバイダーの IP アドレスまたは FQDN を変更または更新する場合は、対応する仮想データゲートウェイからデバイスを切断し、再接続する必要があります。これを行わないと、プロバイダーの変更は MDT 収集ジョブに反映されません。

    • [ポート(Port)]:HTTPS の場合、HTTPS を使用して NSO にアクセスするには、etc/ncs/ncs.conf で NSO VM の設定と一致するポートを入力します。NSO ではデフォルトポートとして 8888 を使用します。

    • [モデル(Model)]:ドロップダウンリストからモデル([Cisco-IOS-XR]、[Cisco-NX-OS]、または [Cisco-IOS-XE])を選択し、関連付けられている NED ドライババージョンを入力します。トポロジで使用するデバイスのタイプごとにモデルを追加します。複数ある場合は、サポートされている別のモデルを追加します。

    • [バージョン(Version)]:NSO のデバイスモデルにインストールされている NED ソフトウェアバージョンを入力します。

  2. オプション値:

    • [タイムアウト(Timeout)]:Cisco NSO サーバーへの接続がタイムアウトするまでの待機時間(秒単位)。デフォルトは 30 秒です。

ステップ 4

[プロバイダプロパティ(Provider Properties)] で、[プロパティキー(Property Key)] forward 、[プロパティ値(Property Value)] true と入力します。このプロパティは、Cisco Crosswork ネットワークコントローラ ソリューションを使用して UI 内でプロビジョニング操作をできるようにし、Crosswork API ゲートウェイを介して NSO へのノースバウンド インターフェイスを有効にする場合に必要です。

(注)  

 

Cisco Crosswork には、NSO アプリケーションを Crosswork UI から相互起動するオプションがあります(この機能は、読み取り専用権限を持つユーザーロールでは使用できません)。相互起動機能を有効にするには、次のいずれかの設定で Cisco NSO をプロバイダとして追加します。

  • Property Key nso_crosslaunch_url では、[プロパティーキー(Property Key)] フィールドに有効な URL が入力されています。

  • プロトコルは HTTPHTTPS で、プロバイダは到達可能です。

上記の設定のいずれかが存在する場合、相互起動アイコン()が [プロバイダ名(Provider Name)] 列に表示されます。または、ウィンドウの右上隅にある起動アイコンを使用して、NSO アプリケーションを相互起動することができます。

ステップ 5

すべての必須フィールドに入力したら、[保存(Save)] をクリックしてプロバイダとして Cisco NSO を追加します。

ステップ 6

[プロバイダー(Providers)] ウィンドウで、作成した NSO プロバイダーを選択し、[アクション(Actions)] > [ポリシーの詳細の編集(Edit Policy Details)] をクリックします。

選択した NSO プロバイダーの [ポリシーの詳細の編集(Edit Policy Details)] ウィンドウが表示されます。

ステップ 7

環境の要件に合わせて構成フィールドを編集します。[保存(Save)] をクリックして変更を保存します。


次のタスク

以下のインストールワークフローに戻ります。

(オプション)Cisco NSO Layered Service Architecture の設定

このセクションは、Cisco NSO Layered Service Architecture(LSA)展開を選択した場合にのみ適用されます。

Cisco NSO LSA を使用すると、任意の数のデバイスノードを追加して、メモリとプロビジョニングのスループットを向上させることができます。大規模なサービスプロバイダーまたは企業は、Cisco NSO を使用して、数十万を超える管理対象デバイスに及ぶ、数百万の加入者またはユーザーのサービスを管理しています。これを実現するには、LSA と呼ばれる階層化された方法でサービスを設計できます。

Cisco Crosswork Network Controller を大規模な顧客向けに位置付けるために、このソリューションは既存の Cisco NSO LSA アーキテクチャと互換性があります。

次の手順に従って、Cisco NSO LSA をいつ使用するかを決定します。

  1. 展開がスタンドアロンか Cisco NSO LSA かを確認します。

  2. 展開がスタンドアロンの場合は、使用可能な最大メモリを確認します。使用可能な最大メモリが現在のメモリ状態よりも多い場合は、Cisco NSO LSA を展開する必要があります。


    (注)  


    スタンドアロン展開から Cisco NSO LSA 展開への移行は、現在サポートされていません。

Cisco NSO LSA の詳細情報を取得し、Cisco NSO LSA を設定するには、「NSO Layered Service Architecture」を参照してください。