中央サービス
エッジデバイスが運用現場での実行を処理する一方、IronFlockの中央サービスは永続的なインフラストラクチャ、グローバルなビュー、またはデバイス間の調整を必要とするフリート全体の機能を提供します。
中央サービスは、IronFlockマネージドクラウドまたはお客様の独自インフラストラクチャ(KubernetesまたはDocker Compose)でオンプレミスデプロイメントとして実行されます。
コアサービス
FleetDB — 時系列データクラスター
FleetDBは、デバイスフリートから収集されたすべてのテレメトリデータを保存するTimescaleDB拡張を備えたPostgreSQLデータベースのクラスターです。クラスターアーキテクチャにより水平スケーリングが可能です — 各プロジェクトは独自のデータベースインスタンスを取得し、フリートの成長に応じて追加のデータベースノードを追加できます。以下を提供します:
- プロジェクトごとのデータベース隔離 — 各プロジェクトは、個別のテーブルと認証情報を持つ専用のデータベースインスタンスを取得します。あるプロジェクトのデータが別のプロジェクトに漏洩することはなく、インフラストラクチャレベルで強制されます。
- 自動プロビジョニング — プロジェクトを作成しデータを生成するアプリをインストールすると、FleetDBは必要なデータベース、テーブル、スキーマ、アクセス認証情報を自動的に作成します。手動のデータベースセットアップは不要です。
- 時系列最適化 — TimescaleDBハイパーテーブルが自動パーティショニング、圧縮、保持ポリシーで高頻度センサーデータを処理します。
- 水平スケーリング — クラスターはデータベースインスタンスをノード間に分散するため、フリートの成長が単一のデータベースサーバーでボトルネックになりません。
- スケジュールされた変換 — スケジュールに従って実行される集計とデータ変換を設定し、生のテレメトリから派生テーブルを生成します。
FleetDBサービス — データ処理&ダッシュボードバックエンド
FleetDBサービスはFleetDBとシステムの残りの間に位置します:
- WAMPメッセージブローカーを介してデバイスからのデータストリームを取り込み、FleetDBに書き込みます
- リアルタイムで受信データのアラームルールを評価し、条件が満たされた場合に通知をトリガーします
- ダッシュボードクエリを提供 — Web UIのチャート、テーブル、ゲージはこのサービスを通じてデータを取得します
- データ変換を処理 — スケジュールされた集計と派生計算を実行します
バックエンドサービス — フリート管理
バックエンドはすべてのフリートレベルの操作を管理します:
- デバイス登録、グルーピング、ライフサイクル管理
- プロジェクトとユーザーアカウント管理
- アプリリリース、バージョニング、OTAデプロイメントオーケストレーション
- アプリストアとマーケットプレイス操作
- アクセス制御と権限の適用
- 監査ログ
AIサービス — 動的エージェントオーケストレーション
AIサービスはIronFlockの会話型AI機能を支えます。会話の展開に応じて専門エージェントを動的に追加・削除し、AIエージェントの会話をオーケストレーションします:
- 動的エージェント管理 — エージェントはその専門知識が必要な時に会話に追加され、関連性がなくなると削除されるため、会話が集中的で効率的に保たれます
- 自然言語クエリを適切な専門エージェントにルーティング
- フィジカルAIのためにメッセージブローカーを介してデバイス側の関数を呼び出し — AIはリアルタイムでセンサーの読み取り、コマンドの送信、エッジアプリケーションとの対話が可能
- 会話中にライブチャートウィジェットを直接生成
- 共有コンテキストと権限を持つマルチエージェント会話を管理
- LLMプロバイダー(Anthropic Claude、OpenAI GPT、Google Gemini)に接続
Web UI — ブラウザベースのコントロールプレーン
IronFlock Web UIはシングルページアプリケーションで、オペレーターが以下を行います:
- フリート全体のデバイスステータス、接続性、ヘルスを監視
- サブ秒レイテンシのリアルタイムダッシュボードを表示
- アプリ、リリース、OTAアップデートを管理
- アラームと通知ルーティングを設定
- 組み込みクラウドIDEでアプリを開発
- AIアシスタントと対話
コンテナレジストリ
すべてのアプリイメージを保存するプライベートDockerレジストリ。アプリのリリースを作成すると、ビルドされたイメージがレジストリにプッシュされます。デバイスがOTAアップデートを受信すると、レジストリからイメージをプルします。
中央サービスの接続方法
すべての中央サービスはWAMPメッセージブローカーを通じて通信します。これはエッジデバイスが接続するのと同じブローカーです。つまり:
- Web UIでのダッシュボードクエリは、ブローカーを通じてFleetDBサービスへのリクエストをトリガーします
- デバイス上のセンサーを読み取るAIコマンドは、ブローカーを通じてデバイスエージェントに送られます
- テレメトリデータを公開するデバイスは、ブローカーを通じてFleetDBサービスに送信して保存します
システム全体に対して一つの統一された通信レイヤーがあります — クラウド間とクラウド-エッジ間で別々のAPIはありません。
デプロイメントモード
| モード | サービスの実行場所 | 管理者 |
|---|---|---|
| クラウド(デフォルト) | IronFlockインフラストラクチャ(GCP、AWS) | IronFlock |
| オンプレミス | お客様のKubernetesクラスターまたはDocker Compose | お客様 |
プライベートインフラストラクチャのセットアップについてはオンプレミスデプロイメントを参照してください。