3年程前にホワイトボックススイッチのNOS(Network OS)であるSONiCをVirtualBoxにデプロイし、L2 MC-LAGやIP Clos構成等を組んで色々遊んでいたが、その際に導入したSONiCはMicrosoft社が開発しLinux Foundationで管理しているOSSなSONiCである。一方、OSS版SONiCをEdgecoreやDELL等のITベンダが独自にカスタマイズし商用版のSONiCとして提供している。
今回は商用版のSONiCにも触れてみようという事で、当記事の作成時の段階で無償で使用が可能なDELL版のSONiCをVMware Fusionにデプロイしコマンドの操作感等を確認した。
ホワイトボックススイッチNOSの今
前回のSONiC関連の記事から早いもので約3年が経ち...Cumulus Linuxを開発および販売していたCumulus Networks社がNVIDIA社に買収されNVIDIA Cumulus Linuxとなり、IP Infusion社のOcNOSとPica8社のPicOSを合わせた3社が商用版のホワイトボックススイッチNOSとしてある程度の地位を確保。OSSなホワイトボックススイッチのNOSは、FaceBookが自社サービスにて導入しているFBOSSと今回の記事にて扱っているSONiCの開発が今もなお活発で、他は停滞しているといった感じか。
特に、SONiCは国内外のデータセンタにてここ数年の間に急激に導入が進み、OSSなホワイトボックススイッチNOSではデファクトスタンダートになりつつあり、勢力図はほぼ決まりかけているだろう。
DELL版のSONiCとは
2020年にDELL社はEMC社との共同でEnterprise SONiC Distribution by Dell Technologies(Enterprise SONiC OS)を発表。以前当ブログにて扱っていたOSS版のSONiCとは異なり、ベンダのサポートやベンダ独自の実装が有る。また、OSS版のSONiCとは異なり/etc/sonic/config_db.jsonファイルの中にBGP等の設定の記載が無い為、BGPの設定をvtyshやsonic-cliで最初から行う事が出来る。
商用版のSONiCはDELLのEnterprise SONiC OSの他に、Edgecore社やNvidia社やBroadcom社等がそれぞれのベンダ毎にカスタマイズされたSONiCをリリースしている。
当記事では入手が容易なDELL版のSONiC(Enterprise SONiC OS)を扱う。
Enterprise SONiC OSの入手および下準備
下記のリンク先より、DELL版のSONiCであるEnterprise SONiC OSのイメージファイルをダウンロードする。
当記事の作成の段階ではユーザ登録は不要で、最新版ではなくバージョン4.1.1のダウンロードが可能だった。
VirtualBoxにデプロイする事は可能だがNICを認識しなかった為、VMware Fusionにてデプロイした。e1000が認識出来れば良いのでWindows環境ではVMware Workstationにデプロイする事は可能だろう。
https://www.dell.com/support/home/en-us/product-support/product/enterprise-sonic-distribution/drivers
ダウロードおよび下準備の流れは以下のとおり。
①上記のURLにアクセスし、Enterprise SONiC OS 4.1.1のgns3をダウンロード。
②ダウンロードしたDELL版SONiCのzipファイルを展開。
③中から出てきたEnterprise_SONiC_OS_4.1.1.imgファイルをEnterprise_SONiC_OS_4.1.1.vmdkに変換。
ダウンロードしたファイルはimg形式である為、VMware Fusionにてデプロイ出来るようにWindows環境にてNHCというツールでimg形式からvmdk形式に変換した。
https://euee.web.fc2.com/tool/nhc.html#nhc
当方の環境
ホスト機:macOS 14.4.1 / MacBook Pro 2020 / RAM: 16GB / CPU: Intel Core i5 2.0GHz
Hypervisor:VMware Fusion 12.2.5
ゲスト機:Enterprise SONiC OS 4.1.1
Enterprise SONiC OSのデプロイ
以下はVMware Fusion環境のEnterprise SONiC OSのデプロイの流れである。
VMware Fusionを立ち上げ、ウインドウ内左上の「+」をクリックし「新規」を選択。
尚、以下の画像内にて名前欄内の仮想アプライアンスの一覧の中に有るEnterprise SONiC-OS 4.1.1は、当記事作成前にテスト用にデプロイしたものである。
「インストール方法を選択」のウインドウ内に、SONiCのvmdkファイルをドラッグ&ドロップ。
「オペレーティング システムの選択」のウインドウ内にて、Linux > Debian 10.x (64ビット)の順に選択し、「続ける」をクリック。
「ファームウェア タイプを選択」のウインドウ内にて「ブートファームウェアの指定:」は「レガシーBIOS」を選択し、「続ける」をクリック。
「仮想ディスクを選択」のウインドウ内にて、「仮想ディスクオプションの選択:」は「既存の仮想ディスクを使用」にチェックを入れ、「仮想ディスクを選択...」をクリック。
Enterprise_SONiC_OS_4.1.1.vmdk選択し「仮想ディスクの個別コピーを作成する」にチェックを入れ「選択」をクリック。「仮想ディスクを選択」のウインドウに戻ったら「続ける」をクリック。
ディスクのコピーが実行される。ディスクのコピーは数秒で完了し、仮想マシンの設定のウインドウが表示される。
「終了」のウインドウ内にて「設定のカスタマイズ」をクリック。
「名前:」に任意の文字列(自分の場合「DELL_Enterprise_SONiC_OS_4.1.1」にした。拡張子は変更しない)を入力し「保存」をクリック。
設定項目の一覧が表示される。
一覧の中に有る「プロセッサとメモリ」をクリック。
仮想マシンのプロセッサとメモリの設定のウインドウが表示される。
自分の場合、以下の内容に設定した。
・プロセッサ:1個のプロセッサ コア
・メモリ:4096MB
・上記の設定後「すべてを表示」をクリック
設定項目の一覧に戻ったら、一覧の中に有る「ネットワークとアダプタ」をクリック。
ネットワークとアダプタの設定のウインドウが表示される。ここではSONiCの仮想NICの設定を行う。
Wi-Fiにチェックを入れ、詳細オプション欄内にて「生成」をクリックしMACアドレスを生成させる。
完了したら「デバイスを追加」をクリック。
「追加するデバイスの選択:」欄が表示される。
今のところSONiCの仮想NICは1つしかない為、ここでNICを追加する。
一覧の中の「ネットワークアダプタ」をクリックする。
ネットワークとアダプタの設定のウインドウが表示される。
LAN方向のNICを想定している為「Macをプライベート」にチェックを入れ、詳細オプション欄内にて「生成」をクリックしMACアドレスを生成させる。
完了したら「デバイスを追加」をクリック。
今回は仮想NICを8個作成した為、当手順を7回繰り返し実施した。
設定項目の一覧に戻る。以下の画像は、仮想NICを8個作成し終えた状態。
この後は不要なデバイスを削除する。SONiCにWebカメラは不要である為、「カメラ」をクリック。
「カメラを削除」をクリック。
「カメラを削除しますか。」が表示されたらウインドウ内の「削除」をクリック。
設定項目の一覧に戻る。SONiCにサウンドカードも不要である為、「サウンドカード」をクリック。
「カメラを取り除きますか。」が表示されたらウインドウ内の「削除」をクリック。
デプロイの設定は一旦完了となる。
設定のウインドウ(DELL_Enterprise_SONiC_4.1.1:設定)を閉じ、VMware Fusionのウインドウ内右上の三角ボタンをクリックし、SONiCを起動させる。
SONiCの起動が完了。
ログインID:admin、パスワード:YourPaSsWoRdを入力しSONiCにログイン。
しかしこの段階ではバックグランドで起動のプロセスが動いている為、3分程そのまま放置する。
sshd周りの設定をいじらなくても、この段階でSONiCへのsshログインが出来る。
IPアドレスはDebian GNU/Linuxでよく使われるip add sコマンドを叩くと表示される。
ログイン後の確認
sshログインの完了後、まずはshow versionコマンドを叩きSONiCのバージョンを確認した。
SONiCをビルドした日時やOSのバージョンおよびSONiCの内部で動作している各コンテナのバージョンやサイズ等が出力される。
OSS版のSONiCとの間でバージョンの値のフォーマットが異なっている事が分かる。
admin@sonic:~$ show version SONiC Software Version: SONiC-OS-4.1.1-Enterprise_Base Product: Enterprise SONiC Distribution by Dell Technologies Distribution: Debian 10.13 Kernel: 5.10.0-8-2-amd64 Config DB Version: version_4_1_1 Build commit: 988341d733 Build date: Mon Jul 24 13:40:05 UTC 2023 Built by: sonicbld@bld-lvn-csg-03 Platform: x86_64-kvm_x86_64-r0 HwSKU: DellEMC-S5248f-P-25G-DPB ASIC: vs ASIC Count: 1 Platform: x86_64-kvm_x86_64-r0 Serial Number: 000000 Uptime: 02:08:13 up 8 min, 2 users, load average: 2.02, 2.72, 1.75 Docker images: REPOSITORY TAG IMAGE ID SIZE docker-fpm-frr 4.1.1-Enterprise_Base 65aa7cb44f6a 517MB docker-fpm-frr latest 65aa7cb44f6a 517MB docker-iccpd 4.1.1-Enterprise_Base 4e92b4343089 493MB docker-iccpd latest 4e92b4343089 493MB docker-dhcp-relay 4.1.1-Enterprise_Base 70dbc1fd0a63 493MB docker-dhcp-relay latest 70dbc1fd0a63 493MB docker-nat 4.1.1-Enterprise_Base 54e3e777a688 492MB docker-nat latest 54e3e777a688 492MB docker-sonic-telemetry 4.1.1-Enterprise_Base b55f149a8a23 592MB docker-sonic-telemetry latest b55f149a8a23 592MB docker-lldp 4.1.1-Enterprise_Base 6e36cc7a39fb 495MB docker-lldp latest 6e36cc7a39fb 495MB docker-udld 4.1.1-Enterprise_Base fcfc748112c8 496MB docker-udld latest fcfc748112c8 496MB docker-vrrp 4.1.1-Enterprise_Base ef7712d23bdd 498MB docker-vrrp latest ef7712d23bdd 498MB docker-stp 4.1.1-Enterprise_Base bed5c1c2b5a9 493MB docker-stp latest bed5c1c2b5a9 493MB docker-sflow 4.1.1-Enterprise_Base 7fcc8350a4e9 492MB docker-sflow latest 7fcc8350a4e9 492MB docker-l2mcd 4.1.1-Enterprise_Base cedfae63e418 490MB docker-l2mcd latest cedfae63e418 490MB docker-teamd 4.1.1-Enterprise_Base aef87d7eaebd 490MB docker-teamd latest aef87d7eaebd 490MB docker-sonic-mgmt-framework 4.1.1-Enterprise_Base 8d22882d4351 655MB docker-sonic-mgmt-framework latest 8d22882d4351 655MB docker-orchagent 4.1.1-Enterprise_Base 434a94f997cd 485MB docker-orchagent latest 434a94f997cd 485MB docker-gbsyncd-vs 4.1.1-Enterprise_Base 5acefe23ee27 411MB docker-gbsyncd-vs latest 5acefe23ee27 411MB docker-platform-monitor 4.1.1-Enterprise_Base 6a8dcd157c01 618MB docker-platform-monitor latest 6a8dcd157c01 618MB docker-syncd-vs 4.1.1-Enterprise_Base 5353ab1ab547 418MB docker-syncd-vs latest 5353ab1ab547 418MB docker-router-advertiser 4.1.1-Enterprise_Base 15f0793fad91 411MB docker-router-advertiser latest 15f0793fad91 411MB docker-eventd 4.1.1-Enterprise_Base 9661414c9efb 412MB docker-eventd latest 9661414c9efb 412MB docker-snmp 4.1.1-Enterprise_Base 91976c87c7fb 434MB docker-snmp latest 91976c87c7fb 434MB docker-macsec 4.1.1-Enterprise_Base 7d8627e9e4cb 432MB docker-macsec latest 7d8627e9e4cb 432MB docker-tam 4.1.1-Enterprise_Base dd96443bad94 497MB docker-tam latest dd96443bad94 497MB docker-database 4.1.1-Enterprise_Base 22af43ab3f82 417MB docker-database latest 22af43ab3f82 417MB admin@sonic:~$
続いて/etc/sonic/config_db.jsonファイルを開き、SONiCの設定内容を確認。
OSS版のSONiCではBGPの設定が既に入っていたが、DELL版のSONiCではBGPの設定が入っていない事が分かる。
OSS版SONiCではこのファイルを編集してBGPの設定を行っていたが、このファイルはなるべく触れずvtyshで設定したかったので嬉しい。
admin@sonic:~$ sudo cat /etc/sonic/config_db.json { "CLASSIFIER_TABLE": { "class-oob-arp": { "DESCRIPTION": "", "ETHER_TYPE": "0x806", "MATCH_TYPE": "FIELDS" }, "class-oob-dhcp-client": { "DESCRIPTION": "", "ETHER_TYPE": "0x800", "IP_PROTOCOL": "17", "L4_DST_PORT": "68", "MATCH_TYPE": "FIELDS" }, "class-oob-dhcp-server": { "DESCRIPTION": "", "ETHER_TYPE": "0x800", "IP_PROTOCOL": "17", "L4_DST_PORT": "67", "MATCH_TYPE": "FIELDS" }, "class-oob-ip-multicast": { "DESCRIPTION": "", "DST_IP": "224.0.0.0/4", "ETHER_TYPE": "0x800", "MATCH_TYPE": "FIELDS" }, "class-oob-ipv6-multicast": { "DESCRIPTION": "", "DST_IPV6": "ff00::/8", "ETHER_TYPE": "0x86DD", "MATCH_TYPE": "FIELDS" } }, "COREDUMP": { "config": { "enabled": "true" } }, "DEVICE_METADATA": { "localhost": { "default_config_profile": "l3", "frr_mgmt_framework_config": "true", "hostname": "sonic", "hwsku": "DellEMC-S5248f-P-25G-DPB", "mac": "08:00:27:34:7e:78", "platform": "x86_64-kvm_x86_64-r0", "type": "LeafRouter" } }, "ECMP_LOADSHARE_TABLE_IPV4": { "ipv4": { "ipv4_dst_ip": "true", "ipv4_l4_dst_port": "true", "ipv4_l4_src_port": "true", "ipv4_protocol": "true", "ipv4_src_ip": "true" } }, "ECMP_LOADSHARE_TABLE_IPV6": { "ipv6": { "ipv6_dst_ip": "true", "ipv6_l4_dst_port": "true", "ipv6_l4_src_port": "true", "ipv6_next_hdr": "true", "ipv6_src_ip": "true" } }, "HARDWARE": { "ACCESS_LIST": { "COUNTER_MODE": "per-rule", "LOOKUP_MODE": "optimized" } }, "KDUMP": { "config": { "enabled": "true", "memory": "0M-2G:256M,2G-4G:256M,4G-8G:384M,8G-:448M", "num_dumps": "3" } }, "NEIGH_GLOBAL": { "Values": { "ipv4_arp_timeout": "1800", "ipv6_nd_cache_expiry": "1800" } }, "POLICY_BINDING_TABLE": { "CtrlPlane": { "INGRESS_QOS_POLICY": "oob-qos-policy" } }, "POLICY_SECTIONS_TABLE": { "oob-qos-policy|class-oob-arp": { "DESCRIPTION": "", "PRIORITY": "1010", "SET_POLICER_CIR": "256000" }, "oob-qos-policy|class-oob-dhcp-client": { "DESCRIPTION": "", "PRIORITY": "1020", "SET_POLICER_CIR": "512000" }, "oob-qos-policy|class-oob-dhcp-server": { "DESCRIPTION": "", "PRIORITY": "1015", "SET_POLICER_CIR": "512000" }, "oob-qos-policy|class-oob-ip-multicast": { "DESCRIPTION": "", "PRIORITY": "1000", "SET_POLICER_CIR": "256000" }, "oob-qos-policy|class-oob-ipv6-multicast": { "DESCRIPTION": "", "PRIORITY": "1005", "SET_POLICER_CIR": "256000" } }, "POLICY_TABLE": { "oob-qos-policy": { "DESCRIPTION": "QoS Ratelimiting policy for OOB port", "TYPE": "QOS" } }, "PORT": { "Ethernet0": { "admin_status": "down", "adv_speeds": "all", "alias": "Eth1/1", "autoneg": "off", "fec": "none", "index": "1", "lanes": "49", "link_training": "off", "mtu": "9100", "speed": "25000", "unreliable_los": "auto" }, "Ethernet1": { "admin_status": "down", "adv_speeds": "all", "alias": "Eth1/2", "autoneg": "off", "fec": "none", "index": "2", "lanes": "50", "link_training": "off", "mtu": "9100", "speed": "25000", "unreliable_los": "auto" }, : 省略 : "Ethernet76": { "admin_status": "down", "adv_speeds": "all", "alias": "Eth1/56", "autoneg": "off", "fec": "none", "index": "56", "lanes": "41,42,43,44", "link_training": "off", "mtu": "9100", "speed": "100000", "unreliable_los": "auto", "valid_speeds": "100000, 40000" } }, "SWITCH": { "switch": { "fdb_aging_time": "600" } }, "VERSIONS": { "DATABASE": { "VERSION": "version_4_1_1" } } } admin@sonic:~$
続いて/etc/sonic/frr/bgpd.confファイルを開き、SONiCのFRRの設定内容を確認。
BGPの設定は投入していない為、今の段階ではBGPの設定に関する記載は無い。
/etc/sonic/frr/bgpd.confファイルの中にManaged by sonic-cfggen DO NOT edit manually! の記載が有るとおり、管理者がこのファイルを直接編集する事は無い。
admin@sonic:~$ sudo cat /etc/sonic/frr/bgpd.conf ! ! =========== Managed by sonic-cfggen DO NOT edit manually! ==================== ! generated by templates/quagga/bgpd.conf.j2 with config DB data ! file: bgpd.conf ! ! ! template: common/daemons.common.conf.j2 ! hostname sonic password zebra enable password zebra ! log syslog informational log facility local4 !! agentx ! ! end of template: common/daemons.common.conf.j2! ! admin@sonic:~$
vtyshコマンドを叩き、vtyshモードに移行すると...
GNU ZebraおよびZebOSの開発者でありOcNOSを開発・販売しているIP Infusion社の創立者でもある石黒氏の名前が出力された。
admin@sonic:~$ vtysh Hello, this is FRRouting (version 8.2.2). Copyright 1996-2005 Kunihiro Ishiguro, et al. sonic#
これより慣れ親しんできた(?)Cisco IOSライクなコマンドを叩く事が出来る。
show versionコマンドを叩くとFRRのバージョンが出力される。
sonic# show version FRRouting 8.2.2 (sonic). Copyright 1996-2005 Kunihiro Ishiguro, et al. configured with: '--build=x86_64-linux-gnu' '--prefix=/usr' '--includedir=${prefix}/include' '--mandir=${prefix}/share/man' '--infodir=${prefix}/share/info' '--sysconfdir=/etc' '--localstatedir=/var' '--disable-option-checking' '--disable-silent-rules' '--libdir=${prefix}/lib/x86_64-linux-gnu' '--libexecdir=${prefix}/lib/x86_64-linux-gnu' '--disable-maintainer-mode' '--localstatedir=/var/run/frr' '--sbindir=/usr/lib/frr' '--sysconfdir=/etc/frr' '--with-vtysh-pager=/usr/bin/pager' '--libdir=/usr/lib/x86_64-linux-gnu/frr' '--with-moduledir=/usr/lib/x86_64-linux-gnu/frr/modules' '--disable-dependency-tracking' '--disable-rpki' '--disable-scripting' '--with-libpam' '--enable-doc' '--enable-doc-html' '--enable-snmp' '--enable-fpm' '--enable-iptrackd' '--disable-protobuf' '--disable-zeromq' '--disable-isisd' '--disable-eigrpd' '--disable-ldpd' '--disable-ripd' '--disable-ripngd' '--disable-ospf6d' '--disable-babeld' '--disable-vrrpd' '--disable-fabricd' '--enable-ospfapi' '--disable-ospfclient' '--disable-bgp-vnc' '--disable-pbrd' '--disable-nhrpd' '--disable-watchfrr' '--enable-multipath=256' '--enable-user=frr' '--enable-group=frr' '--enable-vty-group=frrvty' '--enable-configfile-mask=0640' '--enable-logfile-mask=0640' 'build_alias=x86_64-linux-gnu' 'PYTHON=python3' sonic#
続けてshow running-configコマンドを叩く。
Ciscoルータのrunning-configのような形でFRRの設定内容が出力される。
sonic# show run Building configuration... Current configuration: ! frr version 8.2.2 frr defaults traditional hostname sonic log syslog informational log facility local4 agentx no service integrated-vtysh-config ! password zebra enable password zebra ! end sonic#
続けてshow ip routeコマンドを叩く。
自機に直接接続しているネットワークと、SONiCのカーネルで保持しているルート情報が出力される。
sonic# show ip route Codes: K - kernel route, C - connected, S - static, O - OSPF, B - BGP, T - Table, > - selected route, * - FIB route, q - queued route, r - rejected route, b - backup t - trapped, o - offload failure K>* 0.0.0.0/0 [0/202] via 192.168.3.1, eth0, 00:06:03 C>* 192.168.3.0/24 is directly connected, eth0, 00:06:03 sonic# sonic# exit admin@sonic:~$
最後に、sonic-cliコマンドを叩きklishモードに入る。
上記のvtyshと同様にCisco IOSライクなコマンドの実行が可能である。
当記事の作成のきっかけとなったのは、OSS版のSONiCでsonic-cliを叩いたら実行可能なコマンドが少なかったが、商用版のSONiCだったらもっと多くのコマンドが打てるのか確認したかった為。
admin@sonic:~$ sonic-cli sonic# sonic# show version Software Version : 4.1.1-Enterprise_Base Product : Enterprise SONiC Distribution by Dell Technologies Distribution : Debian 10.13 Kernel : 5.10.0-8-2-amd64 Config DB Version : version_4_1_1 Build Commit : 988341d733 Build Date : Mon Jul 24 13:40:05 UTC 2023 Built By : sonicbld@bld-lvn-csg-03 Platform : x86_64-kvm_x86_64-r0 HwSKU : DellEMC-S5248f-P-25G-DPB ASIC : vs Serial Number : Uptime : 04:45:35 up 2 min, 2 users, load average: 8.03, 4.49, 1.75 REPOSITORY TAG IMAGE ID SIZE docker-database 4.1.1-Enterprise_Base 22af43ab3f82 417MB docker-database latest 22af43ab3f82 417MB docker-dhcp-relay 4.1.1-Enterprise_Base 70dbc1fd0a63 493MB docker-dhcp-relay latest 70dbc1fd0a63 493MB docker-eventd 4.1.1-Enterprise_Base 9661414c9efb 412MB docker-eventd latest 9661414c9efb 412MB docker-fpm-frr 4.1.1-Enterprise_Base 65aa7cb44f6a 517MB docker-fpm-frr latest 65aa7cb44f6a 517MB : 省略 : docker-vrrp 4.1.1-Enterprise_Base ef7712d23bdd 498MB docker-vrrp latest ef7712d23bdd 498MB sonic#
sonic-cliモードに移行後?キーを叩くと多くのコマンドが出力される。
OSS版SONiCとは異なり、DELL版のSONiCではより多くのコマンドが実行出来る事がわかる。
admin@sonic:~$ sonic-cli sonic# sonic# ? clear Clear commands configure Enter configuration mode consistency-check Performs consistency check copy Perform file operations crypto Configure PKI debug Enter debugsh mode delete Delete the file from local filesystem dir Show folder contents exit Exit from the CLI fast-reboot fast-reboot image Image related commands interface interfaces Utility locator-led Locator Chassis LED Utility logger Enter messages into the system log ls Show folder contents no No commands under Exec mode ping Send ICMP ECHO_REQUEST to network hosts ping6 Send ICMPv6 ECHO_REQUEST to network hosts poe Reset PoE Port(s) reboot reboot renew Renew commands show Display running system information terminal Set terminal settings test Run diagnostics test program tpcm SONiC image installation manager traceroute Print the route packets take to the host traceroute6 Print the route packets take to the IPv6 host usb Mount or un-mount usb partitions warm-reboot warm-reboot write Save config sonic#
Configモードに移行し?キーを叩くと、OSS版SONiCより多くの設定コマンドが用意されている事が分かる。
sonic# sonic# configure terminal sonic(config)# ? aaa AAA configuration authentication Configure authentication modes bfd Configure BFD peers bgp Configure BGP instances class-map Configures class-map clock Configure clock copp-action Configure a CoPP action group core Configure coredump counters counters config crm Configure critical resource monitoring crypto Configure PKI default Apply default configuration dot1x Configure dot1x parameters. dropcounters Configure dropcounters end Exit to EXEC mode errdisable Error disable configuration exit Exit from current mode factory Modify factory default configuration hardware Configure ASIC parameters hostname Configure the system hostname interface Configure interfaces interface-naming Interface naming ip Configure Internet Protocol (IP) ipv6 Configure Internet Protocol v6 (IPv6) kdump Configure kdump parameters key Configure primary encryption key ldap-server Configure LDAP server line Session configuration link Create link state tracking group lldp LLDP configuration subcommands logging Configure syslog mab Configure MAB properties. mac Configure Media Access Control (MAC) mclag Configure MCLAG mirror-session Mirror session configuration nat Enter NAT configuration network-policy Network-policy configuration mode no Remove current configuration ntp Configure NTP servers pbf Policy based forwarding poe PoE configuration policy-map Configures policy-map port-group Port group configurations portchannel Configure PortChannel parameters priority-flow-control PFC configuration ptp Configure precision time protocol settings qos QoS Configuration radius-server Configure RADIUS client radv Enable Sonic Router Advertisement redirect Configure parameters for redirect roce Enable RoCEv2 default buffer configuration route-map Configure routing policies router Enter router mode service-policy Apply policy-map to interface sflow Configure sFlow snmp-server SNMP server configuration spanning-tree Spanning tree configuration ssh-server Configure SSH server suppress-fib-pending Suppresses newly learned BGP routes advertisement until programmed in hardware switch-resource Switch Resource Configuration swsslog SONiC logging severity level setting system System level configuration tacacs-server Configure TACACS servers tam Telemetry and monitoring configuration techsupport-export Configure techsupport export threshold Configure threshold for buffer pool. udld UDLD configuration usb Configure usb parameters username Add new user watermark Configure watermark ztp Configure ZTP sonic(config)# end sonic#
今回はここまで。
製品版のSONiCを試用する為にDELL版のSONiCであるEnterprise SONiC OSをVMware Fusionにデプロイし、設定ファイルのチラ見やモードの移行を試してみた。
デプロイ直後の状態ではOSS版のSONiCとは異なりBGPの設定は入っていない為、既存のBGPの設定の使い回しや削除等を実施する必要は無いので個人的にはこっちの方が好みではある。
今回はデプロイとvtyshおよびsonic-cliモードへの移行までの実施としたが、次回はOcNOSとの間でBGPのピアを張る等動作確認を行いたい。
参照サイト
https://sonicfoundation.dev/ SONiC Foundation
https://infohub.delltechnologies.com/en-us/p/enterprise-sonic-distribution-by-dell-technologies/ Enterprise SONiC Distribution by Dell Technologies
https://www.dell.com/support/home/ja-jp/product-support/product/enterprise-sonic-distribution/drivers DELL Enterprise NOS
https://infohub.delltechnologies.com/en-us/l/enterprise-sonic-distribution-by-dell-technologies-lifecycle-management/sonic-documentation-1/ SONiC Documentation ※SONiC本家のドキュメントサイトへのリンク
https://support.edge-core.com/hc/en-us/categories/360002134713-Enterprise-SONiC-Distribution-by-Edgecore Edgecore版SONiC
https://www.nvidia.com/ja-jp/networking/ethernet-switching/sonic/ NVIDIA版SONiC
https://jp.broadcom.com/products/ethernet-connectivity/software/enterprise-sonic Broadcom版SONiC
SONiCの関連記事
https://debslink.hatenadiary.jp/entry/20210131/1612091391 SONiCを少しかじってみた
https://debslink.hatenadiary.jp/entry/20210214/1613279732 SONiCのWarm Bootの動作確認
https://debslink.hatenadiary.jp/entry/20210320/1616230057 Cumulus LinuxとSONiCの設定ファイル
https://debslink.hatenadiary.jp/entry/20210627/1624789102 SONiCの解説動画 ※商用版向け?
https://debslink.hatenadiary.jp/entry/20210822/1629600666 SONiCとCumulus LinuxでBGP unnumbered
https://debslink.hatenadiary.jp/entry/20210902/1630584311 SONiCとCumulus LinuxでBGP/EVPN/VXLAN
https://debslink.hatenadiary.jp/entry/20210912/1631418907 SONiCとCumulus Linuxで4byte ASなBGP + IP Clos構成
https://debslink.hatenadiary.jp/entry/20220122/1642852049 SONiCでL2 MC-LAGを組んでみた