Cloud Automation Patching Service (CAPS) ワークフローの仕組み
このトピックでは、CAPS (Cloud Automation Patching Service) を使用したパッチ操作の仕組みの概要を説明します。
用語
-
操作 - CAPS ーザーが実行する主なアクション:
- 適用
- 復元
-
フェーズ - ワークフローの次の 3 つのフェーズです。
- 予備検査
- パッチ適用
- 検証
-
環境 - パッチが適用される Adobe Commerce Cloud 環境。
運用
CAPS では、Adobe Commerce Cloud 環境でパッチを管理するための 2 つの主な 操作 をサポートしています。
-
適用操作 – 安全で検証済みのプロセスを使用して、コードベースにパッチの変更を追加します。 パッチは、パッチファイルを「m2-hotfixes」フォルダーに配置することで適用されます。
-
操作を元に戻す - 「m2-hotfixes」フォルダーからパッチファイルを削除することで、コードベースから以前に適用したパッチを削除します。
フェーズ
CAPS のワークフローでは、パッチが安全かつ確実に適用されるように、次の 3 つの フェーズ を常にこれに従って実行します。
- 事前チェック - パッチの互換性と環境への対応を検証します。
- パッチ適用 – 統合環境でパッチを適用または元に戻します。
- 検証 - パッチアプリケーションを検証し、ヘルスチェックを実行します。
フェーズの詳細
フェーズ 1:事前確認
事前チェックフェーズでは、パッチが環境に安全に適用できるかどうかが検証されます。
結果:
-
実稼動環境の保護 (実稼動環境のみ):
- ストアがメンテナンスモードであるかどうかを確認します
- Cron ジョブが無効化されていることを確認
- 条件が満たされない場合、パッチ適用をブロックします
- 条件が満たされた場合に確認ダイアログを表示します
-
パッチ検証 - パッチファイルが有効で互換性があることを確認します
-
環境評価 – 環境への対応とリソースを確認します。
-
競合の検出 – 既存のコードとの潜在的な競合を特定します
-
依存関係のチェック - Adobe Commerce バージョンの互換性を検証します
フェーズ 2:パッチ適用
パッチ適用フェーズでは、テスト用の一時的な統合環境でパッチを適用または元に戻します。 この段階 CAPS は、一時的なテスト環境を作成し、実際の環境を変更する前にパッチを安全に適用してテストします。
このアプローチの特長は次のとおりです。
- 安全性 - パッチが検証されるまで、ターゲット環境を変更しません。
- テスト – 実稼働環境に影響を与える前の実稼働環境で
- ロールバック機能 – 問題が検出された場合
- 分離 - パッチ操作ごとに実行します。
ステージ 2a:統合環境の作成
ブランチの作成 - CAPS は {target-environment}-CAPS-{patch-id} という名前の一時的な統合環境ブランチを作成します
環境の設定 – 統合環境はターゲット環境の子として作成されます
コード同期 – 統合環境は、ターゲット環境の正確な状態を継承します
リソース要件 - CAPS は、ターゲット環境のコードベースを使用して一時環境を作成します。 Adobe Commerce Cloud のドキュメントによると、各環境(統合環境を含む)には、契約したストレージプランに基づいて個別のストレージ割り当てがあります。 契約したストレージ量は、各環境の合計ストレージ量を表します。 ほとんどの場合、リソース制限に関する問題は発生しません。 リソース制限に関するエラーが発生した場合は、アプリケーションのサイズと契約済みストレージを計画で確認してください。
ステージ 2b:統合環境でのパッチアプリケーション
セーフテスト - パッチは、ターゲット環境に直接適用されるのではなく、統合環境に適用されます
ファイル管理 - パッチファイルは m2-hotfixes/ ディレクトリに配置されます
Git 操作 – 変更がコミットされ、統合環境ブランチにプッシュされます
環境のアクティベーション – 統合環境がアクティブ化され、パッチが適用されたコードがデプロイされます
ステージ 2c:ターゲット環境へのマージ バック
環境チェックアウト - ターゲット環境 CAPS ローカルにチェックアウトします
結合操作 – 統合環境のブランチがターゲット環境に結合されます
競合の解決 – 競合が発生した場合、可能であれば自動的に解決されます
デプロイメント – 結合された変更がターゲット環境にデプロイされます
検証 - CAPS は、結合が成功し、環境が同期していることを検証します
環境のクリーンアップ - リソースを解放するために、一時的な統合環境が削除されます
統合環境のライフサイクル
統合環境には、パッチ適用段階で特定のライフサイクルがあります。
- 作成 - パッチ適用ステージの開始時に作成されます。
- アクティブ期間 - パッチの適用およびテスト中もアクティブな状態を維持
- クリーンアップ – 結合が成功した後、または操作が失敗した場合に、自動的に削除されます
フェーズ 3:検証
検証フェーズでは、パッチが適用されたアプリケーションが正しく動作し、ヘルスチェックを実行することを確認します。
結果:
- アプリケーションヘルスチェック - アプリケーションの起動と正しい実行を検証します
- クリーンアップ – 一時環境を削除し、ログを更新し、完了を通知します
成功指標
適用操作:
- 「ジョブが正常に完了しました」 – 問題なくパッチが適用されました
- 「パッチが適用されました」 – パッチは既に存在します(アクションは不要)
- パッチファイルが「m2-hotfixes」フォルダーに正常に配置されました
- すべての検証チェックが合格
- アプリケーションのヘルスチェックに成功しました
操作を元に戻す:
- 「ジョブが正常に完了しました」 – 問題なくパッチを元に戻しました
- 「パッチは元に戻されました」 – パッチは既に元に戻されています(アクションは不要)
- パッチファイルが「m2-hotfixes」フォルダーから正常に削除されました
- すべての検証チェックが合格
- アプリケーションのヘルスチェックに成功しました
実稼動環境の保護
CAPS には、偶発的なシステム停止を防ぎ、パッチが事前に安全に検証されるように、実稼動環境に対する特定の保護機能が含まれています。
本番パッチ適用の前提条件
実稼動環境にパッチを適用する前に、CAPS は次の 2 つの重要な条件を確認します。
- メンテナンスモード - ストアはメンテナンスモードになっている必要があります
- Cron ジョブを無効にする - Cron ジョブは無効にする必要があります
いずれかの条件が満たされない場合、パッチアプリケーションはブロックされ、ユーザーに通知されます。