KubeCon Europe 2023共催のWasm Dayから、AdobeのWASMユースケースを紹介

2023年7月19日(水)
松下 康之 - Yasuyuki Matsushita
KubeCon Europe 2023の共催イベントWASM Dayから、AdobeによるWASMユースケースを紹介する。

KubeCon+CloudNativeCon Europe 2023の前日に行われた共催イベント、Cloud Native Wasm DayからAdobeのユースケースセッションを紹介する。このセッションでは最初のパートをSean Isom氏が担当し、後半をColin Murphy氏が担当した。ちなみにMC役はSuborbitalのOscar Spencer氏だ。Spencer氏はGrainというプログラミング言語の開発者としても知られている。

登壇するSean Isom氏(右)とColin Murphy氏(中央)。MC役はOscar Spencer氏(左)だ

登壇するSean Isom氏(右)とColin Murphy氏(中央)。MC役はOscar Spencer氏(左)だ

セッションの動画は以下から参照されたい。

●動画:Wasm + Kubernetes: Beyond Containers - Sean Isom, Adobe & Colin Murphy, Adobe

Adobeのクラウドサービスについて解説

Adobeのクラウドサービスについて解説

まずIsom氏は、Adobeが提供しているクラウドサービスについて過去からの沿革について概観を説明した。ここではコンテナの前の時代からクラウドサービスが開発されていたことがわかる。このスライドでPre-Containerの次に記載されているBehanceはAdobeが買収したクリエイター向けのソーシャルメディアサービスで、その時代からCI/CD、Mesosなどが使われていたことが記されている。EthosはAdobeの社内向けデベロッパープラットフォームで、すでにKubernetesベースのプラットフォームとなっている。Ethosについては以下のブログを参照されたい。

●Ethosについてのブログ:How Ethos Powers a Cloud-Native Transformation at Adobe

そして現在のEthosは5000以上のサービス、コンテナ数が550万、クラスターの数も約300という巨大なシステムになっている。

Adobeの社内Kubernetesプラットフォーム、Ethosの概要

Adobeの社内Kubernetesプラットフォーム、Ethosの概要

Ethosはこのような巨大なプラットフォームだが、SREと運用チームは一体となって管理を行い、セキュリティのモデルも単一だが、マルチテナントでほぼゼロトラストであると解説した。コントロールプレーンをマネージドサービスに移行するという計画もあるようだ。

Adobeのクラウドプラットフォーム、Ethosの説明

Adobeのクラウドプラットフォーム、Ethosの説明

その上で、マルチテナンシーのKubernetesの操作自体はシンプルだが、オーバーヘッドが大きく、コストが嵩むこと、CPUの有効活用に改善の余地が大きいことなどを説明。ここからプロセッサの稼働率についてさらに深く説明を行った。

Ethosの課題はプロセッサの稼働率

Ethosの課題はプロセッサの稼働率

ここで開発されているアプリケーションが主にJava/Spring Bootであること、平均で28%のCPU使用率、メモリーの使用率は平均55%であることを説明し、確保したCPUやメモリーを有効に使えていない状況を解説した。

AdobeにおけるWebAssemblyのユースケース

AdobeにおけるWebAssemblyのユースケース

そしてそれを解消するためのテクノロジーとしてWebAssemblyが採用されたと語り、ここで実際にAdobeのサービス、製品としてLightroomやAcrobat、Photoshopなどで使われていると説明した。ポイントとして高い性能、既存のコードベースを活用できること、セキュアであることなどを挙げた。

Adobeのクラウドで実行されているのはCosmonicのwasmCloud

Adobeのクラウドで実行されているのはCosmonicのwasmCloud

そして実際にはEthosのKubernetesクラスターの中に、Cosmonicが開発したwasmCloudが稼働しており、その中にWASMのアプリケーションが実行されていると説明した。現在は、ネームスペースの一つとして稼働しているとして、将来的にはこの部分のマルチテナンシー化も予定しているという。

