KubeCon Europe 2024併催のCloud Native Wasm Dayから、FA機器にWebAssemblyを適用したセッションを紹介

KubeCon Europe 2024併催のCloud Native Wasm Dayから、ファクトリーオートメーションにWebAssemblyを適用した事例を紹介する。

松下 康之 - Yasuyuki Matsushita

2024年5月20日 6:00

KubeCon+CloudNativeCon Europe 2024の共催イベントCloud Native Wasm Dayにおける、ファクトリーオートメーションにWebAssemblyを応用したユースケースのセッションを紹介する。

●動画:WebAssembly on the Factory Floor: Efficient and Secure Processing of High Velocity Machine Data

セッションを担当したのはMachineMetricsというマサチューセッツのベンチャーで、製造業向けのシステムに特化したシステムを提供している会社のエンジニアリングマネージャーとエンジニアだ。

プレゼンテーションを行うJochen Rau氏とTyler Schoppe氏

プレゼンテーションを行うJochen Rau氏とTyler Schoppe氏

まずMachineMetricsの顧客の環境について写真で紹介。ここでは製造ラインというよりも研究のためのエリアに近い状況で、工作機械のモニタリングを行うためのエッジに相当するミニコンピュータを紹介している。

工作機械に接続されているMachineMetricsのエッジデバイス

工作機械に接続されているMachineMetricsのエッジデバイス

そしてインダストリアルIoTのシステム概要として、Databricksが作成した概念図を使ってデバイスからエッジにデータを吸い上げ、クラウドで処理し、ダッシュボードで可視化するという流れを解説。ここでは工作機械からダッシュボードまで、シンプルな直列系のプロセスで構成されていることを強調した。

エッジデバイスにWebAssemblyとwasmCloudを使う理由を解説

エッジデバイスにWebAssemblyとwasmCloudを使う理由を解説

今回のユースケースではエッジ側にKubernetesを搭載するのではなく、WebAssemblyでアプリケーションを実装していると説明し、どうしてKubernetesではなくWebAssemblyなのか? を解説した。

エッジにKubernetesを使えない理由を説明

エッジにKubernetesを使えない理由を説明

ここではメモリーやCPUの制約などがKubernetesを使わない理由として挙げられているが、何よりもNATSをすでに使っていたということがwasmCloudの導入には大きかったのではないだろうか。また「今回はエッジに関する別のミニカンファレンスに参加することも考えたが、Kubernetesを使っていないから、WASM Dayの方が最適だった」と語り、エッジに関してはMinikubeやK3sなどのミニマルなKubernetes環境を使う方法が存在するが、管理が複雑なKubernetesよりもシンプルなwasmCloudを選択したということを示した形になった。

そして工作機械から発生する高周波のデータについてそのまま処理するのではなく、ダウンサンプリングを行うことでデータ量を減らしつつデータの精度は維持するという方法を採用したことを説明。

工作機械から発生するデータをダウンサンプリングして利用

工作機械から発生するデータをダウンサンプリングして利用

ダウンサンプリングに関連して、アイスランド大学で開発されたLargest-Triangle-Three Bucketsというアルゴリズムについても説明を行った。このアルゴリズムを実装したプログラムはRustで開発され、WebAssemblyにコンパイルされ、実装にはwasmCloudのWADM(wasmCloud Application Deployment Manager)というモジュールが使われていると説明。

ここからはデモとしてダウンサンプリングが有効であること、データ収集のためのモジュールとキーバリューストアのモジュールの概要などを、動画を使って紹介した。

デモを動画で紹介。工作機械から発生するデータをグラフ化

デモを動画で紹介。工作機械から発生するデータをグラフ化

アプリケーションとしてはデータの収集だけではなくキーバリューストアを使ってステートフルなプロセスを実行する必要があったことなどをチャレンジだったとして説明。またクレデンシャルの管理などにも気を遣っていたことなどを述べた。プラットフォームとしてはまだ開発途上にあるWebAssembly関連のソフトウェアが日夜進化することで、どのタイミングでシステムのどこにそれを取り入れるのかを判断する必要があり、動き続けるターゲットを狙うという状態だったことなどを挙げた。

実装上のチャレンジを紹介。進化し続けるWebAssemblyにどうやって対応するのか?

実装上のチャレンジを紹介。進化し続けるWebAssemblyにどうやって対応するのか?

最後に全体のシステム概要についてエッジ側、クラウド側の構成を紹介。NATSを使ったコミュニケーション、wasmCloudのコンポーネントであるWADMを使ってデプロイしていることなどを説明した。

エッジ側のクラウド側の構成を解説

エッジ側のクラウド側の構成を解説

追加としてエッジ側で実行されるData Mapperについてはエッジで実行させるのではなく、クラウド側に移動させることも容易であることを強調し、さまざまな実装オプションがあることを説明した。そしてこれを可能にしている要素技術として、WIT(WebAssembly Interface Type)に準拠したRPCのフレームワークであるwRPCを紹介し、簡単に説明を行った。

Data Mapperがクラウド側に移動、wRPCを通じてエッジ側と通信

Data Mapperがクラウド側に移動、wRPCを通じてエッジ側と通信

全体としてFAシステムにおけるデータモニタリングを行う際の留意点について大量データの処理のためにダウンサンプリングを利用すること、WebAssemblyとwasmCloudのフラットなネットワークの利点などについて簡潔に訴求した良いセッションと言えるだろう。WADMについても簡単ながら解説し、PoCとしての結果が総じて良かったことが感じられるセッションとなった。WADMについては公式GitHubページを参照されたい。

●WADM:https://github.com/wasmCloud/wadm

人気記事トップ10

人気記事ランキングをもっと見る

企画広告も役立つ情報バッチリ! Sponsored

ClickHouse Cloudが実現した広告運用SaaS「ATOM」のデータ基盤革新、パフォーマンスを向上しながら、運用負荷とコストを削減 11月11日 6:20 AIで開発が加速する時代、品質保証はどう変わる? Tricentisが示すAIエージェント活用の実像 11月9日 6:45 悪用までの猶予が「1分」に迫るフロンティアAI時代に開発と本番を貫く脆弱性管理が必要 10月29日 8:30 欧州CRA対応とSBOM運用。AI生成コードのOSS混入問題の対策とは ――スニペット単位で検出する「FossID」「Insignary Clarity」によるSBOM運用 9月16日 6:40 PostgreSQLからTiDBへ、稼働中SaaSで進める段階的DB移行の実践と再設計への展望 9月7日 6:30 機能安全開発におけるGoogleTestの活用を支援!「Parasoft C/C++test CT」で実現する効率化&AI連携 4月14日 6:30 【CNDW2025】Grafanaが明かす「オブザーバビリティの哲学」ー最小限の労力で実用的なインサイトを得るには 1月23日 6:30 【CNDW2025】プロダクト急増に備える基盤刷新 ーウェルスナビがECSからEKSへの移行で得た知見とは 1月15日 6:30 【CNDW2025】250環境を5人で運用、構築時間は30分に ーKINTOテクノロジーズが語るインフラ基盤組織の作り方 2025年12月18日 6:30 新たな自動化で熱視線! AIエージェントの「推論能力」を支える2つのコンポーネントとは? 2025年11月28日 6:30