「Akri」はMicrosoftが立ち上げた新しいオープンソースプロジェクトだ。Akriは、センサー、コントローラー、マイクロコントローラーユニット(MCU)クラスのような「リーフデバイス」を「Kubernetes」クラスタで接続する。
リーフデバイス(子デバイスと呼ばれることもある)とは、ダウンストリーム機器を持たないIoT(モノのインターネット)エッジ機器を指す。ダウンストリーム機器とは、他の全ての機器と同様、IoTハブでIDを必要とする機器を指す。
Akriにおけるリーフデバイスとは、Kubernetesクラスタが通信できる全ての機器を指す。その機器がノードに物理的に接続されているかどうか、ネットワーク上で検出可能かどうかは問わない。例えば、Akriはデータを生成するだけでダウンストリーム機器を持たない機器や多くの機器のデータを集約するサーバも検出する。クラスタと通信できる機器はリーフデバイスとして抽象化できる。
ほとんどのエッジ機器は、Kubernetesを実行するには小さ過ぎる。AkriはKubernetesのデバイスプラグインフレームワークを拡張し、このフレームワークをエッジに適用することで機能する。
このプロジェクトにギリシャのエラッソナ市北部にある村の名前を付けた背景には、Akriがギリシャ語(άκρη)で「エッジ」を意味することもあるに違いない。Microsoftは、(エッジ向けの)「A Kubernetes Resource Interface」の頭字語「AKRI」だとも示唆している。
Akriは、
という4つのKubernetesコンポーネントで構成される。
Akriはリーフデバイスの動的な出現と消失を処理する。ユーザーが「Akri Configuration」をクラスタに適用してデプロイすると、残りはAkriが処理する。複数のノードが1つのリーフデバイスを利用できるようにすることも可能だ。これにより、ノードがオフラインになった場合の高可用性を実現する。
Microsoftでオープンソースのエンジニアを務めるケイト・ゴールデンリング氏によると、エッジの特徴の一つはデータを生み出し、アクションを実行する多数のセンサー、コントローラー、MCUクラスの機器にあるという。
「Kubernetesが多様なエッジコンピューティングソリューションに対応するには、クラスタがこのようなリーフデバイスを簡単に見つける必要がある。ただし、こうした機器の大半はKubernetesを実行するには小さ過ぎる。では、Kubernetesのワークロードはこうしたリーフデバイスをどのように利用するのだろう。Kubernetesポッドはリーフデバイスの出力をどのように見つけ、アクセスするのだろう。その答えがAkriだ」(ゴールデンリング氏)
CNI(Container Network Interface)と同様、Akriは抽象化層を提供する。だが、基盤となるネットワークの詳細を抽象化するCNIとは異なり、Akriはカメラやセンサーなどのリーフデバイスの可用性を検出、利用、監視する作業を取り除く。
ゴールデンリング氏は続けて、Akriはデバイスプラグインフレームワークを利用し、これを拡張すると話す。このフレームワークは本来、GPUなどのリソース情報を定期的に送信するために作成されたものだ。
「Akriはこのフレームワークをエッジに適用する。エッジには独自の通信プロトコルと断続的な可用性を備えるリーフデバイスの多様なセットが存在する。Akriはリーフデバイスにアクセスするノードを継続的に検出し、ノードのワークロードのスケジュールを設定する。端的に言えば、ユーザーがリーフデバイスに名前を付け、Akriがそのリーフノードを見つけ出し、ユーザーがそのリーフノードを使用する」とゴールデンリング氏はMicrosoftの開発者向けオープンソースブログに記載している。
Copyright © ITmedia, Inc. All Rights Reserved.
トランプ氏勝利で追い風 ところでTwitter買収時のマスク氏の計画はどこへ?――2025年のSNS大予測(X編)
2024年の米大統領選挙は共和党のドナルド・トランプ氏の勝利に終わった。トランプ氏を支...
AI導入の効果は効率化だけじゃない もう一つの大事な視点とは?
生成AIの導入で期待できる効果は効率化だけではありません。マーケティング革新を実現す...
ハロウィーンの口コミ数はエイプリルフールやバレンタインを超える マーケ視点で押さえておくべきことは?
ホットリンクは、SNSの投稿データから、ハロウィーンに関する口コミを調査した。