libzmqにVSOCKサポートを追加した

Use Vsock with Libzmq

Linuxカーネル4.8以降に存在するAF_VSOCKは、VMとハイパーバイザー間の通信用ソケットファミリーだ。libzmqにはVMCI実装はあったがVSOCKがなかったため、筆者はVMCIのコードをほぼコピーしてPRを提出。これによりPythonやRubyなどあらゆる言語のバインディングでVSOCKが使え、Curve認証やreq/rep、pub/subといったlibzmqの機能を仮想マシン間通信で利用できるようになる。安定版リリースまでは、最新のlibzmqコミットでビルドしたpyzmqフォークが提供されている。

libzmqにVSOCKがあると、多くの利点が得られる。AF_VSOCKをlibzmqバインディングを持つあらゆる言語(python、ruby、nodejs、perl、java、lua…)で使える。AF_VSOCK上でlibzmqの機能(curveによる認証、さまざまなメッセージパターン、req/rep、pub/sub)を使える。
  1. dwrodri

    VMでサンドボックス化されたソフトウェアを必要としつつ、ホスト/ゲスト間の手っ取り早いブリッジも必要とする人々にとって、これは本当に役立つだろうと想像できる。素晴らしい貢献だ!

  2. sthustfo

    ゲストVMがハイパーバイザーと通信する典型的なユースケースは何ですか?Proxmoxのリンク(https://pve.proxmox.com/wiki/Qemu-guest-agent)には2つのユースケースが挙げられています。

    1. ゲストのシャットダウン

    2. バックアップ/スナップショット中のゲストシステムのフリーズ

    他の可能なユースケースにも興味があります。

  3. remijouannet

    こんにちは、最近libzmqにAF_VSOCKを追加する貢献をしました。誰か試している人がいたら

この日のほかの記事

2026-09-10