ジャーニーの実装段階では、コードとコンテンツを AEM as a Cloud Service に移行する準備を整えるためのツールについて確認します。
ジャーニーのこれまでのパートでは、 AEM as a Cloud Serviceの変更点を理解 することと、デプロイメントが 準備段階 でクラウドに移行する準備ができているかどうかを判断することを経験しました。
この記事では、コードとコンテンツをクラウドに移動する準備ができていることを、アドビが提供するツールを使用して確認する方法について引き続き説明します。
このドキュメントの目的は次のとおりです。
始める前に、Cloud Manager に習熟している必要があります。Cloud Manager は AEM as a Cloud Service にコードをデプロイするための唯一のメカニズムであるためです。
Cloud Manager を使用すると、クラウド内の AEM を組織で自己管理できるようになります。このサービスには継続的インテグレーションと継続的デリバリー(CI/CD)フレームワークが備わっているので、IT チームや実装パートナーはパフォーマンスやセキュリティを妥協することなくカスタマイズや更新を迅速に配信できます。
Cloud Manager の使い方については、以下のリソースを参照してください。
オンボーディングジャーニー を参照して、Experience Manageras a Cloud Serviceのオンボーディングに関するセルフヘルプリソースを理解してください。
Git と Adobe Cloud Manager の統合:1 つの Git リポジトリーを使用してコードをデプロイする方法について
Adobe Experience Manager as a Cloud Service の設定:Admin Console での製品とユーザーアクセスの管理
Cloud Service への移行の正確な手順は、購入したシステムと準拠するソフトウェア開発ライフサイクル手法によって異なります。
次の図は、AEM as a Cloud Service で使用するコードとコンテンツを変換するフェーズについて、主な段階を示したものです。
以下の章では、これを実現するために必要なツールの詳細を説明します。
現在の AEM インスタンスから Cloud Service インスタンスにコンテンツを移行するには、アドビのコンテンツ転送ツールを使用します。
このツールを使用すると、ソース AEM インスタンスから AEM Cloud Service インスタンスに転送するコンテンツのサブセットを指定できます。
コンテンツ移行は、異なるチーム間での計画、追跡、共同作業を必要とする複数の手順で構成されるプロセスです。
ツールの仕組みと推奨する使用方法について詳しくは、 コンテンツ転送ツールのドキュメント を参照してください。
Cloud Services と互換性を持たせるために、既存の機能のリファクタリングを開始します。
これを行うには、コードのリファクタリングを開始するために必要な、基本的なツールの詳細を説明したドキュメントを確認する必要があります。
また、以下も行ってください。
このビデオを視聴すると、Dispatcher SDK をローカルにインストールする方法を理解できます。
このビデオを視聴すると、Dispatcher SDK の設定方法を理解できます。
AEM as a Cloud Service でコードを開発して実行するには、考え方を変える必要があります。インスタンスはいつ停止するかわからないので、コードには特に回復力が必要である点に留意してください。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 SDK に精通するために、 ドキュメント を参照してください。
移行ジャーニーの一環として、アクティブな AEM 上で進行中のコード開発と、コードリファクタリングタスクを管理するには、AEM as a Cloud Service と互換性のある Maven プロジェクトの再構築が完了するまで、コードの凍結期間をスケジュール設定しておくことをお勧めします。
プロジェクトの再構築が完了したら、この新しい構造に基づいて新しいコード開発を再開できます。これにより、コードのデプロイメントおよびテスト中に発生する Cloud Manager パイプラインのエラーを減らすことができます。
コンテンツ転送タスクとコードリファクタリングタスクは、順番に実行しなくてもかまいません。これらのタスクは互いに独立に実行することができます。ただし、Cloud Service 環境でコンテンツが正常にレンダリングされるようにするには、正しいプロジェクト構造が必要です。
Cloud Manager パイプラインは、ステージング環境に対するテストの実行をサポートしています。
コード品質テストに関する以下のドキュメントのベストプラクティスに従います。
ソースシステムを準備するには、システムレベルおよび AEM 管理者レベルのタスクが必要です。開始するには、 リビジョンのクリーンアップ タスクと データストアのごみ収集 タスクのステータスを確認し、コンテンツリポジトリが適切に維持されている状態にあることを確認します。AEM バージョン 6.3を実行している場合は(コンテンツ転送ツールはバージョン 6.3 以降と互換性があるので)、オフライン圧縮を実行し、その後にデータストアのガベージコレクションを実行することをお勧めします。
データ整合性チェック は、すべての AEM バージョンにわたって推奨され、コンテンツリポジトリの移行作業を適切な状態に保ちます。
AZCopy のインストールと設定を行うには、システム管理者レベルのアクセス権が必要です
また、未使用のアセット、ページ、AEM プロジェクト、ユーザーおよびグループを確認して、移行時の時間を節約することをお勧めします。詳しくは、 コンテンツリポジトリの正常性 の節を参照してください。
実稼動クローン へのアクセスが設定されたら、リポジトリの正常性の確認に進みます。前の節で説明したように、移行を開始する前に、ソース上のリポジトリをクリーンアップしてコンパクト化することが目的です。この手順により、移行が開始された後の問題のトラブルシューティングに費やす時間を大幅に節約できる可能性があります。
作業項目 | 重要な留意点 |
---|---|
ユーザー、グループ、権限 | メンバーシップに関するユーザー、グループ、複雑さの量を理解する必要があります。移行前に、クリーンアップできる未使用のユーザーやグループがソース内にないか探します。 |
不完全なアセット処理 | 移行を開始する前に、ソースシステム内のアセットの処理を完了して、AEM as a Cloud Service の移行時に発生する可能性のある問題を回避します。 |
コンテンツの正常性 | 移行を開始する前に、正しくないコンテンツを検索して除去することをお勧めします。例えば、オリジナルのレンディションがない、またはワークフロー処理でスタックしている、アセットやページを探します。アセットの正常性 も参照してください。 |
コンテンツ移行の戦略とタイムライン の節では、収集したデータを推定して移行プランを作成する方法について詳しく説明します。
データの収集は、移行作業および関連タスクの計画に役立ちます。抽出と取り込みの時間は、データポイントを移行セットの特定のサイズに関連付けることができるので、特に便利です。そのため、次のデータポイントを推定して、プランを作成できます。
もう 1 つの重要なデータポイントは、コンテンツの移行と組み合わせた場合、 ユーザーマッピング を完了するのに要する時間です。このデータポイントは、全体的な抽出タイムラインに追加され、追加中に実行する必要がない場合があるため、より現実的な見積もりのために考慮に入れることができます。
これらのデータポイントは、「KPI の設定」やその他の移行関連タスクにも役立ちます。
収集したデータポイント(上記を参照)に基づいて、マクロなプロジェクトプランに統合できる移行プランを作成できます。この手順により、すべての主要な関係者が移行アクティビティを視覚化し、計画できるようになります。
次の表に、一般的な移行プランを示します。
移行の反復 | 開始日 | 推定終了日 | 依存関係 | 推定期間(日数) | 追加の詳細/作業項目 |
---|---|---|---|---|---|
PRDCLONE-AUTHOR-INITIAL-USRMAP-CSSTAGE-AUTHOR | |||||
PRDCLONE-PUBLISH-TOPUP-CSSTAGE-AUTHOR |
上記の表からわかるように、特定の命名形式に従って移行の反復を識別すると便利です。例:ソース AEM 環境の場合は PRDCLONE、AEM as a Cloud Service 環境の場合は AUTHOR/PUBLISH、AEM as a Cloud Service インスタンスの場合は CSSTAGE-AUTHOR などです。
移行プランに影響を与える重要な詳細:
必要な抽出の合計数
必要な取り込みの合計数
移行トラッカーを使用して、初期実行と追加実行の両方の時間をメモすることができます。これらのデータポイントは、最終的な追加の前に、現実的なコンテンツ凍結要件を策定するのに役立ちます。
トラッカーは、次の操作にも役立ちます。
次の表に、機能移行トラッカーを示します。
ソース(環境/インスタンス/URL) | 移行先(環境/インスタンス/URL) | 移行セット名、タイプ(初期または追加) | 移行セットのサイズ(MB) | ユーザーマッピング(はい / いいえ) | 抽出期間(開始、終了、所要時間) | 取り込み時間(開始、終了、所要時間) | 問題 / 解決策 / 詳細 |
---|---|---|---|---|---|---|---|
次の節では、コンテンツ移行戦略とタイムラインの策定に使用できる重要な手順と関連タスクを示します。
AEM インストールがクラウドに移行する準備ができているかどうかを評価する方法を把握し、その準備に必要なツールの使用方法を確認したら、 本稼働フェーズ に進みます。