『Cisco Nexus 7000 シリーズ NX-OS 基本設定ガイド、リリース 6.x』
PowerOn Auto Provisioning の使用方法
PowerOn Auto Provisioning の使用方法

PowerOn Auto Provisioning の使用方法

この章では、Cisco Nexus 7000 シリーズ デバイスに PowerOn Auto Provisioning(POAP)を導入し、使用する方法について説明します。

この章は、次の項で構成されています。

機能情報の確認

ご使用のソフトウェア リリースで、このモジュールで説明されるすべての機能がサポートされているとは限りません。 最新の警告および機能情報については、https:/​/​tools.cisco.com/​bugsearch/​ の Bug Search Tool およびご使用のソフトウェア リリースのリリース ノートを参照してください。 このモジュールで説明される機能に関する情報、および各機能がサポートされるリリースの一覧については、「新機能および変更された機能に関する情報」の章を参照してください。

PowerOn Auto Provisioning の概要

PowerOn Auto Provisioning(POAP)は、ネットワークに初めて導入された Cisco Nexus スイッチに対して、ソフトウェア イメージのアップグレードとコンフィギュレーション ファイルのインストールのプロセスを自動化します。

POAP 機能を備えた Cisco Nexus シリーズは、起動時にスタートアップ コンフィギュレーションが見つからないと、POAP モードを開始し、DHCP サーバを検索し、自分のインターフェイス IP アドレス、ゲートウェイ、および DNS サーバ IP アドレスを自力で設定します。 また、スイッチは TFTP サーバの IP アドレスまたは HTTP サーバの URL を取得し、コンフィギュレーション スクリプトをダウンロードします。このスクリプトはスイッチをイネーブルにして、適切なソフトウェア イメージとコンフィギュレーション ファイルをダウンロードしてインストールします。


(注)  


DHCP 情報は、POAP 処理中にだけ使用されます。


POAP のためのネットワーク要件

必要なインストール ファイルが格納されている Universal Serial Bus(USB)デバイスが使用できない場合、POAP には次のネットワーク インフラストラクチャが必要です。

  • インターフェイス IP アドレス、ゲートウェイ アドレス、および DNS(ドメイン ネーム システム)サーバをブートストラップする DHCP サーバ。

  • ソフトウェア イメージのインストールと設定のプロセスを自動化するコンフィギュレーション スクリプトが保管されている TFTP サーバ。

  • 必要なソフトウェア イメージとコンフィギュレーション ファイルが保管されている 1 台以上のサーバ。

図 1. POAP ネットワーク インフラストラクチャ

POAP コンフィギュレーション スクリプト

シスコから提供される参照スクリプトでは、次の機能がサポートされています。

  • スイッチ固有の識別子(シリアル番号など)を取得します。

  • スイッチ上にソフトウェア イメージ(システム イメージとキックスタート イメージ)がまだ存在しない場合は、それらのファイルをダウンロードします。 ソフトウェア イメージがスイッチ上にインストールされ、次回のリブート時に使用されます。

  • ダウンロードされた設定がスイッチの次回のリブート時に適用されるようにスケジュールします。

  • スタートアップ コンフィギュレーションとして設定を保存します。

Python プログラミング言語と Tool Command Language(tcl)を使用して開発されたコンフィギュレーション スクリプトのサンプルが用意されています。 これらのスクリプトのいずれかを、自分のネットワーク環境の要件に合わせてカスタマイズできます。

Cisco Nexus 7000 シリーズ デバイスでは、Python プログラミング言語は CLI コマンドを実行できる 2 つの API を使用します。 これらの API については、次の表で説明します。 これらの API の引数は CLI コマンドの文字列です。

API

説明

cli()

制御文字、特殊文字を含む CLI コマンドの未処理の出力を返します。

clid()

XML をサポートする CLI コマンドの場合、この API はコマンド出力を Python ディクショナリとして返します。

この API は、show コマンドの出力の検索に役立ちます。

POAP 処理

POAP プロセスには次のフェーズがあります。

  1. 電源投入

  2. USB の検出

  3. DHCP の検出

  4. スクリプトの実行

  5. インストール後のリロード

これらのフェーズ内では、他の処理や分岐点が発生します。 次に、POAP 処理のフロー図を示します。

図 2. POAP 処理



電源投入フェーズ

スイッチの電源を初めて投入すると、スイッチは製造時にインストールされたソフトウェア イメージをロードし、起動元となるコンフィギュレーション ファイルを探します。 コンフィギュレーション ファイルが見つからなかった場合、POAP モードが開始されます。

起動中、POAP を中止して通常のセットアップに進むかどうかを確認するプロンプトが表示されます。 POAP を終了することも、続行することもできます。


