DUICUO

KubeEdge は、IoT エッジ テクノロジー フレームワークです。Kubernetes 上に構築されたクラウド ネイティブ エッジ コンピューティング フレームワークです。

クラウド導入が進む現代において、Kubernetesは既にご存知かもしれませんが、IoT(モノのインターネット)のエッジコンピューティングをリードする別のフレームワークをご存知でしょうか?それが本日ご紹介するKubeEdgeです。

KubeEdge は、コンテナ化されたアプリケーションのオーケストレーション機能をエッジホストに拡張するためのオープンソースシステムです。Kubernetes 上に構築され、ネットワークアプリケーション、デプロイメント、クラウドとエッジ間のメタデータ同期のためのインフラストラクチャサポートを提供します。KubeEdge は Apache 2.0 ライセンスに基づいてライセンス供与され、個人使用または商用利用において完全に無料です。KubeEdge は、Kubernetes 上に構築されたコンテナ化されたアプリケーションのオーケストレーション機能をエッジノードとデバイスに拡張し、ネットワーク、アプリケーションのデプロイメント、クラウドとエッジ間のメタデータ同期のためのインフラストラクチャサポートを提供することで、エッジコンピューティングを可能にするオープンプラットフォームの構築を目指しています。KubeEdge は MQTT もサポートしているため、開発者はカスタムロジックを記述し、エッジ上の特定のリソースを持つデバイス間の通信を実現できます。KubeEdge はクラウドエンドポイントとエッジエンドポイントで構成されており、どちらも現在オープンソースです。

(画像出典: kubeedge.io - アーキテクチャ)

さらに、KubeEdgeは、エッジとクラウドの連携に特化した業界初のクラウドネイティブ・エッジコンピューティング・フレームワークです。KubeEdgeは、コンテナのオーケストレーションとスケジューリングにおいてKubernetesを補完し、アプリケーション、リソース、データ、デバイスがエッジとクラウド間で連携できるようにします。エッジコンピューティングは、デバイス、エッジ、クラウド間の包括的な接続を可能にします。

KubeEdgeアーキテクチャでは、クラウドはネイティブKubernetes管理コンポーネントとKubeEdgeが開発したCloudCoreコンポーネントで構成される統合コントロールプレーンとして機能します。CloudCoreはクラウドリソースの変更を監視し、信頼性と効率性に優れたクラウドエッジメッセージングを提供します。エッジ側には、Edged、MetaManager、EdgeHubなどのEdgeCoreコンポーネントが配置されています。これらのコンポーネントはクラウドからのメッセージを受信し、コンテナのライフサイクルを管理します。デバイスマッパーとイベントバスはデバイスアクセスを処理します。

(画像出典: kubeedge.io - エッジコンピューティングアーキテクチャ)

KubeEdgeの利点

KubeEdge の主な利点は次のとおりです。

  • エッジコンピューティング:エッジで実行されるビジネスロジックを活用することで、ローカルで生成されたデータに広範なデータ処理を施し、保護することができます。これにより、エッジとクラウド間のネットワーク帯域幅の要件と消費量が削減され、応答速度が向上し、コストが削減され、顧客データのプライバシーが保護されます。
  • 開発の簡素化: 開発者は、HTTP または MQTT に基づいて通常のアプリケーションを作成し、コンテナ化してから、エッジまたはクラウドのいずれか適切な方でアプリケーションを実行できます。
  • ネイティブ Kubernetes サポート: KubeEdge を使用すると、ユーザーは従来の Kubernetes クラスターと同様に、アプリケーションのオーケストレーション、デバイスの管理、Edge ノード上のアプリケーションとデバイスのステータスの監視を行うことができます。
  • 豊富なアプリケーション: 既存の複雑な機械学習、画像認識、イベント処理、その他の高度なアプリケーションを Edge に簡単にデプロイできます。

ソフトウェアサプライチェーン安全性レベル3認定(SLSA)

KubeEdgeコミュニティは、2022年7月にKubeEdgeプロジェクト全体の第三者によるセキュリティ監査を完了し、クラウドネイティブエッジコンピューティングのセキュリティ脅威分析と保護に関するホワイトペーパーを公開し、セキュリティ脅威モデルとセキュリティ監査の推奨事項に基づいてKubeEdgeソフトウェアサプライチェーンのセキュリティを継続的に強化しました。コミュニティの継続的な努力のおかげで、2023年1月18日にリリースされたバージョンv1.13.0において、KubeEdgeプロジェクトはSLSAレベル3(バイナリおよびコンテナイメージアーティファクトを含む)を達成し、CNCFコミュニティでSLSAレベル3を達成した最初のプロジェクトとなりました。

