[PaaS のみ]{class="badge informative" title="Adobe Commerce on Cloud プロジェクト(Adobeが管理する PaaS インフラストラクチャ)およびオンプレミスプロジェクトにのみ適用されます。"}

Cloud Automation Patching Service (CAPS) ワークフローの仕組み

このトピックでは、CAPS (Cloud Automation Patching Service) を使用したパッチ操作の仕組みの概要を説明します。

用語

  • 操作 - CAPS ーザーが実行する主なアクション:

    • 適用
    • 復元
  • フェーズ - ワークフローの次の 3 つのフェーズです。

    • 予備検査
    • パッチ適用
    • 検証
  • 環境 - パッチが適用される Adobe Commerce Cloud 環境。

運用

CAPS では、Adobe Commerce Cloud 環境でパッチを管理するための 2 つの主な 操作 をサポートしています。

  • 適用操作 – 安全で検証済みのプロセスを使用して、コードベースにパッチの変更を追加します。 パッチは、パッチファイルを「m2-hotfixes」フォルダーに配置することで適用されます。

  • 操作を元に戻す - 「m2-hotfixes」フォルダーからパッチファイルを削除することで、コードベースから以前に適用したパッチを削除します。

IMPORTANT
元に戻す操作は、CAPS で最初に適用されたパッチに対してのみ使用できます。 手動または他の方法で適用したパッチは、このサービスを使用して元に戻すことはできません。

フェーズ

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 ジョブは無効にする必要があります

いずれかの条件が満たされない場合、パッチアプリケーションはブロックされ、ユーザーに通知されます。

関連トピック

recommendation-more-help
c2d96e17-5179-455c-ad3a-e1697bb4e8c3