(注)  


POAP を続行する場合、ユーザの操作は必要ありません。 POAP を中止するかどうかを確認するプロンプトは、POAP 処理が完了するまで表示され続けます。


POAP モードを終了すると、通常のインタラクティブなセットアップ スクリプトが開始されます。 POAP モードを続行すると、すべての前面パネルのインターフェイスはデフォルト設定で設定されます。

DHCP 検出フェーズ

スイッチは、1 台以上の DHCP サーバからの DHCP オファーを要求する DHCP 検出メッセージを MGMT インターフェイスで送信します (次の図を参照)。Cisco Nexus スイッチ上の DHCP クライアントは、クライアント ID オプションのスイッチ シリアル番号を使用して、それ自体を DHCP サーバに識別させます。 DHCP サーバはこの ID を使用して、IP アドレスやスクリプト ファイル名などの情報を DHCP クライアントに返すことができます。

POAP には、3600 秒(1 時間)以上の DHCP リース期間が必要です。 POAP は、DHCP リース期間を確認します。 DHCP リース期間が 3600 秒(1 時間)に満たない場合、POAP は DHCP ネゴシエーションを実行しません。

また、DHCP 検出メッセージでは、DHCP サーバからの次のオプションも要求します。
  • TFTP サーバ名または TFTP サーバ アドレス:DHCP サーバは TFTP サーバ名または TFTP サーバ アドレスを DHCP クライアントに中継します。 DHCP クライアントはこの情報を使用して TFTP サーバに接続し、スクリプト ファイルを取得します。

  • ブートファイル名:DHCP サーバは DHCP クライアントにブートファイル名を中継します。 ブートファイル名には、TFTP サーバ上のブートファイルへの完全パスが含まれます。 DHCP クライアントは、この情報を使用してスクリプト ファイルをダウンロードします。

要件を満たす複数の DHCP オファーが受信された場合は、1 つのオファーがランダムに選択されます。 デバイスは、選択された DHCP サーバとの DHCP ネゴシエーション(要求と確認応答)を実行し、DHCP サーバはスイッチに IP アドレスを割り当てます。 POAP 処理の後続のステップでエラーが発生すると、IP アドレスは DHCP に戻されます。

要件を満たす DHCP オファーが存在しない場合、スイッチは DHCP ネゴシエーション(要求と確認応答)を実行せず、IP アドレスは割り当てられません。

図 3. DHCP 検出プロセス



スクリプトの実行フェーズ

デバイスが DHCP 確認応答の情報を使用してデバイス自体をブートストラップした後で、スクリプト ファイルが TFTP サーバからダウンロードされます。

スイッチは、コンフィギュレーション スクリプトを実行します。これにより、ソフトウェア イメージのダウンロードとインストール、およびスイッチ固有のコンフィギュレーション ファイルのダウンロードが行われます。

ただし、この時点では、コンフィギュレーション ファイルはスイッチに適用されません。スイッチ上で現在実行中のソフトウェア イメージがコンフィギュレーション ファイル内の一部のコマンドをサポートしていない可能性があるためです。 新しいソフトウェア イメージがインストールされた場合、スイッチのリブート後にそのソフトウェア イメージの実行が開始されます。 その時点でスイッチにコンフィギュレーションが適用されます。


(注)  


スイッチの接続が切断されると、スクリプトは停止し、スイッチはオリジナルのソフトウェア イメージとブートアップ変数をリロードします。


インストール後のリロード フェーズ

スイッチが再起動し、アップグレードされたソフトウェア イメージ上でコンフィギュレーションが適用(リプレイ)されます。 その後、スイッチは、実行コンフィギュレーションをスタートアップ コンフィギュレーションにコピーします。

POAP の注意事項および制約事項

