はじめに
Proxmox VEのクラスタを更新して10GbE対応していくにあたり、そろそろ10GbEポートが必要になりました。
Ceph用はXikeStorの10GbEのOEMなどを適当に見繕ったのですが、仮想マシンに割り当てるポートの方は現行のICX6430のリプレースを同時に行いたかったので、ポート数やVLAN設定などの面で少し要件がありました。
候補としては大体このあたりを考えていたのですが、Brocade ICX6430-24の後継にあたるRuckus ICX7150-24が落札できてしまったので、とりあえずそれになりました。
というわけで、簡単にセットアップの記録を書いておきたいと思います。
外観
GbEが24 + 2ポート、10GbEが4ポートというオーソドックスな構成。

中古だったので耳無し。GbEが2ポートおまけで付いてるのって新鮮ですね。
電源を入れた当初はコイル鳴きを感じて外れ個体だったかと思ったんですが、慣らし運転している間に落ち着いたので事なきを得ました。
コンソール接続確認
Proxmox VEにscreenを入れてシリアルコンソールで繋いでみる。
1
2
3
4
5
6
7
|
~# screen -S ttyS0 /dev/ttyS0 9600
CLTSRWANSW01-01>
CLTSRWANSW01-01>enable
User Name:
Password:
Error - Incorrect username or password.
CLTSRWANSW01-01>
|
見たところ、前のユーザーの設定が丸々残っているようなので、ファームウェアの入れ替えついでに全部削除する。
見ないのは武士の情け(面倒なだけでもある)
ファクトリーリセット
まずは電源を引っこ抜いて挿し直して b
キーを連打して ICX7150-Boot>
プロンプトを出します。
1
2
3
4
5
6
7
8
9
10
11
12
|
Ruckus Wireless Bootloader: 10.1.14T225 (Nov 15 2018 - 04:59:18 -0800)
Booted from partition 1
DRAM: Validate Shmoo parameters stored in flash ..... OK
ICX7150-24 Copper (Non-POE), PVT1
SYS CPLD VER: 0x4 Released Ver: 0xa
Writing Shmoo values into flash .....
device 0 offset 0x0, size 0xc0000
Enter 'b' to stop at boot monitor: 0
ICX7150-Boot>
|
次に、TFTPサーバーでブートローダーとファームウェアを配布できるように準備します。
これには https://fohdeesha.com/docs/brocade-overview.html に書いてあるキットをほぼそのまま使います。
まずは必要なファイルがセットになったzipをありがたく拝借して適当なLinuxマシンの上で展開します。
1
2
3
4
|
mkdir ~/icx7150
cd ~/icx7150/
wget https://fohdeesha.com/docs/store/brocade-01-08-2025.zip
unzip brocade-01-08-2025.zip
|
上記のキットに含まれるファームウェアバージョンは SPR08095qufi
でした。
Ruckusのページの最新版は SPR08095rufi
だったので TFTP-Content/ICX7xxx/
配下に追加しておきます。(コマンド略)
Info
Ruckusのアカウントは表玄関から普通に作ったような記憶があります。
ただBrocadeからの移行でいつどうやったか、正直覚えてないんですわ。
次に適当なLinuxマシンでTFTPサーバーを立てます。
1
2
3
4
|
sudo apt install tftpd-hpa
sudo systemctl disable tftpd-hpa
sudo vi /etc/default/tftpd-hpa
sudo systemctl restart tftpd-hpa
|
設定ファイルは以下の通り。
1
2
3
4
5
6
|
# /etc/default/tftpd-hpa
TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/root/icx7150/brocade-01-08-2025/TFTP-Content"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="--secure -vvvv"
|
最後にスイッチ側の操作です。
ブート中のプロンプトを出すところまで進めて止めてあるので、一時的なIPアドレスを設定してTFTPサーバーからuboot imageをロードして再起動します。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
ICX7150-Boot>setenv ipaddr 192.168.122.96
ICX7150-Boot>setenv netmask 255.255.255.0
ICX7150-Boot>setenv serverip 192.168.122.26
ICX7150-Boot>setenv image_name ICX7xxx/SPR08090mc.bin
ICX7150-Boot>setenv uboot ICX7xxx/mnz10118.bin
ICX7150-Boot>update_uboot
Loading image to Uboot Partition 2
Change GMAC speed to 1000MB
Using bcm_xgs_gmac-0 device
TFTP from server 192.168.122.26; our IP address is 192.168.122.96
Filename 'ICX7xxx/mnz10118.bin'.
Load address: 0x61007dc0
Loading: ######################################################
6.9 MiB/s
done
Bytes transferred = 786944 (c0200 hex)
sf erase 0x0 0xc0000
copying uboot image to flash, it will take sometime...
sf write 0x61007fc0 0x0 0xc0000
device 0 offset 0x0, size 0xc0000
TFTP to Flash Done.
ICX7150-Boot>saveenv
ICX7150-Boot>reset
resetting ...
|
reload中にブートローダで止めるように b
を連打します。
再度ブートプロンプトで止めたら、一時的なIPアドレスを削除して、工場出荷状態に戻すため factory set-default
コマンドを実行して再びreloadします。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
|
resetting ...
device 0 offset 0x0, size 0xc0000
using GPIO[7] to reset
Ruckus Networks Bootloader: 10.1.18T225 (Jul 13 2020 - 01:53:18 -0700)
Booted from partition 2
DRAM: Validate Shmoo parameters stored in flash ..... OK
ICX7150-24 Copper (Non-POE), PVT1
SYS CPLD VER: 0x4 Released Ver: 0xa
Crashkernel Disabled
device 0 offset 0xbfe00, size 0x200
device 0 offset 0x0, size 0xc0000
Enter 'b' to stop at boot monitor: 0
ICX7150-Boot>factory set-default
Execution of "factory set-default" will remove all user data like config, keys etc.
Do you want to continue? (Y/N) Y
Command executed successfully
ICX7150-Boot>setenv ipaddr
ICX7150-Boot>saveenv
ICX7150-Boot>reset
resetting ...
|
今度はそのままOSが立ち上がってくるのを見守ります。
これで初期化されたICX7150になります。
初期設定
以下は参考程度にどういった設定が出来るのかを書いていきます。
そのほか、必要な設定を探す場合はCommScope社(Ruckusの親会社)のドキュメントから Search Results - “labelkey=icx7150” あたりを探せば良いでしょう。
なお、Ciscoライクな基本コマンドである enable
とか configure terminal
とか write memory
については説明略。
DHCP Clientの無効化と管理ポートのアドレス設定
interface management 1
というのが管理用ポート。シリアルポートの隣にあります。
とはいえ、どうしてもOut-of-Bandな管理ポートが必要な場合以外は管理用VLANにアドレスを振ってポートを節約する方が良いと思います。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
ICX7150-24 Router>enable
No password has been assigned yet...
ICX7150-24 Router#configure terminal
ICX7150-24 Router(config)#ip dhcp-client disable
ICX7150-24 Router(config)#interface management 1
ICX7150-24 Router(config-if-mgmt-1)#ip address 192.168.122.7 255.255.255.0
ICX7150-24 Router#write memory
There is no startup config file, unable to save legacy config
Flash Memory Write (8192 bytes per dot)
.
Write startup-config done.
Copy Done.
ICX7150-24 Router#
|
ファームウェアの更新
初期化時に使っていたTFTPサーバーをそのまま流用して、設置したファームウェアをインストールできます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
ICX7150-24 Router#copy tftp flash 192.168.122.26 ICX7xxx/SPR08095rufi.bin primary
ICX7150-24 Router#Load to buffer (8192 bytes per dot)
..................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Processing the bundle image...
Flashing application image to Primary partition...
SYNCING IMAGE TO FLASH. DO NOT SWITCH OVER OR POWER DOWN THE UNIT(65536 bytes per dot)...
................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
Flashing bootrom image...
SYNCING IMAGE TO FLASH. DO NOT SWITCH OVER OR POWER DOWN THE UNIT(65536 bytes per dot)...
............
Post processing bundle image...
Bundle image processed successfully
|
SSHの有効化
SSHの有効化には crypto key generate
してから no ip ssh disable
が必要。Cisco同様ちょっと面倒。
ログインユーザーの追加と aaa authentication
でローカル認証の設定を追加しておきます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
ひとまずSSHを使えるようにするのと、管理面をちょこちょこ調整。
ICX7150-24 Router>enable
No password has been assigned yet...
ICX7150-24 Router#configure terminal
ICX7150-24 Router(config)#crypto key zeroize
RSA Key pair not found
ICX7150-24 Router(config)#crypto key generate rsa modulus 2048
Creating RSA key pair, please wait...
ICX7150-24 Router(config)#
RSA Key pair is successfully created
ICX7150-24 Router(config)#username niwaniwa password .....
ICX7150-24 Router(config)#enable super-user-password .....
ICX7150-24 Router(config)#aaa authentication login default local
ICX7150-24 Router(config)#no ip ssh disable
enabling the SSH server
|
ちなみに、公開鍵を直接設定する方法はどうやら無さそうです。
パスワード認証ではなく公開鍵認証でログインしたい場合は、公開鍵をTFTPサーバーから登録しておく必要があります。
1
2
3
4
5
|
sw2#copy tftp flash 192.168.122.26 id_ed25519.pub ssh-pub-key-file
Parameter Validation Successful
....File Download Done
File Write Done
File Download Complete
|
システム、管理機能の設定
以下の設定をざっと入れます。
特に再起動が必要なJumbo frameの有効化はあらかじめ入れておきたいですね。
- web-uiとtelnetの無効化
- jumbo frameの有効化 (再起動が必要。対応しているのはMTU 10200 bytesまで)
- lldpの有効化
- ntp clientの設定
- タイムゾーンをJapan/Tokyoに変更
- ホスト名をsw2に変更
1
2
3
4
5
6
7
8
9
10
11
12
13
|
ICX7150-24 Router#configure terminal
ICX7150-24 Router(config)#no telnet server
ICX7150-24 Router(config)#no web-management http
ICX7150-24 Router(config)#jumbo
Jumbo mode setting requires a reload to take effect!
ICX7150-24 Router(config)#lldp run
ICX7150-24 Router(config)#ntp
ICX7150-24 Router(config-ntp)#disable serve
ICX7150-24 Router(config-ntp)#server 192.168.122.31
ICX7150-24 Router(config-ntp)#exit
ICX7150-24 Router(config)#clock timezone gmt GMT+09
ICX7150-24 Router(config)#hostname sw2
sw2(config)#write memory
|
10Gポートライセンスの有効化
10Gポートですが、工場出荷状態のデフォルト設定では1G設定になっています。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
SSH@sw2(config)#show run interface
interface management 1
ip address 192.168.122.7 255.255.255.0
!
interface ethernet 1/3/1
speed-duplex 1000-full
!
interface ethernet 1/3/2
speed-duplex 1000-full
!
interface ethernet 1/3/3
speed-duplex 1000-full
!
interface ethernet 1/3/4
speed-duplex 1000-full
!
|
そして、10GbEポートがあるので当然使えるだろうと思うかもしれませんが、ライセンスが必要です。
1
2
3
4
5
6
7
8
|
SSH@sw2#conf terminal
Warning: 1 user(s) already in config mode.
SSH@sw2(config)#interface ethernet 1/3/1 to 1/3/4
SSH@sw2(config-mif-1/3/1-1/3/4)#speed-duplex 10g-full
PoD: No license present for port 1/3/1
PoD: No license present for port 1/3/2
PoD: No license present for port 1/3/3
PoD: No license present for port 1/3/4
|
結論から言うと license install perpetual 1 4x10gr
して interface ethernet 1/3/1 to 1/3/4
に speed-duplex 10g-full
設定を入れればいいのですが、詳しい説明は https://fohdeesha.com/docs/7xxx.html に任せます。
10Gポートの確認
SFP+を使用する予定なので、光レベルを確認するために optical-monitor
設定が必要です。
1
2
3
4
|
SSH@sw2#configure terminal
SSH@sw2(config)#optical-monitor
SSH@sw2(config)#optical-monitor non-ruckus-optic-enable
SSH@sw2(config)#write memory
|
これで光レベルが確認できるようになります。
1
2
3
4
5
6
7
8
9
|
SSH@sw2#show interfaces brief ethernet 1/3/1
Port Link State Dupl Speed Trunk Tag Pvid Pri MAC Name
1/3/1 Up Forward Full 10G None No 1 0 609c.9ff5.216f
SSH@sw2#show optic 1/3/1
Port Temperature Voltage Tx Power Rx Power Tx Bias Current
+-----+-------------+-------------+-------------+-------------+---------------+
1/3/1 40.4296 C 3.3198 volts -001.7489 dBm -001.6825 dBm 8.096 mA
Normal Normal Normal Normal Normal
|
管理用VLANへのIPアドレス設定
ケーブルやポートがもったいないのでVLAN1に管理用アドレスを設定します。
managementポートは使う予定はありませんが、万が一のために適当なサブネットのアドレスを設定しておきました。
1
2
3
4
5
6
7
8
|
SSH@sw2(config)#vlan 1
SSH@sw2(config-vlan-1)#router-interface ve 1
SSH@sw2(config-vlan-1)#interface management 1
SSH@sw2(config-if-mgmt-1)#ip address 192.168.0.7/24
SSH@sw2(config-if-mgmt-1)#interface ve 1
SSH@sw2(config-vif-1)#ip address 192.168.122.10/24
SSH@sw2(config-vif-1)#end
SSH@sw2#write memory
|
showコマンドを一括表示する
showコマンドで --More--
を表示しないで一度に出力する場合は skip-page-display
する。
1
2
3
4
|
SSH@sw2#page-display
Enable page display mode
SSH@sw2#skip-page-display
Disable page display mode
|
ログアウトするとリセットされるので、永続化したい場合は設定として入れることもできます。
個人的には、不用意に長い出力に見舞われることがあるのでデフォルトはskipしない方が良いかなと思います。
1
2
|
SSH@sw2#conf terminal
SSH@sw2(config)#enable skip-page-display^C
|
VLANの設定
例えば以下のようにVLAN 100のUntaggedポートとTaggedポートを設定する場合
- VLAN 100
- ethernet 1/2/1, 1/2/2: untagged
- ethernet 1/1/1 - 1/1/3, 1/3/1 - 1/3/3: taggeg
設定は以下のようになります。
1
2
3
|
SSH@sw2(config)#vlan 100 name Sample
SSH@sw2(config-vlan-100)#tagged ethe 1/1/1 to 1/1/3 ethe 1/3/1 to 1/3/3
SSH@sw2(config-vlan-100)#untagged ethe 1/2/1 to 1/2/2
|
vlan 1がデフォルトVLANですが、vlan 100のtaggedポートに割り当てても、vlan1のuntagged portsからは外れません。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
SSH@sw2#show vlan
Total PORT-VLAN entries: 2
Maximum PORT-VLAN entries: 1024
Legend: [Stk=Stack-Id, S=Slot]
PORT-VLAN 1, Name DEFAULT-VLAN, Priority level0, Off
Untagged Ports: (U1/M1) 1 2 3 4 5 6 7 8 9 10 11 12
Untagged Ports: (U1/M1) 13 14 15 16 17 18 19 20 21 22 23 24
Untagged Ports: (U1/M3) 1 2 3 4
Tagged Ports: None
Mac-Vlan Ports: None
Monitoring: Disabled
PORT-VLAN 100, Name WAN, Priority level0, Off
Untagged Ports: (U1/M2) 1 2
Tagged Ports: (U1/M1) 1 2 3
Tagged Ports: (U1/M3) 1 2 3
Mac-Vlan Ports: None
Monitoring: Disabled
|
おしまい
ICX7150-24を導入する前に使っていたのがICX6430-24なのですが、関連する話として過去に ICX6430のファームウェアをアップデートするよ という記事書いています。
ただ、特にそれ以上話題にはしていませんでした。
2013年頃に2台セットで調達して、以来12年間休まず働き続けてくれたいい子でした。
今回のICX7150-24は海外サイトから中古で購入したものなのでどうなるか分かりませんが、長生きして欲しいものです。
Ruckusのファームウェアやドキュメントを眺めていたところ、どうやらRESTCONFも使えるらしいので時間があれば試してみる…つもりではある。