環境
さくらインターネット スタンダードプラン
背景
EC-CUBE4.2へのアップデート中にエラーが発生したWebサイトオーナーの対応です。
状況
いくら探してもEC-CUBE4.2にアップデートするプラグインがない。あるわけがないマニュアルを見てびっくりです。
< for EC-CUBE 4 Developers />
EC-CUBE 4 開発者向けドキュメントサイト
4.1から4.2へのマイグレーション
EC-CUBE4.1から4.2へのマイグレーションを解説します。
4.1から4.2へのマイグレーション
プラグインコードの変更
4.2は、4.1からの互換性がないバージョンになります。
これ最初はすごく簡単に考えてたんですけどアップデートはプラグインを使って行います。ワードプレスみたいに管理画面にアップデートボタンがあるわけじゃないんです。内部構造に精通している人ならコアのプログラムを入れ替えて行くだけで新しいバージョンにすることもできるのでしょうが、運用中のECサイトでそんな危なっかしいことはできないです。そこでで考えたのが新規にEC-CUBE4.2を構築して元サイトからデータやデザインを移植するやり方です。
#工程A
ステップ01. サーバーの構造解析
ステップ02. 全データバックアップ
ステップ03. 本番環境を複製して検証環境を構築(さくらインターネット)
ここでは本番環境と同じレンタルサーバー会社の同じプランを調達しました。
ウェブサーバーとデータベースサーバーをごとコピーしてます。
URLが違うので環境設定ファイルは変更しなきゃいけませんが不具合も含めて本番環境と同一の状態になります
#工程B
ステップ06. 検証環境でECCUBE4.2へマイグレーション
ステップ07. 検証環境で動作確認
ここではバージョンアップに関係しない不具合には目をつぶります。
プラグインが実行できる環境を整えて段階的にバージョンを上げていきます。
EC-CUBE 4.1の最新版のEC-CUBE 4.1.2-p1までバージョンアップしました。
なぜわざわざ別のサーバーで作業するかというと理由は2つあります。1つは本番環境はすでに爆弾を抱えている状態なのでバージョンアップ作業がシステム障害の原因にならないようにするためです。システム開発における基本的な措置とも言えます。もう1つは開発環境はこちらで主導権が必要だからです。サーバーの契約者に何をどう使うかを許可を取ったり説明しているようでは作業が進展しません。
#工程C
ステップ08. 仮設サーバーを構築(エックスサーバー)
ステップ09. 仮設サーバーへ運用を切り替え(本番環境は休止)
ECサイトの停止時間を限りなく0に近づけるために稼働中のサーバーとは別のサーバーにECサイトを構築します。
さくらインターネットサーバーではすでに登録しているドメインは別のサーバーでは登録することができません。
エックスサーバーを使用してます。ここでは疑似的にネームサーバーを切り替えた状態を作ってテストをします。
#工程D
ステップ10. 本番環境でECCUBE4.2で再構築
ステップ11. 本番環境へ切り替え(本番環境は休止)
ステップ12. 検収
ステップ13. 検証環境、仮設サーバーの破砕
ここで行うのは仮説サーバーで確認がおわった環境を本番環境に移設する作業です。
ここでは仮設サーバーと本番環境が全く同じ状態になります。
ゲームサーバーを切り替えることで本番環境に切り替えます
バージョン4.1から4.2に上げるのにもっと簡単にできるいい方法があったら是非教えて欲しいです。
バージョン4.2を使うために必要な変更箇所を一覧しておきます
・デザインのテンプレートの再購入&再セットアップ
・プラグインの再購入&再セットアップ
購入済みのプラグインでも、EC-CUBE4.2版を使用するためには再購入する必要があります。デザインテンプレートについても同じ扱いようです。いずれの製品も数万円から数十万円くらいです。