はじめに
本記事でご説明する機器の動作については、使用するハードウェア機器やNetwork OS(以降、NOS)との組み合わせなどから、一部動作が異なる、もしくは省略される場合があります。
概ね作業フローは共通していますが、全ての組合せで細部の動作を確認することが難しいことから、以降の説明とお手元の実機動作で一部相違が発生する可能性があります。

ホワイトボックススイッチへのNOSインストール
- Edgecore製品をはじめとするホワイトボックススイッチは、製品出荷時においてNOSはインストールされておらず、ONIEのみが付属されています。
- ONIEを介してNOSをインストールすることで製品としての利用が可能です。
- 本記事では手動のインストール方法をいくつかご紹介します。

ONIE(Open Network Install Environment)
- ホワイトボックススイッチ向けのインストール環境兼ブートローダー
- Accton, Agema, Big Switch Networks, Broadcom, Cumulus Networks, Dell, Penguin Computing, Quantaなどのメンバーにより開発され、OCP(Open Computer Project)に提供されています。
- ONIEはEdgecore製品に付属されており、すぐに利用が可能です。
NOSインストール事前準備
- 対象となるホワイトボックススイッチにコンソール接続を行います。
端末接続ケーブル:RS-232Cケーブル、スイッチ側はRJ45を使用
※一部のスイッチではRJ45以外のタイプもあります。 - コンソール接続の通信条件
キャラクター :8bit
ストップビット :1bit
パリティ :なし
フロー制御 :なし
ボー・レート :115200bps
ONIEによるNOSインストール方法
- WEBサーバーから手動でダウンロード(本記事で紹介)
- FTP/TFTPサーバーから手動でダウンロード(本記事で紹介)
- USBメモリーからの自動ダウンロード
- DHCP/WEBサーバーを利用したインストールの自動化

1.装置起動時にONIE画面に遷移させ、以下いずれかの方法でeth0のIPアドレスを取得
・DHCPによる自動取得(初期動作)
・自動割り当て済の固定IPアドレスを使用(192.168.3.10/24等、機器により異なります。)
・固定IPアドレスを付与
2.WEB or FTP or TFTPサーバーを指定し、インストーラーをダウンロード
NOS手動インストール手順
①ONIE選択画面への遷移

- NOSインストール済みで、新たなNOSを上書きインストールする場合
装置起動後、上記のような画面が出るまで待ちます。
表示されたら方向キーで「ONIE」を選択します。 - NOS未インストールの場合
装置起動後、ONIEのプロンプト画面(手順③)まで自動的に遷移
②インストール画面への遷移

「ONIE:Install OS」を選択
選択後、ONIEのプロンプト画面へ遷移します。
③discoveryの停止
ONIE:/ # onie-discovery-stop
- 初期動作は自動探索(discovery)が有効状態のため、手動インストールの際には停止を行います。
- コマンド入力中にもdiscovery動作が走ってしまうため、TAB補完による入力を推奨します。
④管理ポート(eth0)への設定
固定IPアドレス付与
ONIE:/ # ip addr add <ipアドレス/サブネットマスク> dev eth0
- DHCPによる自動割り当てや、初期値で割り当て済みの固定のIPアドレスを使用する場合は設定不要です。
- Edgecore製品の管理ポート(eth0)には初期値で固定IPアドレスが割当て済みです。
192.168.3.10/24等が割り当てられていますが、機器により異なります。
管理ポート(eth0)のインターフェース情報表示
ONIE:/ # ifconfig eth0
- eth0の初期値のIPアドレスが192.168.3.10の場合、固定のIPアドレス設定後も表示上は初期値が表示されます。
- 初期値のIPアドレスを削除するには以下のコマンドを使用します。
ONIE:/ # ip addr del <ipアドレス/サブネットマスク> dev eth0

デフォルトゲートウェイの設定
ONIE:/ # route add default gw <ipアドレス>
インストール環境において必要に応じて設定してください。
ルート情報の表示
ONIE:/ # route -n

⑤インストーラーダウンロード
・TFTPによるダウンロード
ONIE:/ # onie-nos-install tftp://<tftpサーバーのIPアドレス>/<ファイル名>
・HTTPによるダウンロード
ONIE:/ # onie-nos-install http://<webサーバーのIPアドレス>/<ファイル名>
・インストーラーのファイルサイズは数100MBあるため、ダウンロード完了まで時間がかかります。
・事前に、TFTPサーバーまたはWEBサーバーにNOSのインストーラーを準備してください。

⑥インストーラー実行後の流れ
インストーラーダウンロード完了後、以下の処理が自動で実行されます。
・装置再起動後、NOSインストールの実行
・装置の自動再起動
・NOSログイン画面への遷移
Cumulus Linuxを例に、以下にインストール実行中の画面を示します。




ライセンスの有効化について
フロントポートへのアクセス、設定を有効にするためにはライセンスの有効化が必要です。
ここでは、Cumulus Linux(Cumulus Networks社)とOcNOS(IP infusion社)におけるライセンス有効化の方法について説明します。
Cumulus Linuxのライセンス有効化方法
①装置へのログイン
初期ID/Passwordの cumulus/CumulusLinux! を使用します。
②ライセンスの投入
・ライセンス投入コマンド
cumulus@cumulus:~$ sudo cl-license -i
・sudo権限のPassword入力を求められるので、ログイン時Passwordを投入
・ライセンスをコピー&ペーストし、Enter入力後、Ctrl+dを実行

③投入したライセンスの反映
以下いずれかのコマンドを実行し、ライセンスを反映します。
cumulus@cumulus:~$ sudo systemctl restart switchd.service
cumulus@cumulus:~$ sudo reboot
④ライセンス有効化の確認
以下のコマンドで確認を行います。
cumulus@cumulus:~$ sudo cl-license

OcNOSのライセンス有効化方法
注意点
- OcNOSインストール後は、ライセンス投入が完了するまで、enableモードやconfigモードへ移行することはできません。
- ライセンス投入はTFTP/FTP/HTTPを用いたコマンドを使用します。
ONIEで設定したeth0のIPアドレス、デフォルトゲートウェイの設定は引き継がれるため、これらを利用します。 - 時刻/タイムゾーンの設定を事前に実施しないと、ライセンスが正常に反映されない場合があります。
後述するrootアカウントからの事前設定を推奨します。
①rootアカウントからの時刻/タイムゾーン設定
- ID/Passwordは root/root を使用します
- 時刻設定
ソフトウェアクロックの設定
root@AS5812-54X:~# date -s "Fri Jul 20 11:51:00 2018"
ハードウェアクロックへの書き込み
root@AS5812-54X:~# hwclock -w - タイムゾーンの設定
root@AS5812-54X:~# dpkg-reconfigure tzdata

②ocnosアカウントのログイン ※以降はocnosアカウント上の作業
- ID/Passwordは ocnos/ocnos を使用します。
③対象機器のMACアドレス確認
- ライセンス確認コマンドを使用します。
OcNOS>show license

④TFTPサーバーからライセンスファイルをダウンロード
- ライセンスダウンロードコマンド
OcNOS>license get tftp://192.168.1.100/IPI-XXXXXXXXXXXX.bin
※機器のMACアドレスに対応したラインセンスファイルをダウンロードする必要があります。
※HTTP、FTPによるダウンロードも可能です。
⑤ライセンス有効化の確認
OcNOS>show license

⑥enableモード、configモードへの移行確認
- ライセンス有効化後、両モードへの移行が可能なことを確認します。

最後までご覧いただきありがとうございました!
ホワイトボックススイッチに興味ある方はこちらへ
