概要

プログラマビリティの概要

Cisco Nexus 9000 シリーズ スイッチ上で動作する Cisco NX-OS ソフトウェアには、次のような特徴があります:

  • 耐障害性

    クリティカルなビジネスクラスの可用性を確保します。

  • モジュラ型

    ビジネスニーズに対応する拡張機能があります。

  • 高度なプログラマティック

    アプリケーション プログラミング インターフェイス(API)を介した迅速な自動化とオーケストレーションを可能にします。

  • セキュア

    データと運用を保護し維持します。

  • 柔軟性

    新しいテクノロジーを統合して有効にします。

  • 優れた拡張性

    ビジネスと要件に対応して拡大できます。

  • 使いやすさ

    必要な学習量が少なく、展開がシンプルで、管理が容易です。

Cisco NX-OS オペレーティング システムでは、デバイスはユニファイド ファブリック モードで機能し、プログラムによる自動化機能を備えたネットワーク接続を提供します。

Cisco NX-OS には、オープン ソース ソフトウェア(OSS)と商用テクノロジーが含まれており、これらは自動化、オーケストレーション、プログラマビリティ、モニタリング、コンプライアンスをサポートします。

オープンな NX-OSの詳細については、https://developer.cisco.com/site/nx-os/を参照してください。

サポートされるプラットフォーム

Cisco NX-OS リリース 7.0(3)I7(1) 以降では、Nexus スイッチ プラットフォーム サポート マトリクスに基づいて、選択した機能をさまざまな Cisco Nexus 9000 および 3000 スイッチで使用するために、どの Cisco NX-OS リリースが必要かを確認してください。

標準的なネットワーク管理機能

  • SNMP(V1、V2、V3)

  • Syslog

  • RMON

  • NETCONF

  • CLI および CLI スクリプト

高度な自動化機能

デバイス上の拡張 Cisco NX-OS は、自動化をサポートします。プラットフォームには、Power On Auto Provisioning(POAP)のサポートが含まれています。

デバイス上の拡張 Cisco NX-OS は、自動化をサポートします。プラットフォームには、自動化をサポートする機能が含まれています。

プログラマビリティのサポート

スイッチ上の Cisco NX-OS ソフトウェアは、プログラマビリティを支援する複数の機能をサポートしています。

NX-API のサポート

Cisco NX-API を使用すると、HTTP ベースのプログラムによるスイッチへのアクセスが可能になります。このサポートは、オープンソースの Web サーバーである NX-API によって提供されています。NX-API では、Web ベース API を通じて Cisco NX-OS CLI のすべての構成機能および管理機能を提供しています。デバイスは、XML または JSON フォーマットで API 呼び出しの出力を公開するように設定できます。この API により、スイッチでの迅速な開発が可能になります。

Python スクリプティング

Cisco NX-OS は、Python v2.7.5 を、インタラクティブ モードと非インタラクティブ(スクリプト)モードの両方でサポートしています。

Cisco NX-OS リリース 9.3(5)以降 、Python 3 もサポートされています。

デバイスの Python スクリプト機能は、さまざまなタスクを実行するためのスイッチの CLI と、Power On Auto Provisioning(POAP)または Embedded Event Manager(EEM)アクションへのプログラムによるアクセスを提供します。Cisco NX-OS CLI を呼び出す Python コールへの応答は、テキストまたは JSON 出力を返します。

Python インタープリタは Cisco NX-OS ソフトウェアに含まれています。

Tcl スクリプティング

Cisco Nexus シリーズ スイッチは、Tcl(ツール コマンド言語)をサポートします。Tcl は、スイッチで CLI コマンドを柔軟に使用できるようにするスクリプト言語です。Tcl を使用して show コマンドの出力の特定の値を抽出したり、スイッチを設定したり、Cisco NX-OS コマンドをループで実行したり、スクリプトで EEM ポリシーを定義したりすることができます。

Broadcom シェル

Cisco Nexus 9000 シリーズ スイッチの前面パネルおよびファブリック モジュールのライン カードには Broadcom のネットワーク転送エンジン(NFE)が搭載されています。これらの NFE から Broadcom コマンドライン シェル(bcm-shell)にアクセスすることができます。

bash

Cisco Nexus スイッチは、Bourne-Again Shell(Bash)への直接アクセスをサポートします。Bash では、デバイス上の基盤となる Linux システムにアクセスし、システムを管理できます。

bash シェルへのアクセスと Linux コンテナのサポート

Cisco Nexus スイッチは、Linux シェルへの直接アクセスと Linux コンテナをサポートしています。Linux シェルへのアクセスでは、スイッチ上の基盤となっている Linux システムにアクセスして、基盤システムを管理できます。Linux コンテナを使用して、独自のソフトウェアを安全にインストールし、Cisco Nexus スイッチの機能を強化することもできます。たとえば、Cobbler などのベアメタル プロビジョニング ツールを Cisco Nexus スイッチにインストールして、トップオブラック スイッチからベアメタル サーバーを自動的にプロビジョニングすることができます。

ゲスト シェル

Cisco Nexus 9000 シリーズ スイッチは、ホストの Cisco Nexus 9000 NX-OS ソフトウェアから分離されたホスト システム上の Linux 実行スペースへの Bash アクセスを提供するゲスト シェルをサポートします。ゲスト シェルを使用すると、ホスト システム ソフトウェアに影響を与えることなく、必要に応じてソフトウェア パッケージを追加し、ライブラリを更新できます。

コンテナ トラッカーのサポート

Cisco NX-OS は、特定のスイッチ ポートの背後にあるコンテナの機能を理解するために、Kubernetes API サーバーと通信するように構成されます。

次のコマンドは、Kubernetes API サーバーと通信します。

  • show containers kubernetes コマンドは、HTTP 経由の API コールを使用して kube-apiserver からデータを取得します。

  • kubernetes watchresource コマンドは、デーモンを使用して要求されたリソースをサブスクライブし、kube-apiserver からのストリーミング データを処理します。

  • watch コマンドで割り当てられた action は、事前定義されたトリガーで実行されます。(たとえば、ポッドの追加または削除)。

Perl モジュール

より多くのアプリケーションをサポートするために、次の Perl モジュールが追加されました。

  • bytes.pm

  • feature.pm

  • hostname.pl

  • lib.pm

  • overload.pm

  • Carp.pm

  • クラス/構造体.pm

  • Data/Dumper.pm

  • DynaLoader.pm

  • エクスポータ/Heavy.pm

  • FileHandle.pm

  • ファイル/ベース名.pm

  • ファイル/Glob.pm

  • ファイル/仕様.pm

  • ファイル/仕様/Unix.pm

  • ファイル/stat.pm

  • Getopt/Std.pm

  • IO.pm

  • IO/File.pm

  • IO/Handle.pm

  • IO/Seekable.pm

  • IO/Select.pm

  • List/Util.pm

  • MIME/Base64.pm

  • SelectSaver.pm

  • Socket.pm

  • Symbol.pm

  • Sys/Hostname.pm

  • 時刻/ハイレゾ.pm

  • auto/Data/Dumper/Dumper.so

  • auto/File/Glob/Glob.so

  • auto/IO/IO.so

  • auto/List/Util/Util.so

  • auto/MIME/Base64/Base64.so

  • auto/Socket/Socket.so

  • auto/Sys/Hostname/Hostname.so

  • auto/Time/HiRes/HiRes.so