クラウドインフラストラクチャー上のAdobe Commerceで環境をリセット

この記事では、クラウドインフラストラクチャー上のAdobe Commerceで環境をロールバックする様々なシナリオについて説明します。

お客様の状況に最も適したものを選択してください。

シナリオ 1:計画アクティビティ

計画されたデプロイメントやアップグレードでは、最も簡単で推奨されます Rollback 商人は、準備の一環として、次の操作を行います。

NOTE
必ず以下の手順をテストしてください Staging Environment 最初!

アップグレード/デプロイメントアクティビティの 5 日前:

  1. 現在のデータベースのサイズを確認します。
  2. 十分なディスク容量があることを確認します。 /data/exports 手を握る Database Dump. 十分なディスク領域がない場合は、不要なデータを削除するか、サポートケースを作成してディスクの拡張をリクエストします。

変更の日:

  1. Web サイトの配置先 Maintenance Mode.

    詳細を読む: 有効または無効 Maintenance Mode ユーザーガイドで、 Maintenance Mode アップグレードのオプション アップグレードガイドをご覧ください。
  2. ローカルを取る Database Dump.

If a Rollback は必須です:

  1. 次のようなアプリケーションの場合: MariaDB は、この計画されたアクティビティの一環としてアップグレードされました。最初に、そのアプリケーションを以前のバージョンに再インストールしてください。
  2. Rollback ローカルを使用したデータベース Database Dumpを作成し、再度に読み込みます。 MariaDB.
  3. Rollback 経由のコード Git を以前の作業バージョンに変更します。

使用 Snapshots アップグレード/予定アクティビティには推奨されない方法です rollbacks/restores(データの取得にローカルと比較して時間がかかるため) Database Dump(上記の手順 2 の) If a Rollback は必須です セクション。

Snapshots ノード/サーバに保持されず、別のストレージ・ブロックに保持されます。このデータは、ネットワークを介してブロック・ストレージから新しいディスクに送信する必要があるため、処理に時間がかかります。 その後、新しいディスクがノードにマウントされ、ノードまたはサーバーに接続されている元のディスクに取得/読み込みの準備が整います。

これをローカルの読み込みと比較する場合 Database Dumpを指定すると、データはノードまたはサーバー上で既に取得可能なので、多くの時間は Database Import は必須です。

シナリオ 2:スナップショットの復元

読み取り: クラウドインフラストラクチャー上のAdobe Commerceでスナップショットを復元 開発者向けドキュメントを参照してください。

NOTE
スナップショットの作成は、クラウドインフラストラクチャアカウントでAdobe Commerceにアクセスした後、大規模な変更を適用する前の最初の手順である必要があります。 これはベストプラクティスであり、強く推奨されます。

読み取り: スナップショットの作成 開発者向けドキュメントを参照してください。

シナリオ 3:スナップショットがない、安定して構築(SSH 接続を使用可能)

このセクションでは、スナップショットを作成していないが、SSH 経由で環境にアクセスできる場合に環境をリセットする方法を示します。

手順は次のとおりです。

  1. 構成管理を無効にします。
  2. Adobe Commerce ソフトウェアをアンインストールします。
  3. をリセット git 分岐。

これらの手順を実行した後:

  • Adobe Commerceのインストールがバニラ状態に戻ります(データベースが復元されました。デプロイメント設定が削除されました。次のディレクトリにあります var クリア)。
  • あなたの git 過去に分岐が目的の状態にリセットされます。

以下の詳細な手順をお読みください。

手順 0 (前提条件):config.php を削除して、構成管理を無効にします

デプロイメント中に以前の設定が自動的に適用されないように、設定管理を無効にする必要があります。

設定管理を無効にするには、 /app/etc/ ディレクトリにが含まれていない config.php ファイル。

設定ファイルを削除するには、次の手順に従います。

  1. 環境に SSH で接続する.
  2. 設定ファイルを削除します。 rm app/etc/config.php

詳しくは、設定管理を参照してください。

手順 1uninstall コマンドを使用してAdobe Commerce ソフトウェアをアンインストールする

Adobe Commerce ソフトウェアをアンインストールすると、データベースが削除されて復元され、配置設定が削除されて、次のディレクトリがクリアされます var.

読み取り: Adobe Commerce ソフトウェアをアンインストールします 開発者向けドキュメントを参照してください。

Adobe Commerce ソフトウェアをアンインストールするには、次の手順に従います。

  1. 環境に SSH で接続する.
  2. 実行 setup:uninstall : bin/magento setup:uninstall
  3. アンインストールを確認します。

次のメッセージが表示され、アンインストールが正常に完了したことを確認します。

[SUCCESS]: Magento uninstallation complete.

つまり、Adobe Commerce(DB を含む)のインストールが本物の(Vanilla)状態に戻りました。

手順 2:をリセットする git 分岐

(を使用) git リセットすると、コードが過去に目的の状態に戻ります。

  1. ローカル開発環境に環境のクローンを作成します。 Cloud Console で次のコマンドをコピーできます。 copy_git_clone.png
  2. コミット履歴にアクセスします。 使用方法 --reverse 履歴を逆順に表示して利便性を高めるには: git log --reverse
  3. 正常に動作しているコミットハッシュを選択します。 コードを本物の状態(Vanilla)にリセットするには、ブランチ(環境)を作成した最初のコミットを見つけます。
    Git コンソールでのコミットハッシュの選択
  4. ハード適用 git リセット : git reset --h <commit_hash>
  5. 変更をサーバーにプッシュ: git push --force <origin> <branch>

これらの手順を実行した後、 git ブランチがリセットされ、全体が git 変更ログは明確です。 最後 git プッシュトリガーは再デプロイしてすべての変更を適用し、Adobe Commerceを再インストールします。

シナリオ 4:スナップショットなし、ビルドの中断(なし SSH 接続)

ここでは、環境が重大(critical)状態の場合に、環境をリセットする方法を説明します。デプロイメントプロシージャは動作しているアプリケーションを正常に構築できないため、次の処理が行われます SSH 接続できません。

このシナリオでは、まず以下を使用してAdobe Commerce アプリケーションの動作ステータスを復元する必要があります git をリセットしてから、Adobe Commerce ソフトウェアをアンインストールします(データベースをドロップして復元したり、デプロイメント設定を削除したりします)。 シナリオにはシナリオ 3 と同じステップが含まれますが、ステップの順序は異なり、追加のステップとして再デプロイが強制されます。 手順は次のとおりです。

これらの手順を実行すると、シナリオ 3 と同じ結果が得られます。

手順 4:再デプロイの強制

コミットを作成し(これは空のコミットである可能性がありますが、お勧めしません)、トリガーにプッシュして再デプロイします。

git commit --allow-empty -m "<message>" && git push <origin> <branch>

setup:uninstall が失敗した場合は、データベースを手動でリセットします

を実行する場合 setup:uninstall コマンドがエラーで失敗し、完了できません。次の手順で DB を手動でクリアします。

  1. 環境に SSH で接続する.
  2. MySQL DB に接続します。 mysql -h database.internal (Pro 環境の場合は、以下を参照してください。 MySQL サービスの設定)に設定します。
  3. をドロップ main DB : drop database main;
  4. 空のを作成 main DB: create database main;
  5. 次の設定ファイルを削除します。 config.php , config.php , .bak, , env.php, env.php.bak

DB のリセット後、 作る git 再デプロイをトリガーするために環境にプッシュ 新規作成した DB にAdobe Commerceをインストールします。 または redeploy コマンドを実行する.

recommendation-more-help
8bd06ef0-b3d5-4137-b74e-d7b00485808a