WebAssemblyからシステムにアクセスするWASIの進化を説明

WebAssemblyからシステムにアクセスするWASIの進化を説明

WebAssemblyから下位のOSレイヤーのサービスにアクセスするための仕組みとして提案されているWASI(WebAssembly System Interface)についても過去の経緯から説明し、POSIX互換のAPIからwasmCloudで実装されている各種サービスに進化していることを解説した。

この後、Murphy氏と交代して、実際にAdobeが使っているWebAssemblyのアプリケーションについて説明を行った。

2022年のWasm Dayの時の事例と進化した今年の事例を紹介

2022年のWasm Dayの時の事例と進化した今年の事例を紹介

Adobeは昨年のバレンシアで開催されたWasm Dayにも参加しており、その時は手書きサインの画像から背景のノイズを除去するアプリケーションを紹介していた。今年はより複雑なアプリケーションとして、画像からそれが複数の画像から合成されたものかどうかを判定するアプリケーションにユースケース自体が進化したことを説明した。

Content Authenticity Proxyと呼ばれるアプリケーションを説明

Content Authenticity Proxyと呼ばれるアプリケーションを説明

これはContent Authenticity Proxyと呼ばれるアプリケーションで、その中のデータ転送の部分にWebAssemblyが使われていると説明した。これはC2PA Rust SDKを使っているとしていくつかの制限を乗り越える必要があったこともコメントした。このアプリケーションはAdobeやMicrosoft、BBC、Intel等が結成したC2PA.orgという組織が推進するコンテンツの真正性を確保するための仕組み、The Coalition for Content Provenance and Authenticity(C2PA)の一部として開発されていることを説明した。C2PAについては下記のサイトを参照して欲しい。

●参考:C2PA公式サイト:https://c2pa.org/

また画像の真正性を検証するためのサイトも立ち上がっているので参考にして欲しい。

●参考:Adobeの画像真正性検証サイト:https://verify.contentauthenticity.org/

最後にIsom氏が再度登壇し、「なぜAdobeがWebAssemblyを使うのか?」についてまとめを行った。

AdobeがWebAssemblyを使う理由

AdobeがWebAssemblyを使う理由

WebAssemblyという変化を受け入れるのは難しかったが、パフォーマンスや効率のためには必要だったとしてセッションを終えた。

全体として、WebAssemblyを使うのに充分な背景と実際に効果が出ていることがわかる良いセッションだった。まだWebAssemblyに関するセッションがテクノロジーの解説や理論上の効果に留まる内容が多い中、実際に本番環境として稼働している経験則を語るAdobeのセッションは貴重だろう。

セッション後にCosmonicのCEO、Liam Randall氏と立ち話をした際に「実際にユースケースとしてAdobeが語ってくれるのはWebAssemblyだけではなくCosmonicのwasmCloudとしても良い内容だった」と伝えたところ、まだ多くのベンダーがランタイムやツールそのものの議論そしてデモアプリに終始している段階で実際の本番稼働を見せるのは大きな意味があり、「AdobeはwasmCloudの本当のユーザー」であることを強調していたのが印象的だった。

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

クラウドイベント
第8回

参加者から見たKubeCon Europe 2023のようすを紹介

2023/8/15
KubeCon Europe 2023に参加した日本人エンジニアを集めて座談会を実施した。
データベースイベント
第7回

KubeCon Europe 2023よりGitHubがMySQL互換のVitessを使った事例のセッションを紹介

2023/8/9
KubeCon Europe 2023から、GitHubがワークロードの半分をVitessに実装したセッションを紹介。
クラウドイベント
第6回

エッジでKubernetesを実装する新しいプラットフォームをIntelとSpectro Cloudが紹介

2023/8/4
KubeCon Europe 2023の共催イベントEdge Dayから、IntelとSpectro Cloudが実装した新しいプラットフォームを紹介する。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています