SONiC が現代のネットワーク運用に革命をもたらす理由
さまざまなネットワーク・オペレーティング・システムの現場で何年も過ごしてきたネットワーク・エンジニアとして、私はSONiC(Software for Open Networking in the Cloud)が現代のデータセンター・ネットワーキングのゲームチェンジャーとして登場したことを目の当たりにしてきました。CCIE を取得し、大小さまざまな企業ネットワークに携わるうちに、SONiC が従来のプロプライエタリな NOS と真に異なる点を理解するようになりました。今日は、SONiC が先進的な組織にとって特に魅力的である主なメリットを 3 つ紹介します。
コンテナ化:モノリシックな型を破る
従来のネットワークオペレーティングシステムは、歴史的にモノリシックな獣であり、緊密に結合され、相互に依存するコンポーネントは、一緒にアップグレードしなければならず、運用上の頭痛の種となり、障害領域を増大させてきました。SONiCは、コンテナ化されたアーキテクチャにより、このモデルを根本的に破壊します。
SONiC の各ネットワーク機能は、独自のコンテナで実行され、プロセス間の真の分離を実現します。このアーキテクチャは、ルーティングプロトコルデーモン、スイッチ抽象化インターフェース(SAI)、管理サービスがすべて互いに分離されていることを意味する。BGP にパッチを当てる必要があるときは、他のサービスを中断したり、システムのフルリロードを必要とすることなく、そのコンテナだけを更新できます。
本番環境にSONiCを導入した経験では、このコンテナ化によってネットワークの安定性を維持する能力が劇的に向上しました。例えば、OSPF の実装にバグが発見されたとき、その特定のコンテナだけを以前のバージョンにロールバックすることができました。以前のNOSでは、スイッチOS全体を完全にダウングレードする必要がありました。
コンテナ・ベースのアーキテクチャは、リソースの割り当てと監視にエレガントなアプローチも提供する。各コンテナには特定のCPUとメモリー制約を与えることができ、予期せぬイベント時に単一のネットワーク機能がシステム・リソースを独占するのを防ぐことができる。これは、特定のサービスが異常な動作をしている理由を分析する必要があったトラブルシューティング・セッションで、非常に貴重であることが証明された。
自動化第一のアプローチ:APIのすべて
私のように、CLI インターフェースで数え切れないほどの時間を費やし、デバイスを一つ一つ手動で設定してきた。SONiC は、自動化を中核に据えることで、そのような運用モデルからの脱却を象徴しています。
SONiC は、コンフィギュレーションとステート情報の中心的なソースとして Redis データベースを使用します。このデータベース中心のアプローチは、CLI、SNMP、APIコールのいずれを通じて行われた設定変更も、最終的には同じデータベースを更新することを意味します。これにより、管理インターフェイス間でこれまでにない一貫性が提供され、多くのネットワークを悩ませる「コンフィギュレーション・ドリフト」が解消されます。
SONiC の REST API サポートは包括的で、基本的なインターフェース設定から複雑な BGP ポリシー操作まで、あらゆることが可能です。さらに重要なことは、これらのAPIは後付けではなく、システム自体が使用する主要なインターフェースであるということです。この "自分のドッグフードを食べる "アプローチにより、APIは堅牢で、よくメンテナンスされ、有能であり続けることができます。
私のチームの環境では、この API ファーストのアーキテクチャを活用して、ネットワーク変更の CI/CD パイプラインを構築している。開発者がネットワーク設定を変更したプルリクエストを提出すると、本番環境にデプロイする前に、SONiC テスト環境で自動テストが行われます。これにより、変更の失敗率が 60% 以上減少し、デプロイ速度が加速しました。
さらに、SONiC は、Ansible や Terraform などの業界標準の自動化ツールをネイティブサポートしているため、車輪の再発明は必要ありません。コミュニティが管理するモジュールは包括的で、定期的に更新されるため、最小限の労力で SONiC デバイスを既存の自動化フレームワークに統合できます。
ベンダーロックインのないエンタープライズグレードの機能
SONiCの最も注目すべき点は、オープンソースモデルによってエンタープライズグレードの機能を実現している点でしょう。プロプライエタリな代替製品とは異なり、SONiCは、Arista、Cisco、Dell、Juniper、Mellanox、および多くのホワイトボックスメーカーなど、複数のベンダーのハードウェア上で動作します。
機能セットは印象的で、さらに増え続けている:
- 包括的なルーティングプロトコルのサポート(BGP、OSPF、IS-IS)
- EVPN、VXLAN、VRFなどの高度な機能
- データセンター・アプリケーション向けのディープ・バッファーのサポート
- 堅牢なQoSメカニズム
- 詳細な遠隔測定とモニタリング機能
本番環境にSONiCを導入した経験から、EVPNの実装には特に感心しています。最近、マルチテナントのデータセンターを独自のソリューションからSONiCに移行しましたが、EVPN機能は、複雑なオーバーレイ要件に十分すぎるほど対応できることが証明されました。
テレメトリー機能は特筆に値する。SONiCは、gNMIとKafkaインターフェースを通じて、デバイスの状態とパフォーマンスに関するリッチで構造化されたデータをエクスポートします。これにより、最新の観測可能なプラットフォームとの統合が可能になり、以前は高価でクローズドなエコシステムでしか利用できなかったリアルタイムのネットワーク分析が可能になります。
これらの機能が真に優れているのは、オープンなコミュニティ主導の開発によって実装されていることです。BGPの実装にエッジケースを発見し、それが私たちの特定のトラフィックパターンに影響を与えたとき、私たちはベンダーが問題を認識し、彼らのタイムラインでパッチを開発するのを待つのではなく、コミュニティに修正を提供することができました。
結論ネットワークオペレーティングシステムの未来
プロプライエタリなネットワークオペレーティングシステムを長年使用してきた経験から、SONiCはデータセンターネットワーキングの未来を象徴していると確信しました。コンテナ化されたアーキテクチャーは柔軟性と耐障害性を提供し、自動化機能はエラーを減らしながらオペレーションを加速し、機能セットはベンダーロックインのない商用代替品に匹敵します。
SONiCは、まだすべての環境に適しているわけではないが(キャンパス・ネットワークや一部の特殊なサービス・プロバイダー機能は、依然として困難な状況にある)、その急速な開発ペースとコミュニティの拡大は、その適用可能性が時間の経過とともに拡大することを示唆している。
SONiC は、ベンダーのロックインを回避しつつ、ネットワーク・インフラストラクチャの近代化を検討している組織にとって、真剣に検討する価値がある。学習曲線は存在するが、運用上のメリットは大きく、コミュニティのサポートは向上し続けている。より多くのネットワーキング専門家がコンテナベースのアーキテクチャとインフラストラクチャ・アズ・コードの実践に精通するようになれば、SONiC のアプローチはますます例外ではなく、期待される標準になるでしょう。
ジョシュ・ソール
Senior Vice President – Product
Josh Saul has pioneered open source network solutions for more than 25 years. As an architect, he built core networks for GE, Pfizer and NBC Universal. As an engineer at Cisco, Josh advised customers in the Fortune 100 financial sector and evangelized new technologies to customers. More recently, Josh led marketing and product teams at VMware (acquired by Broadcom), Cumulus Networks (acquired by NVIDIA), and Apstra (acquired by Juniper).