Hetzner Cloudは、どこからでもアプリケーションに到達できるよう信頼性の高いネットワーク接続が不可欠な仮想マシンホスティングサービスを提供しています。同社のアプローチは一貫して、物理ネットワークインフラストラクチャではなくホストシステムにネットワーク機能を配置することを好んでおり、これにより柔軟性が高まり、チーム間の関心事の分離が明確になると考えています。この哲学は、ネイティブなLinuxブリッジと静的ルートを使用した初期のvServer提供(2011年)から、BGPルーティングを伴うCephベースのハイパーコンバージド構成(2015年)を経て、Hetzner Cloudが2018年にサービスを開始した際に採用された直接IPv4ルーティングへと進化を形作ってきました。
この画像は、記事で説明されている初期のネットワーク設計を示しており、Hetzner CloudはネイティブなLinuxブリッジと静的ルートを使用してホストシステムにネットワーク機能を配置し、初期のvServer提供を行っていました。
Hetzner Cloudの現在のネットワークスタックの中心は、データパスがLinuxカーネルに存在するオープンソースのマルチレイヤー仮想スイッチであるOpen vSwitch(OVS)です。標準的なオーケストレーションソリューションであるOpen Virtual Network(OVN)を採用する代わりに、Hetznerは各仮想マシンが必要とする特定のOpenFlowルールを設定するPythonベースのカスタムコントローラーFlusskrebsを開発しました。これらのフローは、パブリックネットワークアクセス、ネットワークごとに固有のVNIを使用したVXLANカプセル化されたプライベートネットワーク、およびデフォルトの送信SMTPブロックを含むユーザー設定のファイアウォールルールを実装します。各ホストは、現在LACP/LAGでボンディングされているが独立したBGPルーティングパスへ移行中のデュアル10 Gb/sアップリンクインターフェースを介して接続され、Linuxシステムを経由して仮想マシンがネットワークインターフェースを接続する中央のOVSブリッジに到達します。

この画像は、記事で説明されているHetzner Cloudの現代的なネットワークスタックの核心コンポーネントを示しており、OVS、Flusskrebs、およびVXLANベースのプライベートネットワークを含みます。
100万台以上のクラウドサーバーをサポートしているにもかかわらず、現在のOVSベースのアーキテクチャはスケーラビリティ、復元力、柔軟性の課題に直面しており、これがHetznerのSDNチームが完全に自社設計の新しいネットワークスタックを構築する動機となっています。これらの制約の具体例として、netfilterテーブルのオーバーフローを防ぎ、公平なリソース共有を確保するため、内部ツールctcountがサーバーごとにアクティブな同時接続数を80,000に制限していることが挙げられます。この制限に達すると、既存の接続が閉じられるまで新しい接続を確立することはできません。進行中の開発は、Hetznerの運用要件に適合したソリューションを作りながらスケーラビリティを向上させ、プライベートネットワークのIPv6サポートなどの機能を有効にすることを目的としています。