2020-09-19 03:19 AM
Network Services Orchestrator (NSO)の使用形態(インストール方法)には、以下の二種類があります。
ローカルインストール | 主に検証、開発用。複数のインスタンスを作成し、切り替える事も可能 |
システムインストール | 主に運用環境用。一つの Linux システムで、一つのインスタンスを使用 |
ローカルインストール では全てのファイルが、特定のディレクトリ以下に展開されます。サーバ起動・終了は、ncs コマンドを使用した、手動でのものとなり、検証や開発に使用されます。
一方、運用環境ではシステムインストールを使用し、NSO サーバの起動・終了は各 Linuxディストリビューションに依存した、service や systemctl コマンド等の、サービス管理ツールを使用します。各種設定ファイルは、/etc 以下に配置されるなど、一般的なサーバアプリケーションと同様のレイアウトとなります。
また、ファイルの配置場所以外にも、インストール時のデフォルト値が大きく違いますので、注意が必要です。
Network Services Orchestrator (NSO) は、単体のファイルで提供されます。
ファイル名の例: nso-4.2.1.linux.x86_64.signed.bin
これ自体は、バイナリデータが添付されたシェルスクリプトとなっており、以下のように展開し、インストーラを取り出します。この過程で、添付されている証明書を使用して、ファイルの署名確認も行われます。
root@linux:~# sh nso-4.2.1.linux.x86_64.signed.bin
Unpacking...
Verifying installer signature...
Downloading CA certificate from http://www.cisco.com/security/pki/certs/crcam2.cer ...
Successfully downloaded and verified crcam2.cer.
Downloading SubCA certificate from http://www.cisco.com/security/pki/certs/innerspace.cer ...
Successfully downloaded and verified innerspace.cer.
Successfully verified root, subca and end-entity certificate chain.
Successfully fetched a public key from tailf.cer.
Successfully verified the signature of nso-4.2.1.linux.x86_64.installer.bin using tailf.cer
root@linux:~#
取り出しされた nso-4.2.1.linux.x86_64.installer.bin がインストーラです。バイナリファイルが添付されたシェルスクリプトとなっており、同様に実行することで、NSOがインストールされます。
インストールは、上記で取り出したインストーラを使用して行います。
与えるオプションによりその方法が変わりますので、それぞれ説明をします。
また、--help をオプションとして起動することで、以下のようなヘルプ表示を行いますので、参考にして下さい。
root@linux:~# sh nso-4.2.1.linux.x86_64.installer.bin --help
This is the NCS installation script.
Usage: nso-4.2.1.linux.x86_64.installer.bin [--local-install] LocalInstallDir
Installs NCS in the LocalInstallDir directory only.
This is convenient for test and development purposes.
Usage: nso-4.2.1.linux.x86_64.installer.bin --system-install [--install-dir InstallDir]
[--config-dir ConfigDir] [--run-dir RunDir] [--log-dir LogDir]
[--run-as-user User] [--non-interactive]
...
--local-install を使用すると、ローカルインストールされます。デフォルト動作となっており、明示的にこのオプションを指定しない場合は、ローカルインストールとなります。
以下の例では、カレントディレクトリに nso-4.2.1 というディレクトリを作成し、その配下に全てのファイルを展開・インストールしています。
root@linux:~# sh nso-4.2.1.linux.x86_64.installer.bin nso-4.2.1
INFO Using temporary directory /tmp/ncs_installer.20755 to stage NCS installation bundle
INFO Unpacked ncs-4.2.1 in /root/nso-4.2.1
INFO Found and unpacked corresponding DOCUMENTATION_PACKAGE
INFO Found and unpacked corresponding EXAMPLE_PACKAGE
INFO Generating default SSH hostkey (this may take some time)
INFO SSH hostkey generated
INFO Environment set-up generated in /root/nso-4.2.1/ncsrc
INFO NCS installation script finished
INFO Found and unpacked corresponding NETSIM_PACKAGE
INFO NCS installation complete
root@linux:~#
ディレクトリ名を変更することで、複数インストールすることも可能です。
--system-install を指定することで、システムインストールを行います。--help の出力で示される様に、デフォルトインストール先ディレクトリに、内容別にファイルが展開・インストールされます。
Does a system install of NCS, suitable for deployment.
Static files are installed in InstallDir/ncs-<vsn>.
The first time --system-install is used, the ConfigDir,
RunDir, and LogDir directories are also created and
populated for config files, run-time state files, and log files,
respectively, and an init script for start of NCS at system boot
and user profile scripts are installed. Defaults are:
InstallDir - /opt/ncs
ConfigDir - /etc/ncs
RunDir - /var/opt/ncs
LogDir - /var/log/ncs
各ディレクトリは、以下の用途で使用されます。
環境変数 | パス | 用途 | |
InstallDir | NCS_DIR | /opt/ncs | NSO 本体 |
ConfigDir | NCS_CONFIG_DIR | /etc/ncs | ncs.conf, ssl 証明書, ssh 鍵、等 |
RunDir | NCS_RUN_DIR | /var/opt/ncs | packages 等、各インスタンスについてのファイル |
LogDir | NCS_LOG_DIR | /var/log/ncs | ログファイル |
また、使用している Linux Distribution での方法で、rc スクリプトが作成され、サービスとして登録されます。この結果、service ncs start や、systemctl start ncs といった方法で、サーバの起動・停止を行うことが出来ます。
NSOの起動方法は、上記で説明したインストール方法によって違います。また、ローカルインストールを行った場合は、インスタンスが作成されていないため、まずはそれを作成する必要があります。作成方法については、こちらをご参照下さい。
ローカルインストールを行った場合は、インスタンスのディレクトリ(RUN_DIR)がありませんので、ncs-setup コマンドで新規に作成します。
以下の例では、カレントディレクトリに ncs-run ディレクトリが作成されます。
$ ncs-setup --dest ./ncs-run
違うディレクトリ名とすることで、複数のインスタンスを作成することが出来ます。ただし、同時に起動することは出来ませんので、ご注意下さい。
インスタンスのディレクトリ(ncs-run等)へ cd コマンドで移動した後、以下のように ncs コマンドから起動して下さい。
$ cd ncs-run
$ ls -la
total 40
drwxr-xr-x 11 root root 374 Oct 1 10:00 .
drwxr-xr-x 9 root root 306 Oct 1 15:10 ..
-rw-r--r-- 1 root root 623 Oct 1 23:49 README.ncs
-rw-r--r-- 1 root root 1128 Oct 1 23:49 README.netsim
drwxr-xr-x 22 root root 748 Oct 1 15:09 logs
drwxr-xr-x 6 root root 204 Oct 1 15:09 ncs-cdb
-rw-r--r-- 1 root root 8235 Oct 1 10:00 ncs.conf
drwxr-xr-x 5 root root 170 Oct 1 23:49 packages
drwxr-xr-x 4 root root 136 Oct 1 23:49 scripts
drwxr-xr-x 14 root root 476 Oct 1 15:09 state
drwxr-xr-x 3 root root 102 Oct 1 23:49 target
$ ncs
$
問題がなければ、起動後は何も表示せず、プロンプトに戻ります。
NSOを終了する場合は、以下のコマンドを実行して下さい。
$ ncs --stop
実際のコマンドは、ディストリビューションによって違います。
起動
$ service ncs start
終了
$ service ncs stop
起動
$ systemctl start ncs
終了
$ systemctl stop ncs
NSO の各種動作パラメータは、ncs.conf ファイル内に記述され、起動時に有効となります。ローカルインストール、システムインストール共に、ncs.conf が生成され、配置されますが、その内容には違いがあります。
基本的に、ローカルインストールで作成される ncs.conf には、多くのデバッグ用設定が含まれます。何かの問題が発生し、それに対するトラブルシュートを行う場合、これらの設定が必要となります。
一方、システムインストールでは、それらデバッグ用の設定ではなく、出力ログレベル等が低い状態の運用環境向けの ncs.conf が生成されます。デバッグ情報の出力には、CPUやディスクスペースを使用するため、ローカルインストールで作成された ncs.conf をそのまま使用することは、大きなリスクとなります。この点に、注意してください。
NSO 4.2 以降では、スマートライセンスの登録が必要となります。登録されるまで、90日間はEvaluationモードで動作します。詳細については、こちらをご確認ください。
NSO にとって、CLIは一つの入力方法に過ぎません。Northbound接続として、NETCONF、REST、JSON-RPC等によっても、CLIと同様の結果を得ることが可能です。
CLIを起動するには、以下のコマンドを使用します。
$ ncs_cli
多くのオプションが存在しますが、以下のオプションが多く使われます。
NSO に登録されているユーザ、admin を使用し、Cisco スタイルのプロンプトを使用します。(-C をつけない場合は、Juniper スタイルとなります)
$ ncs_cli -u admin -C
admin connected from 10.1.1.1 using ssh on linux
admin@ncs#
Do anyone know how to install NCS in docker ?
Hi,
Installing NSO on docker is not supported. Technically it should work however without any special prerequisites at your own risk.
検索バーにキーワード、フレーズ、または質問を入力し、お探しのものを見つけましょう
シスコ コミュニティをいち早く使いこなしていただけるよう役立つリンクをまとめました。みなさんのジャーニーがより良いものとなるようお手伝いします
下記より関連するコンテンツにアクセスできます