SLSA とは? (ソフトウェア成果物のサプライチェーンレベル)

Google のソフトウェア サプライ チェーン セーフティ(SLSA)フレームワークは、ソフトウェア サプライ チェーン全体の整合性を確保するために設計されており、業界で合意された一連のセキュリティ ガイドラインです。これは、改ざんを防止し、整合性を向上させ、プロジェクト、ビジネス、または企業内のソフトウェア パッケージとインフラストラクチャを保護するために使用される、一連の標準と制御リストからなるセキュリティ フレームワークです。これは単一のツールではなく、アーティファクトの改ざんと改ざんされたアーティファクトの使用を防止し、サプライ チェーンを構成するプラットフォームをより高いレベルで強化するために段階的に採用される概要です。メーカーは SLSA ガイドラインに従ってソフトウェアのセキュリティを強化し、ユーザーはソフトウェア パッケージのセキュリティ状態に基づいて判断を下します。

現時点では、SLSA 標準はアルファ段階にあり、関連する定義は変更される可能性があります。

下の図は、ソフトウェアサプライチェーンにおける既知の攻撃脆弱性を示しています。詳細な説明については、https://slsa.dev/ をご覧ください。

強力なパフォーマンス: 100,000 個のエッジノードをサポート

KubeEdge のユーザー数は、そのスケーラビリティとスケール性においてコミュニティの関心を喚起しています。現在、KubeEdge ベースの Kubernetes クラスターは十分にテストされており、10 万台の同時エッジノードを確実にサポートし、100 万以上のポッドを管理できます。

(画像ソース: kubeedge.io - クラスター展開フレームワーク)

アプリケーションシナリオ

KubeEdgeは、コンテナ化されたアプリケーションのオーケストレーション機能をエッジノードやデバイスに拡張するためのオープンソースシステムです。KubeEdgeの潜在的なユースケースをいくつかご紹介します。

  • スマートシティ:都市管理において、KubeEdgeはスマート交通やスマート照明といった都市インフラに柔軟な拡張性を提供します。リアルタイムデータ処理、AI分析、デバイス管理を通じて、KubeEdgeはインテリジェントな都市管理を実現します。
  • 自動運転:自動運転のシナリオにおいて、KubeEdgeはデバイス管理とリアルタイムデータ処理機能を提供し、自動運転車両に堅牢なバックエンドサポートを提供します。KubeEdgeを通じて、自動運転車両は車両とその周囲環境に関するデータを取得・分析し、より安全で効率的な自動運転を実現します。
  • 産業製造業:KubeEdgeは、産業製造業において、工場設備のリアルタイム監視、データ収集、故障予測を可能にし、生産効率の向上と保守コストの削減に貢献します。コンテナオーケストレーション機能をエッジデバイスに拡張することで、データ処理と分析の高速化を実現し、生産ラインの自動化と柔軟性を向上させます。
  • ヘルスケア:ヘルスケア分野では、KubeEdge は患者の健康状態をリアルタイムでモニタリングし、医療データを処理、遠隔医療サービスを提供するために活用できます。コンテナオーケストレーション機能をエッジデバイスに拡張することで、医療データの処理と分析を迅速化し、より正確な診断と治療の推奨を提供できるようになります。
  • スマートホーム:スマートホーム分野において、KubeEdgeはホームデバイスの集中管理とインテリジェントな制御を実現します。コンテナオーケストレーション機能をスマートホームデバイスに拡張することで、これらのデバイスのリモート制御と自動制御を実現し、生活体験と生活の質を向上させます。
  • 金融業界では、KubeEdge を活用して金融取引や市場動向をリアルタイムで監視し、金融取引の効率性と精度を向上させることができます。コンテナオーケストレーション機能をエッジデバイスに拡張することで、金融データの処理と分析を迅速化し、より正確な投資アドバイスやサービスを提供できるようになります。

さらに、KubeEdgeは、クラウドとエッジ間のデプロイメントとメタデータ同期のためのインフラストラクチャサポートも提供しており、幅広いウェブアプリケーションに適しています。個人利用でも商用利用でも、KubeEdgeはApache 2.0ライセンスに基づいており、完全に無料のオープンソースです。また、MQTTプロトコルをサポートしているため、開発者はクライアントロジックを記述し、エッジデバイス通信のリソース制約を設定できます。