実行

実行段階を開始する前に、Cloud Service にオンボーディングする必要があります。また、Cloud Manager に習熟しておく必要もあります。Cloud Manager は AEM Cloud Service にコードをデプロイするための唯一のメカニズムだからです。

Cloud Manager を使用すると、組織がクラウド内の AEM を自己管理できます。このサービスには継続的統合および継続的配信(CI/CD)フレームワークが備わっているので、IT チームや実装パートナーはパフォーマンスやセキュリティを妥協することなくカスタマイズや更新を迅速に配信できます。

詳しくは、以下のリソースを参照してください。

概要

Cloud Service への移行の正確な手順は、購入したシステムと準拠するソフトウェア開発ライフサイクル手法によって異なります。

実行段階に必要になる主なステップを次の図に示します。

画像

コンテンツ転送

現在の AEM インスタンスから Cloud Service インスタンスにコンテンツを転送するには、アドビのコンテンツ転送ツールを使用します。

このツールを使用すると、ソース AEM インスタンスから AEM Cloud Service インスタンスに転送するコンテンツサブセットを指定できます。

メモ

差分コンテンツ追加を頻繁におこなって、Cloud Service での運用を開始する前におこなう最後の差分コンテンツ転送に必要なコンテンツフリーズ期間を短縮することをお勧めします。

詳しくは、コンテンツ転送ツールを参照してください。

重要

コンテンツ転送ツールに必要なシステム構成は、AEM 6.3 以降と Java 8 です。使用している AEM のバージョンがこれより古い場合、コンテンツ転送ツールを使用するには、コンテンツリポジトリを AEM 6.5 にアップグレードする必要があります。

コードリファクタリング

AEM as a Cloud Service でコードを開発および実行するには、考え方を変える必要があります。インスタンスはいつ停止するかわからないので、コードには特に回復力が必要である点に留意してください。Cloud Service で実行するコードは、常にクラスター内で実行されていることを認識している必要があります。つまり、常に複数のインスタンスが実行されています。

AEM as a Cloud Service に対応するために、AEM Maven プロジェクトに変更がいくつか必要になります。AEM as a Cloud Service では、AEM にデプロイするために、コンテンツ​と​コード​を別個のパッケージに分離する必要があります。

  • /apps/libs は AEM の不変領域と見なされます。AEM の起動後(例:実行時)に変更(作成、更新、削除)できないからです。実行時に不変領域を変更しようとすると失敗します。

  • リポジトリ内のそれ以外の領域(/content/conf/var/home/etc/oak:index/system/tmp など)はすべて可変領域です。つまり、実行時に変更できます。

詳しくは、推奨されるパッケージ構造を参照してください。

AEM as a Cloud Service で開発する際に留意する必要がある開発ガイドラインがさらにいくつかあります。詳しくは、AEM as a Cloud Service の開発ガイドラインを参照してください。

Cloud Service に対応するためにリファクタリングする必要がある領域のリストを計画段階で作成する必要があります。また、Cloud Service に移行するためにコードをリファクタリングし最適化する方法について詳しくは、開発ガイドラインを参照してください。

コードリファクタリングタスクの一部を高速化するために、次のツールを使用できます。

Cloud Manager Git を介して Cloud Service 環境にコードをプッシュする前に、コードをリファクタリングしローカルでテストすることをお勧めします。

詳しくは、AEM SDK のドキュメントを参照してください。

その他のリソースを以下に示します。

  • Dispatcher SDK のインストール方法については、「Install Dispatcher SDK」(Dispatcher SDK のインストール)を視聴してください。

  • Dispatcher SDK の設定方法については、「Configure Dispatcher SDK」(Dispatcher SDK の設定)を視聴してください。

  • ローカル開発環境を設定するには、Local Development Environment Set up(ローカル開発環境のセットアップ)を参照してください。

移行プロセスの一環として、アクティブな AEM 上で進行中のコード開発を、コードリファクタリングタスクと共に管理するには、AEM as a Cloud Service に対応するための Maven プロジェクトの再構築が完了するまで、コードの凍結期間を予定しておくことをお勧めします。

プロジェクトの再構築が完了したら、この新しい構造に基づいて新しいコード開発を再開できます。これにより、コードのデプロイメントおよびテスト中に発生する Cloud Manager パイプラインのエラーを減らすことができます。

メモ

コンテンツ転送タスクとコードリファクタリングタスクは、順番に実行しなくてもかまいません。これらのタスクは互いに独立に実行することができます。ただし、Cloud Service 環境でコンテンツが正常にレンダリングされるようにするには、正しいプロジェクト構造が必要です。

コードのデプロイメントとテストのベストプラクティス

Cloud Services 用 Cloud Manager のパイプライン実行では、ステージ環境に対するテストの実行をサポートしています。

テストスクリプトの作成と 50 %以上の推奨コードカバレッジについては、コード品質テストを参照してください。

さらに、AEM エンジニアリングのベストプラクティスに基づいて作成され Cloud Manager で実行されるカスタムコード品質ルールについて詳しくは、カスタムコード品質ルールについてを参照してください。

Cloud Manager を使用する以外に、Cloud Service 環境にコードをデプロイする手段はありません。

Cloud Manager を使用してコードを管理およびデプロイする方法については、次のリソースを参照してください。

運用開始準備のベストプラクティス

AEM as a Cloud Service 上でうまくスムーズに運用を開始できるようにするには、次の手順を実行することを検討してください。

  • コードとコンテンツの凍結期間のスケジュール設定
  • 最終コンテンツ追加の実行
  • 反復テストの完了
  • パフォーマンステストとセキュリティテストの実行
  • カットオーバー

このページ