ShifuとK3sでクラウド・エッジ・デバイスのループを閉じる
近年、エッジ AI は、データをソースに近い場所で処理する能力により、レイテンシーと帯域幅の使用量が削減されるという特性から、注目を集めています。インターネット・オブ・シングス(IoT)デバイスの台頭とともに、エッジ AI はテクノロジースタックの重要な部分となっています。しかし、エッジデバイスの管理とクラウドや他のエッジデバイスとの相互運用性の確保は、依然として課題です。
そこで登場するのが、エレガントな方法で相互運用性を実現する Kubernetes ネイティブのエッジソリューション、Shifu です。Shifu は、各 IoT デバイスを構造化し、その機能を Kubernetes サービスを介して開放するための分散アプローチを採用しています。このアプローチにより、エッジデバイスをより簡単に管理し、大規模なテクノロジースタックに統合することができます。
一方、K3s は、リソース制約のあるエッジ環境で実行するために SUSE によって設計された軽量な Kubernetes ディストリビューションです。K3s は、IoT デバイスを持つエッジ環境に最適なソリューションです。
Shifu と K3s を組み合わせることで、完全なクラウド・エッジ・デバイスのループを実現することができます。この統合により、Kubernetes の機能をネイティブで活用し、エッジデバイスを効率的に管理することができます。この記事では、Shifu と K3s を組み合わせて、強力で効率的なエッジ AI ソリューションを作成する方法を探ってみましょう。
ケーススタディ
Shifu と K3s を組み合わせて、強力なエッジ AI ソリューションを作成する方法の実際の例を見てみましょう。 さまざまな IoT デバイス(信号機、監視カメラ、空気品質センサー、気象観測所など)を監視および制御するスマートシティアプリケーションを考えてみましょう。このシナリオでは、エッジ K3s-shifu クラスターは、低レイテンシーの処理とリアルタイムの意思決定のために、IoT デバイスに近い場所に展開されます。同時に、クラウド K3s クラスターは、集中型のデータストレージ、分析、および管理サービスを提供します。 K3s+Shifu エッジと K3s クラウドを設定するには、次の手順に従うことができます:
- クラウドに wireguard をインストールします。
curl -O https://raw.githubusercontent.com/angristan/wireguard-install/master/wireguard-install.sh
chmod +x wireguard-install.sh
./wireguard-install.sh
- クラウド側に wireguard を使用して k3s をインストールします。
curl -sfL https://get.k3s.io | sh -s - \
K3S_TOKEN=token \
INSTALL_K3S_EXEC="--advertise-address=10.66.66.1 --flannel-iface=wg0" sh -
- エッジ側に wireguard を使用して k3s をインストールします。
curl -sfL https://get.k3s.io | sh -s - \
K3S_TOKEN=token K3S_URL=https://10.66.66.1:6443 \
INSTALL_K3S_EXEC="--node-ip=10.66.66.3 --flannel-iface=wg0"
- Shifu をダウンロードします:https://github.com/Edgenesis/shifu からプロジェクトファイルをダウンロードして展開します。
- Shifu をインストールします。
kubectl apply -f shifu/pkg/k8s/crd/install/shifu_install.yml
エッジとクラウドのクラスターを接続することで、IoT デバイスからのデータを効率的に同期し処理できます。これにより、スマートシティアプリケーションは収集したデータに基づいてリアルタイムの意思決定を行うと同時に、クラウドインフラストラクチャが提供するスケーラビリティ、耐障害性、リソースを活用できます。さらに、マルチクラスター管理ツールを使用することで、オペレーターは中央からシステム全体を監視および制御し、スマートシティアプリケーションのエッジおよびクラウド環境全体での管理と展開を簡素化できます。




