「KubeCon NA 2022」のプレカンファレンスからCloudNative Wasm DAYを紹介
Cloud Native Computing Foundation(CNCF)が主催する「KubeCon + CloudNativeCon North America 2022」がミシガン州デトロイトで開催された。3日間のKubeConと前日、および前々日の2日間に共催される多数のミニカンファレンスで構成された5日間のイベントだ。
この記事では、2022年10月24日に行われた「Cloud Native Wasm Day」を紹介する。WASM、正式名称としては「WebAssembly」と呼ばれるバイナリーフォーマットはW3Cの勧告によって制定されている仕様だが、近年特に注目が集まっているのは、単にJavaScriptの代替としてWebブラウザ内部でコードを実行する時に利用されるユースケースではなく、サーバーサイドでの利用が拡がってきたことが出発点だろう。仮想マシンからコンテナーにアプリケーション実行の単位が変化してきた流れの先に到達した「セキュアで高速にコードを実行でき、様々なアーキテクチャーのプロセッサでも実行できるバイナリーフォーマット」という位置付けだ。
KubeConにおける共催カンファレンスとしては2021年にロスアンゼルスで行われたKubeCon NA 2021でもCloud Native Wasm Dayが前日に開催されている。今回は本編の2日前という扱いだったが、今回も1日のミニカンファレンスとして実施された。前回のWasm Dayについては、以下の記事を参照されたい。
●KubeCon NA 2021のWasm Dayの記事
【前半】https://thinkit.co.jp/article/19339
【後半】https://thinkit.co.jp/article/19340
WebAssemblyに勢いがあることの象徴として個人的に挙げたいのは、2021年にMicrosoftの社員として登壇したMatt Butcher氏が「Fermyon」というWebAssemblyに特化したベンチャーを立ち上げていることだろう。KubeCon NA 2022の次週に行われた「AllThingsOpen」というオープンソースのカンファレンスでMatt Butcher氏とは再会しているが、その際にFermyonは2021年11月1日に創業し、2022年11月1日で1周年を迎えたことを教えてくれた。つまり2021年10月12日に行われたWasm Dayの直後にMicrosoftを退社してFermyonを創業していることになる。
Wasm Dayの会場であるHuntington Placeの4階のカンファレンスルームに到着して、何よりも勢いを感じたのはこのDockerのバナーを観た時だろう。
このバナーはDockerが持ち込んでカンファレンスルーム前のデスク横に置かれており、DockerとWebAssemblyのコンビネーションでデベロッパーが慣れている環境でWebAssemblyのコードを実行できることを謳っている。なお、WASM Day自体もFermyonとDockerがダイアモンドスポンサー、Cosmonicがストリーミング配信のスポンサーとなっている。これは、これまでMicrosoftやAdobeなどのメガエンタープライズが余力でやっている感が強かったWebAssemblyにベンチャーが集まり始めていることを示していると言っても良いだろう。
WebAssemblyに関して言えば、WasmをベースにしたPaaSであるwasmCloudのCosmonic、MicrosoftのMatt Butcher氏が創業したFermyon、そしてランタイムであるWasmEdgeを開発するScond StateがKubeConにおいては目立っていた。この3社がクラウドネイティブにおけるWebAssemblyのエコシステムをリードしていると言って良いだろう。ここからWasm Dayで行われたFermyonのセッション、Second Stateのセッションを紹介する。
スポンサーであるFermyonはこんなカードを参加者に配布して、ブースに来ることを勧めていた。WebAssemblyに興味を持つ参加者にリーチしようという姿勢が見える。
Fermyonは同日にSpinというWebAssemblyを開発するためのフレームワークをホスティングするFermyon Cloudを発表した。Fermyon CloudはAzure上に実装されているという。2022年6月にオースチンで開催されたOpen Source Summit NA 2022でWebAssemblyの起動が速いことを見せるデモが紹介されていたが、今回もそのデモを中心に説明を行った。デモの内容については以下の記事を参照されたい。
●Open Source SummitのFermyonのデモに関する記事:https://thinkit.co.jp/article/19886
Spin自体はHashiCorpのNomadを使ってWebAssemblyで作られたマイクロサービスを高速に実行するためのフレームワークだが、Fermyon CloudはSpinを自社のオンプレミスサーバーに配備して管理運用するのを避けたいというリクエストに応えるためのサービスということになる。
●Fermyonの公式リリース:https://www.fermyon.com/blog/introducing-fermyon-cloud
Fermyon Cloud自体はオープンベータという状態で現時点ではWebAssemblyを使ってWebアプリを作るというのが基本機能となる。
このスライドではマイクロサービスをオーケストレーションするためのNomadそしてランタイムであるWasmTimeを紹介。「マイクロサービスをオーケストレーションするのはKubernetesではないのか?」という疑問には、より軽量にするために選択したことをOpen Source Summitでも解説していた。またデータベースについてもRedisを使ったキーバリューストアが使えること、PostgreSQLもサポートされていることなどが公表されている。
次に、Second StateのCEO、Michael Yuan氏とDockerのChris Crone氏が行ったセッションを紹介する。これはDockerが発表したDockerとWebAssemblyを組み合わせることを可能にしたという発表に関する解説という内容だ。
●DockerのWebAssemblyサポートについて:https://docs.docker.com/desktop/wasm/
このサイトはDockerの公式ドキュメントサイトだが、Dockerのホームページにも「Docker + WASM」というロゴが使われていることからも、Dockerが本気を出してWebAssemblyに対応しようとしていることが分かる。
より正確には、Docker Desktopのプレビュー版によってWebAssemblyサポートがベータという状態で実現されている。以下はドキュメントサイトからの引用だが、--runtimeと--platformというパラメータにそれぞれWasmEdge、wasi/wasm32を設定することでこれまでのDockerの使い方と変わらないというのが利点の1つであるという。
ランタイムであるWasmEdgeはSecond Stateが開発をリードするランタイムだ。次のスライドではWasmEdgeの特長が紹介されている。
起業としてのDockerはコンテナーオーケストレーションの競争にSwarmで挑んだが、Kubernetesに完全敗北したと言える。KubernetesにおいてもDockerランタイムを利用するためのDockersimが1.24からサポートされないという状態で特別扱いがほぼなくなっている状態だ。「WebAssemblyがあればDockerを作らなかったかもしれない」と発言したSolomon Hykes氏もDocker社には既に在籍しておらず、Dockerが持て囃された当時のメンバーは入れ替わっている状態だ。その中で敢えてWebAssemblyをDocker DesktopでサポートすることでWebAssemblyに興味を示すデベロッパーにとっては使い慣れたツールを使えるというのは大きいだろう。ブランディングも「Docker + WASM」とすることで今、注目が集まるWebAssemblyの波に乗ろうとする意図を感じる。
DockerのChris Crone氏が今回のセッションの要旨をGitHubのページで解説しているのでそれも参考にしていただきたい。
●Chris Crone氏のGitHubページ:https://github.com/chris-crone/wasm-day-na-22
Docker社のカムバックがWebAssemblyの波に乗ることで可能なのか、注目していきたい。Cloud Native Wasm Dayのアジェンダはこちらを参照されたい。
Fermyonは10月26日の夜に小規模なパーティを主催して参加者とネットワーキングを促していた。CosmonicのTylor Thomas氏も参加しており、FermyonのMatt Butcher氏とは同じく元Microsoft、Thomas氏がCosmonicに参加したのが2021年9月ということで既知の関係だろう。2021年の後半にWebAssemblyのベンチャーが同時に起業したというのは興味深い事象と言える。
連載バックナンバー
Think ITメルマガ会員登録受付中
全文検索エンジンによるおすすめ記事
- 写真で見るKubeCon Europe 2024 ベンダーやコミュニティプロジェクトの展示を紹介
- WebAssemblyを取り巻く最新情報をMeetupから紹介(後半)
- Open Source Summit NA 2022、マイクロサービスをWASMで実装したデモを紹介
- All Things OpenからFermyonTechのMatt Butcher氏のセッションを紹介
- 「KubeCon NA 2022」から、WasmEdgeを開発するSecond StateのMichael Yuanのインタビュー
- KubeCon Europe 2024からWASMとeBPFを使ってストリーム処理を解説するセッションを紹介
- KubeCon Europe 2023共催のWasm Day、Cosmonicが作成したWASMを解説する絵本を紹介
- 写真で見る「KubeCon NA 2022」活気が戻ったショーケースを紹介
- KubeCon NA 2021開催。プレカンファレンスのWASM Dayの前半を紹介
- WASMを実行するためのランタイム、wasmCloudがCNCFのサンドボックスに