詳細解説! Cisco NexusをOpenFlow switchとして使ってみよう .(2. OpenFlow Agentのセットアップ)


 

今回はシスコの代表的なスイッチCisco Nexus をOpenFlowスイッチとして使うシリーズの第2回です。まだ第1回を見ていない人は先にそちらを見てください。前回説明した通り、大まかな手順は以下の1-5ステップなのですが、今回は「2."Plug-in for OpenFlow"のアンインストール」から見ていきます。

1.Cisco Nexus 3000のOS/Biosバージョンアップ
2."Plug-in for OpenFlow"のアンインストール
3."Cisco OpenFlow Agent"のセットアップ
4.OpenFlow コントローラ(POX/OpenDaylight)の準備
5.Cisco Nexus 3000とコントローラの接続

 

2."Plug-in for OpenFlow"のアンインストール

Cisco 公式のWebマニュアル(https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus/openflow/b_openflow_agent_nxos_n3kn9k/b_openflow_native_agent_nxos_7x_chapter_01.html)にもありますが、”OpenFlow Agent”を使用するためには古いOpenFlowプラグインである"Plug-in for OpenFlow"をアンインストールする必要があります。
手順は同じくCiscoの公式Webマニュアル(https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus/openflow/b_openflow_agent_nxos_n3kn9k/b_openflow_native_agent_nxos_7x_appendix_0100.html#id_40740)にあります。
製品によってはこの” Plug-in for OpenFlow”はそもそもインストールされていないことがありますので、その場合は本手順はスキップしてください。インストール有無は以下のコマンドで確認できます。

Switch# show run | section openflow

3."Cisco OpenFlow Agent"のセットアップ

Ciscoの公式Webマニュアル(https://www.cisco.com/c/en/us/td/docs/switches/datacenter/nexus/openflow/b_openflow_agent_nxos_n3kn9k/b_openflow_native_agent_nxos_7x_chapter_011.html)に従い、セットアップを行います。しかし、2017年11月現在、マニュアルにおいて間違っている箇所がいくつかあり、この公式Webマニュアル通りには進めません。まずは以下、注意点を列挙しておきます。


1.”enable”コマンドはいらない。(コマンドを打ってもエラーになる。)
    マニュアルには手順上、書いていますがNexus3000にはこのコマンドありません。管理者には権限がすでにありますのでこのコマンドは実行する必要がありません。


2.” system switch-mode n9k”コマンドはいらない。
   手順ではNexus3000シリーズにおいて、Nexus9000モードをアクティベイトすることが必須と書かれていますが、こちらのコマンドはありません。また、必要ありません。関連手順はスキップしてください。

 

それではセットアップ例を列挙します。詳細はWebマニュアルを確認してください。

3-1. コンフィグモードでグローバル変数の設定
  switch# configure terminal
  switch(config)# spanning-tree mode mst
  switch(config)# vlan 1-512
  switch(config-vlan)# exit
  switch(config)# copy running-config startup-config

3-2インターフェースの設定。
  switch(config)# interface ethernet1/1
  switch(config-if)# switchport mode trunk
  switch(config-if)# channel-group 2
  switch(config-if)# no shutdown
  switch(config-if)# exit

上記をインターフェースの箇所を変えて1/2、1/3と繰り返してください。
(例:
switch(config)# interface ethernet1/2)
:

 switch(config)# copy running-config startup-config


3-3 OpenFlow Agent用に Logical Switch を設定。
  ここではスイッチとコントローラをつなぐルートとしてvrf managementポートを使用した例を記載します。使えるパイプラインを確認後、設定を行います。

   switch(config)# openflow
   switch(config-ofa)# show openflow hardware capabilities
   switch(config-ofa)# switch 1 pipeline 201
   switch(config-ofa-switch)# of-port interface ethernet1/1
   switch(config-ofa-switch)# of-port interface ethernet1/2
   switch(config-ofa-switch)# of-port interface ethernet1/3
   switch(config-ofa-switch)# controller ipv4 172.16.201.68 port 6633 vrf management security none

上記はこのスイッチからコントローラー(アドレス:172.16.201.68, ポート:6633)にvrf managementポート経由で接続するためのコマンド例です。

最後に設定を保存して終了です。
   switch(config-ofa-switch)# end
   switch# copy running-config startup-config

これでCisco Nexus スイッチ側の設定は終了です。次回は実際にOpenFlowコントローラーをインストールして、スイッチと接続してみましょう。