POAP 設定時の注意事項および制約事項は次のとおりです。

  • この機能が動作するには、Cisco Nexus スイッチ ソフトウェア イメージで POAP をサポートしている必要があります。

  • POAP では、スイッチが設定されて動作可能になった後のスイッチのプロビジョニングをサポートしません。 スタートアップ コンフィギュレーションのないスイッチの自動プロビジョニングだけがサポートされます。

  • vPC(仮想ポート チャネル)リンクのスタティック ポート チャネルを使用している vPC ペアの一部である Cisco Nexus デバイスをブートストラップするために POAP を使用する場合、Cisco Nexus デバイスは POAP の起動時にそのすべてのリンクをアクティブにします。 vPC のリンクの端に二重接続されているデバイスは、Cisco Nexus デバイスに接続されているポート チャネル メンバ リンクにそのトラフィックの一部またはすべての送信を開始する場合があり、トラフィックが失われることがあります。

    この問題を回避するには、リンクが POAP を使用してブートストラップされている Cisco Nexus デバイスへのトラフィックの転送を誤って開始しないように、vPC リンクにリンク集約制御プロトコル(LACP)を設定します。

  • POAP を使用して、LACP ポート チャネル経由で Cisco Nexus 7000 シリーズ デバイスのダウンストリームに接続されている Cisco Nexus デバイスをブートストラップした場合、メンバー ポートをポート チャネルの一部としてバンドルできないと、Cisco Nexus 7000 シリーズ デバイスはデフォルトでそのメンバー ポートを一時停止します。 この問題を回避するには、インターフェイス コンフィギュレーション モードから no lacp suspend-individual コマンドを使用して、そのメンバー ポートを一時停止しないように Cisco Nexus 7000 シリーズ デバイスを設定します。

  • 重要な POAP の更新は syslog に記録され、シリアル コンソールから使用可能になります。

  • 重大な POAP エラーは、ブートフラッシュに記録されます。 ファイル名の形式は date-time_poap_PID_[init,1,2].log です。ここで、date-time の形式は YYYYMMDD_hhmmss で、PID はプロセス ID になります。

  • スクリプト ログは、ブートフラッシュ ディレクトリに保存されます。 ファイル名の形式は date-time_poap_PID_script.log です。ここで、date-time の形式は YYYYMMDD_hhmmss で、PID はプロセス ID になります。

    スクリプトのログ ファイルの形式を設定できます。 スクリプト ファイルのログ形式は、スクリプトで指定されます。 スクリプトのログ ファイルのテンプレートにはデフォルトの形式があります。ただし、スクリプト実行ログ ファイルに別の形式を選択できます。

  • POAP 機能にライセンスは必要ありません。デフォルトでイネーブルになっています。 ただし、POAP 機能が正しく動作するためには、ネットワークの導入前に適切なライセンスがネットワーク内のデバイスにインストールされている必要があります。


    (注)  


    適切なライセンスをインストールすることなく、POAP 機能を一時的に使用するには、コンフィギュレーション ファイルで license grace-period コマンドを指定できます。

    この回避策では、適切なライセンスを後からインストールすることができます。


POAP を使用するためのネットワーク環境の設定

手順
    ステップ 1   シスコが提供する基本設定スクリプトを変更するか、独自のスクリプトを作成します。
    ステップ 2   (任意)POAP のコンフィギュレーション スクリプトおよびその他の必要なソフトウェア イメージおよびスイッチのコンフィギュレーション ファイルを、スイッチにアクセスできる USB デバイスに配置します。
    ステップ 3   DHCP サーバを配置し、このサーバにインターフェイス、ゲートウェイ、および TFTP サーバの IP アドレスと、コンフィギュレーション スクリプト ファイルのパスと名前が指定されたブートファイルを設定します (この情報は、最初の起動時にスイッチに提供されます)。

    すべてのソフトウェア イメージおよびスイッチ コンフィギュレーション ファイルが USB デバイスにある場合は、DHCP サーバを配置する必要はありません。

    ステップ 4   コンフィギュレーション スクリプトをホストするための TFTP サーバを配置します。
    ステップ 5   ソフトウェア イメージおよびコンフィギュレーション ファイルをホストするための 1 つまたは複数のサーバを配置します。

    POAP を使用するスイッチの設定

    はじめる前に

    POAP を使用するようネットワーク環境がセットアップされていることを確認します。 詳細については、この項の前の項POAP を使用するためのネットワーク環境の設定を参照してください。

    手順
      ステップ 1   ネットワークにスイッチを設置します。
      ステップ 2   スイッチの電源を入れます。

      コンフィギュレーション ファイルが存在しない場合、スイッチは POAP モードで起動し、POAP を中止して、通常の設定を続行するかどうかを尋ねるプロンプトが表示されます。

      POAP モードで起動を続行するためのエントリは必要ありません。

      ステップ 3   (任意)POAP モードを終了して、通常のインタラクティブ セットアップ スクリプトを開始する場合は、y(yes)を入力します。

      スイッチが起動して、POAP 処理が開始されます。 詳細については、POAP 処理を参照してください。


      次の作業

      設定を確認します。

      デバイス コンフィギュレーションの確認

      POAP を使用してデバイスのブートストラップ後の設定を確認するには、次のコマンドのいずれかを使用します。

      コマンド

      目的

      show running-config

      実行コンフィギュレーションを表示します。

      show startup-config

      スタートアップ コンフィギュレーションを表示します。

      これらのコマンドの出力フィールドの詳細については、ご使用のデバイスの『Cisco Nexus Command Reference』を参照してください。