らくがきちょう

なんとなく

Cisco ACI の Infra VLAN ID は多くの場合 3,967 がオススメ

Cisco ACI で APIC の初期設定を行う際、Infra VLAN を指定する必要があります。 今回はこの Infra VLAN についてメモします。 尚、このメモでは何箇所か Cisco 社のサイトから文章を引用していますが、引用元はいずれも Cisco Application Centric Infrastructure Best Practices Guide の Fabric Infrastructure VLAN Recommendations 部分です。

結論

先に結論を述べます。

  • APIC の初期セットアップをしてしまうと以降、変更することは出来ない
  • Nexus が予約している VLAN 範囲とは重複しない方が好ましい
  • ネットワーク全体で一意である方が好ましい
  • 上記を踏まえ、(ネットワーク全体のどこにも使われていなければ)「3,967」がオススメ

Infra VLAN は後で変更出来ない

Fabric Infrastructure VLAN Recommendations には下記のように書かれています。 Infra VLAN の値は APIC の初期セットアップ時に一回だけ行います。 以降は変更出来ない為、意図しない値を指定しないように注意が必要です。

During fabric provisioning, the system requires a VLAN number to be used as the infrastructure VLAN. This VLAN is used for control communication as a reserved overlay VLAN between the fabric nodes (leaf, spine, and APIC controllers) to bring up the fabric. This VLAN is hard coded on the fabric nodes.

Infra VLAN はネットワーク全体で一意な方が好ましい

同じく、Fabric Infrastructure VLAN Recommendations には「If possible, this VLAN number should be unique within the network.」と書かれています。

If possible, this VLAN number should be unique within the network. In a scenario where the infrastructure VLAN is extended outside of the ACI fabric (for example, if using Cisco AVS or OpenStack integration with Opflex), this VLAN might need to traverse other (non-ACI) devices. In that case, be sure that the infrastructure VLAN does not fall within a range that is prohibited on the non-ACI device. The following figure shows an example of the reserved VLAN range within a Cisco Nexus 7000:

Infra VLAN の値は 3,967 がオススメ

前提として、Leaf / Spine (Nexus) で内部的に予約されている VLAN 範囲は show system vlan reserved で確認することが出来ます (※ NX-OS の Nexus であれば show vlan internal usage で確認出来ると思います)。

aci-leaf1# show system vlan reserved

system current running vlan reservation: 3968-4095

つまり、3,968 〜 4,095 は Nexus が内部用に予約している為、「ユーザが利用するのは避けた方が良い」範囲と考えられます。 同じく、Fabric Infrastructure VLAN Recommendations には下記の記載もあります。

In many cases, VLAN 3967 is a good choice for the ACI infrastructure VLAN to avoid the issue outlined in the preceding section.

「3,968 〜 4,095 は避けつつ」「ネットワーク全体で使われていなさそうな VLAN ID」となると、3,967 が妥当と思われるのか、Infra VLAN の値には「3,967 が推奨」と書かれています。

設定された Infra VLAN の確認方法

初期設定時に指定された Infra VLAN の値は以下の方法で確認出来ます。

APIC で bond I/F を確認する

APIC は何も設定しなくても、初期状態で Inbound 側の接続が「eth2-1 と eth2-2 で構成された bonding インターフェイス」で接続されます。 この Bonding インターフェイスに対して Infra VLAN で指定した VLAN タグの付与されたサブインターフェイスが自動的に作成されますので、ifconfig 等でこの Bonding インターフェイス(の、タグ)を確認することで「Infra VLAN の値」を把握することが出来ます。

aci-apic1# ifconfig | grep "bond0\."
bond0.3967: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1496

Web UI の System → Controllers から確認する

発想は「APIC の bond0 を確認する」手順と同じですが、Web UI の SystemControllers からいずれかの APIC を選択し、Interfaces を見ても Infra VLAN の値を把握することが出来ます。

f:id:sig9:20190406204654p:plain

Leaf/Spine の show コマンドで確認する

Leaf/Spine では幾つかの show コマンドで Infra VLAN の値を確認することが出来ます。 例えば show vlan extended の実行結果から Name が infra:default の vlan Encap を調べることで Infra VLAN の値を把握することが出来ます。

aci-leaf1# show vlan extended


 VLAN Name                             Encap            Ports
 ---- -------------------------------- ---------------- ------------------------
 8    infra:default                    vxlan-16777209,  Eth1/1, Eth1/11,
                                       vlan-3967        Eth1/12, Eth1/13,
                                                        Eth1/21, Eth1/25,
                                                        Eth1/26, Eth1/27,
                                                        Eth1/48, Po2
        ・
        ・
        ・

他にも show system internal epm vlan all で確認することも出来ます。 このコマンドでは Type が Infra になっている VLAN の Access Encap の値を確認することで Infra VLAN の値を把握することが出来ます。

aci-leaf1# show system internal epm vlan all


+----------+---------+-----------------+----------+------+----------+-----------
   VLAN ID    Type      Access Encap     Fabric    H/W id  BD VLAN    Endpoint
                        (Type Value)     Encap                          Count
+----------+---------+-----------------+----------+------+----------+-----------
 8           Infra BD 802.1Q       3967 16777209   13     8          1
        ・
        ・
        ・

参考