キュー システムは Rediacc の中心であり、マシン間でのタスクの分散を管理します。
## 概要
キューは、次のライフサイクルでタスクを管理します。
PENDING → ASSIGNED → PROCESSING → COMPLETED/FAILED/CANCELLED
州
- 保留中 - タスクが作成され、ブリッジによって取得されるのを待っています
- ASSIGNED - Bridge がタスクを要求し、実行の準備をしています
- 処理中 - タスクは現在マシン上で実行中です
- 完了 - タスクは正常に終了しました
- FAILED - タスクでエラーが発生しました
- CANCELLED - タスクは手動でキャンセルされました
タスクのプロパティ
各キュー項目には次のものがあります。
| プロパティ | タイプ | 説明 |
|---|---|---|
タスクID | UUID | 一意のタスク識別子 |
ステータス | 列挙型 | 現在の実行状態 |
優先度 | 1-5 | 実行優先度 (1 番目が高い) |
再試行回数 | 番号 | 残りの再試行回数 |
vaultData | オブジェクト | 暗号化されたタスクの構成 |
出力 | 文字列 | タスク実行出力 |
エラー | 文字列 | 失敗した場合のエラー メッセージ |
作成された場所 | タイムスタンプ | タスクの作成時間 |
completedAt | タイムスタンプ | タスク完了時間 |
優先システム
タスクは優先順位に従って処理されます。
- P1 (クリティカル) - 即時実行 (緊急、セキュリティ)
- P2 (高) - 数分以内に実行 (展開)
- P3 (通常) - 数時間以内に実行 (標準タスク)
- P4 (低) - バックグラウンド作業 (メンテナンス)
- P5 (最小) - リソースが利用可能なとき (クリーンアップ)
### 例
# Create high-priority task
./rediacc create task \
--machine prod-01 \
--priority 1 \
--command "systemctl restart app"
再試行メカニズム
失敗したタスクは自動的に再試行できます。
{
"taskId": "550e8400-e29b-41d4-a716-446655440000",
"retryCount": 3,
"retryDelay": 30,
"maxRetries": 3
}
再試行動作を構成します。
retryCount- 残りの再試行回数retryDelay- 再試行間の秒数maxRetries- 許可される再試行の最大数
監視キュー
キューのステータスを確認する
./rediacc list queue
./rediacc list queue --status PENDING
./rediacc list queue --team Production
特定のタスクを監視する
./rediacc inspect queue task-123
リアルタイム監視
Web コンソールを使用して、リアルタイムのキューの更新と視覚化を行います。
ボールトデータ
タスクには暗号化された構成を含めることができます。
{
"vaultData": {
"function": "deploy",
"repository": "web-app",
"version": "1.2.3",
"environment": "production",
"credentials": {
"ssh_key": "[encrypted]",
"api_token": "[encrypted]"
}
}
}
Vault データはシステムによって自動的に暗号化/復号化されます。
バッチ操作
複数のタスクを効率的に処理します。
# Get next 5 tasks
./rediacc list queue --limit 5
# Cancel multiple tasks
./rediacc cancel queue task-1 task-2 task-3 --confirm
キューのベスト プラクティス
- キューの深さを監視 - キューが大きくなりすぎる場合はアラートを送信します
- 適切な優先順位を設定します - 優先順位 1 を使いすぎないでください。
- バッチ処理を使用する - 関連タスクをグループ化する
- 再試行を賢く構成 - 信頼性とリソース使用量のバランスを取る
- 完了したタスクをアーカイブする - キューをクリーンな状態に保ちます
トラブルシューティング
タスクが処理中に停止しています
タスクが行き詰まった場合:
- ブリッジのステータスを確認する
- マシンの SSH 接続を確認する
- タスクログでエラーを確認します。
- 必要に応じて手動でキャンセルします
高キューのバックログ
キューが増大している場合:
- ブリッジ容量を確認する
- マシンリソースを確認する
- ブリッジ設定の「batch_size」を増やします。
- ブリッジまたはマシンを追加する
タスクの失敗
常にチェックしてください:
- タスクのエラーメッセージ
- マシンログ
- ボールトのデータの整合性
- SSH接続
詳細については、ベスト プラクティス をご覧ください。