Execution Manager¶
プレーン: インテリジェンスプレーン
目的¶
タスク実行をオーケストレーションし監視する。Execution Manager は実行コントラクトのライフサイクルを管理する——エッジデバイスへのコントラクトのプッシュ、オフライン期間中の予測状態の維持、再接続時の実際の状態との照合。クラウドサイドの計画とエッジサイドの実行を橋渡しする。
責務¶
実行コントラクトをデバイスにプッシュする
ThingIO(テレメトリデータ)経由でコントラクトの実行を監視する
ライブ/予測/照合済みのステートマシンを維持する
コントラクトの失敗を検出し、回復のためにポリシーサービスに問い合わせる
照合によって乖離が判明した場合に再計画を起動する
実行コントラクト¶
プラットフォームがデバイスにタスクを割り当てると、タスク定義、スコープされたアクション、および必要なデータ(例:Equator からのマップ抜粋)を含む 実行コントラクト をプッシュする。プッシュ時点で接続性が確認される。
詳細は 実行コントラクトパターン を参照。
デバイスステートマシン¶
┌────────────┐
│ Live │ ◄── Connected, real-time telemetry
└─────┬──────┘
│ connection lost
▼
┌────────────┐
│ Projected │ ◄── Offline, platform estimates based on contract
└─────┬──────┘
│ device reconnects
▼
┌────────────┐
│ Reconciled │ ◄── Actual state corrects projection
└─────┬──────┘
│ divergence? → replan
▼
┌────────────┐
│ Live │
└────────────┘
状態 |
意味 |
プラットフォームの挙動 |
|---|---|---|
ライブ |
接続済み、リアルタイムテレメトリ |
プラットフォームが実際の状態を直接把握 |
予測 |
オフライン、テレメトリなし |
コントラクトスコープに基づいたプラットフォームの推定 |
照合済み |
デバイスが再接続し、実際の状態を報告 |
実際の状態が予測を修正し、必要に応じて再計画を起動する |
コントラクト失敗時のリカバリ¶
ハードコードではなく Policy Service が処理します:
Execution Manager がコントラクトの失敗を検出
適用可能な回復戦略についてポリシーサービスに問い合わせる
リカバリを実行:再試行、再割り当て、エスカレーション、保留、またはキャンセル
API サーフェス¶
操作 |
説明 |
|---|---|
|
コントラクトをデバイスにプッシュする |
|
コントラクトのステータスを取得する |
|
コントラクトをクエリする |
|
手動照合を起動する |
依存関係¶
サービス |
関係 |
|---|---|
Scheduler |
実行する割り当てを受け取る |
ThingIO |
実行中にデバイスの状態を監視する(ThingsBoard テレメトリ経由) |
Equator |
コントラクトに空間データを含める |
Policy Service |
障害回復戦略 |
Planner |
照合の乖離時に再計画を起動する |
利用者¶
コンシューマー |
用途 |
|---|---|
アプリケーション |
実行の進捗を監視する |
デバイス |
コントラクトを受け取り実行する |