2.7 KiB
2.7 KiB
PhotonCloud Bare-Metal Service Mesh実装状況
実装済み
deployer-ctl CLI
- ✅
bootstrap: Chainfireへのクラスタ初期設定投入 - ✅
apply: 宣言的なクラスタ状態の適用 - ✅
dump: Chainfire上のキー一覧とデバッグ - ✅
deployer: リモートDeployer制御(プレースホルダ)
node-agent
- ✅ Chainfireからノード情報の取得
- ✅ ハートビート更新(
last_heartbeat) - ✅ ローカルServiceInstanceの同期(
/etc/photoncloud/instances.json) - ✅ プロセスReconcileのスケルトン
- ✅ ヘルスチェック(HTTP/TCP/Command)
mtls-agent
- ✅ プレーンTCPプロキシモード
- ✅ TLS/mTLSサーバモード(
rustlsベース) - ✅ モード切替(
plain/tls/mtls/auto) - ✅ Chainfire統合(ServiceDiscovery)
- ✅ サービス発見とキャッシュ
- ✅ mTLSポリシー取得
cert-authority
- ⚠️ CA証明書生成(TODO: rcgen API更新が必要)
- ⚠️ 証明書発行(TODO: rcgen API更新が必要)
未実装・今後の課題
Step 5: サービス発見と新規マシンの発見
- ✅ NodeAgentによるServiceInstance登録
- ✅ mTLS AgentによるChainfire経由のサービス発見
- ⚠️ 新規ノードの自動検出とブートストラップ
Step 6: mTLS証明書ライフサイクルとセキュリティモデル
- ⚠️ 証明書発行フロー(rcgen API更新待ち)
- ⚠️ 証明書ローテーション
- ⚠️ SPIFFEライクなアイデンティティ検証
Step 7: mTLSオン/オフと環境別ポリシー
- ✅ 環境別デフォルト設定(
ClusterStateSpec) - ✅ mTLS AgentでのChainfire経由ポリシー読み込み
- ⚠️ 動的ポリシー更新(Watch)
Step 8: 既存サービスの移行計画
- ⚠️ クライアントラッパの実装
- ⚠️ 段階的移行ツール
Step 9: Chainfireとの具体的なインテグレーション
- ✅ 基本的なCRUD操作
- ⚠️ 認証・権限モデル
- ⚠️ フォールトトレランス(キャッシュ)
Step 10: 実装優先度とマイルストーン
- ✅ MVPフェーズ(NodeAgent/mTLS Agent基本機能)
- ⚠️ mTLS対応フェーズ(証明書管理)
- ⚠️ 運用フェーズ(監視・ログ・トレース)
- ⚠️ QEMU環境でのE2Eテスト
ビルド状況
deployer-ctl: ✅ ビルド成功node-agent: ✅ ビルド成功mtls-agent: 確認中cert-authority: 確認中(rcgen API問題あり)
次のステップ
- NodeAgentのプロセス起動/停止Reconcile実装
- mTLS Agentのポリシー適用とWatch機能
- QEMU環境でのE2Eテスト環境構築
- 証明書管理(rcgen API更新後)