「KubeCon NA 2022」から、WasmEdgeを開発するSecond StateのMichael Yuanのインタビュー
KubeCon NA 2022において、DockerがWebAssemblyのモジュールを実行する機能をテックプレビューとして発表を行った。その際のランタイムとして採用したのがWasmEdgeである。今回はWasmEdgeの開発をリードするSecond Stateの創業者兼CEOであるMichael Yuan氏のインタビューをお届けする。
自己紹介をお願いします。
私はMichael Yuan、WasmEdgeを開発しているSecond Stateの創業者でCEOです。大学生の頃は天体物理学を専攻していましたが、ソフトウェアの仕事に就きたいと思っていろいろな会社に行きました。Ph. Dを持っていればソフトウェアの仕事に就くのは簡単だと思ったんです。しかしどこも「ソフトウェアエンジニアとしては経歴が高過ぎる」と断られてしましました(笑)。そこでオープンソースの仕事をしたいと思って、JBossのプロジェクトに参加しました。その繋がりでRed Hatでも仕事していました。
Red HatがJBossを買収したからですね。
そうです。Red Hatで約3年、プロダクトマネージャーとして仕事をしました。オープンソースの仕事はそこで始めた感じですね。それから自分で起業したほか、いくつかの仕事を経てから中国に戻ろうと思って、パートタイムでベンチャーキャピタルの仕事をする中で中国で当時盛んになってきていたブロックチェインと出会ったんです。ブロックチェインは、要は分散処理のかたまりなんですね。高速に実行しなければいけないし、セキュアでなければいけないということで、ブロックチェインのコードをWebAssemblyで書くということを思い付くのは当然の流れだったと思います。Second Stateも、最初はブロックチェインのソフトウェア開発をやっていたんですよ。
Javaからブロックチェイン、そしてWebAssemblyということですか?
Javaは元々ブラウザーのためのソフトウェアだったんですが、サーバーで実行することが求められるようになりました。これはJavaScriptの代わりに開発されたWebAssemblyと同じ発想、つまりJavaとWebAssemblyは元々の発想が同じなんです。WebAssemblyもサーバーサイドで実行できることで可能性が広がったわけです。ただJavaは「Write Once, Run Anywhere」を目指していましたが、結果的にやり方が間違っていたと思いますね。
WebAssemblyとの出会いはその辺りからですね。高速でどこでも動くという部分に注目してWebAssemblyのランタイム、WasmEdgの開発に到達するわけですね。でも単にランタイムだけではエコシステムが広がりませんよね、それについては?
それがCNCFにWasmEdgeを寄贈した理由です。ソフトウェアを開発している企業なら、ソフトウェアの知的財産権を手放すなんて普通は考えませんよね? でもオープンソースの場合はそうすることで、それを使う人が増え、結果としてそのソフトウェアのエコシステムを拡げることに繋がります。コードそのものよりもコードに貢献してくれるコミュニティが何よりも大事というのは、オープンソースのカンファレンスでは良く聞く話ですよね。
そして今回発表されたDockerとの連携に繋がっていくわけですがその経緯を教えてください。
●参考:Introducing the Docker+Wasm Technical Preview
Dockerはコンテナーの利用を広めた企業ですが、ソフトウェアとしてはデベロッパー向けのランタイムとツールだったわけです。ただ、過去数年はDockerはオープンソースの中の悪い奴、敵と見なされていました。いろいろな経緯がありますが、過去のKubeConでもDockerはほとんど注目されていませんでしたし、あからさまにDockerを敵とみなす人も多かったように思います。しかしもう一度デベロッパーが必要なものは何かを考えた時に、WebAssemblyをDockerの実行単位として使うようにすることが必要だと考え、そのためにランタイムとしてWasmEdgeを選択したということになります。会社としてのDockerも中の人がだいぶ入れ替わっていますので、もう過去のDockerとは同じではないとみなした方が良いと思います。
これまでKubeConに来てなかったDockerが久しぶりにカムバックした時のキャッチコピーが「Docker+WASM」だったというのは印象的でした。DockerがWasmEdgeを選んだ理由は?
DockerがWasmEdgeを選んだ理由は、高速な実行、さまざまなインテグレーションができることからだと思います。実際にWasmEdgeは複数存在するWebAssemblyのランタイムの中でも最も高速ですから。
カムバックを図るDockerがWasmEdgeを選んだことで、今はDagger.ioのCEOであるSolomon Hykes氏は「これでLinuxランタイムだけのコンテナ実行環境ではなく、LinuxもWindowsもWebAssemblyも同様にDockerから実行できるようになる」と言っています。
●参考:
The Docker+wasm announcement makes perfect sense. We no longer live in a single-runtime world: there are linux containers, windows containers and wasm containers. OCI can package them all, I should be able to build and run them all with @docker.
— Solomon Hykes (@solomonstre) October 25, 2022
そうですね。Dockerはここからもう一度、デベロッパーにとって有力な選択肢となっていくと思います。
これからの予定を教えてください。
これからはもっとデベロッパーに知ってもらうための活動を続けていきます。AWSのre:Inventにも出展する予定ですし、シリコンバレーでWasmEdgeを啓蒙する活動をする予定です。すでに公開されていますが、Microsoftが推進する分散型アクターモデルのプラットフォームであるDaprでも、WasmEdgeを使ってWebAssemblyのアプリケーションを実行することができます。DaprはMicrosoftからスピンオフして独立すると聞いていますので、これからもっと利用が広がっていくと思います。
注:Daprについては以下を参照。
●参考:Microsoftがリードするモダンな分散システム用ランタイムDaprとは?
会社としてのSecond Stateの概要は?
社員は全体で50名程度です。主にアジアに拠点を構えています。私自身はテキサスのオースチンにいますが、開発の大部分はアジア、シンガポールと台北ですね。台北に開発スタッフが多いのには理由があります。WasmEdgeはランタイムとしてRustなどで書かれたコードをさまざまなハードウェアで実行するわけですが、それは要はコンパイラーの技術なんですよ。つまり書かれたコードを実行するアーキテクチャーに合わせて最適化するというのは、コンパイラーの仕事なわけです。なのでチップメーカーが多数存在する台北には多くのコンパイラーのエンジニアがいるわけです。チップを設計して実際に作って最初にやるのはコンパイラーの開発ですから。そういうノウハウを持っているエンジニアが作っているのがWasmEdgeなんですよ。
ではチャレンジはなんでしょうか? 潤沢な資金ですか?(笑)
いや、お金は大切ですよね(笑)、でももっとユースケースを広げていくことが重要だと思っています。特にエッジのユニークなユースケースについては、アジアに大きな可能性があると思っています。ありとあるゆるところに自動販売機がありますし、さまざまなデバイスが登場してくるのもアジア、特に日本や中国だと思いますので、そのような市場でもっとWasmEdgeを知られて欲しいですし、それを開発するデベロッパーにWasmEdgeを使ってもらいたいと思います。日本も重要な市場だと思っていますよ。
Michael Yuan氏のセッションはKubeConでも盛況で、セッション後には質問を行う参加者が列をなしていた。WebAssemblyを推進するベンチャー企業は、CosmonicとFermyonが日本では認知が始まったところという感じだが、Dockerが選択したWasmEdgeのSecond Stateも要注目株と言えるだろう。
Yuan氏のセッションは以下を参照されたい。
●参考:Cloud-Native WebAssembly: Containerization On the Edge - Michael Yuan, Second State
ちなみにWasmEdgeのブースも大人気で常に参加者が訪れていた。以下の写真はTiKV/TiDBを開発するPingCAPのエンジニアと話し込むYuan氏である。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- 「KubeCon NA 2022」のプレカンファレンスからCloudNative Wasm DAYを紹介
- WASM Meetup@ByteDanceで垣間見たWebAssemblyの静かな広がり
- KubeCon Europe 2024からWASMとeBPFを使ってストリーム処理を解説するセッションを紹介
- Civo Navigate North America 2024、元Dockerで現DaggerのCEO、Solomon Hykesのインタビューを紹介
- WasmCon 2023からLLMをWASMで実装するセッションを紹介
- 写真で見るKubeCon Europe 2024 ベンダーやコミュニティプロジェクトの展示を紹介
- KubeCon China 2024から、ローカルでLLMを実行するSecond Stateのセッションを紹介
- Cloud Native Wasm Dayから大規模言語モデルをWasmで実行するデモを解説するセッションを紹介
- WebAssemblyを取り巻く最新情報をMeetupから紹介(後半)
- CloudNative Days Tokyo 2023から、WasmのクラウドネイティブやAI推論での利用を解説