实施阶段 implementation-phase
在此历程的实施阶段,您将探索用于使代码和内容准备好迁移至AEMas a Cloud Service的工具。
迄今为止的故事 story-so-far
在历程的前面部分,您已完成 熟悉AEMas a Cloud Service中的更改,并确定您的部署是否准备好通过移动到云 就绪阶段.
本文接下来提供了有关如何使用Adobe提供的工具以确保您的代码和内容准备好移动到云的建议。
目标 objective
本文档旨在:
- 向您介绍Cloud Manager、AEM持续集成和交付框架,该框架用于将代码部署到AEMas a Cloud Service
- 使用内容传输工具快速掌握
- 描述您必须使用的代码重构工具,以便您可以根据AEMas a Cloud Service对代码进行现代化改造
使用Cloud Manager using-cloud-manager
在开始之前,您必须熟悉Cloud Manager,因为它是将代码部署到AEMas a Cloud Service的唯一机制。
Cloud Manager 使组织能够在云中自行管理 AEM。它包含一个持续集成和持续交付 (CI/CD) 框架,使 IT 团队和实施合作伙伴能够在不影响性能或安全性的情况下快速交付自定义或更新。
您可以通过参阅以下资源来熟悉使用Cloud Manager:
-
入门历程 了解有关Experience Manageras a Cloud Service入门的自助资源。
-
将 Git 与 Adobe Cloud Manager 集成,了解使用 Single Git 存储库来部署代码的相关信息。
-
Adobe Experience as a Cloud Service 配置,了解有关在 Admin Console 中管理产品和用户访问权限的信息。
使用Adobe提供的工具为您的内容和代码云做好准备 use-tools-to-make-code-and-content-cloud-ready
向Cloud Service过渡的确切步骤取决于您所购买的系统以及所遵循的软件开发生命周期惯例。
下图显示了此阶段涉及的主要步骤,其中涉及转换代码和内容以用于AEMas a Cloud Service:
我们将在以下章节中开始详细介绍您必须使用的工具,以便您能够实现这一点。
内容迁移 content-migration
要将内容从当前AEM实例迁移到Cloud Service实例,您可以使用Adobe的内容传输工具。
利用此工具,您可以指定要从源 AEM 实例传输到 AEM 云服务实例的所需内容子集。
内容迁移是一个多步骤的过程,它需要在不同的团队之间进行规划、跟踪和协作。
有关该工具的工作方式以及Adobe建议您如何使用的完整详细信息,请参阅 内容传输工具文档.
代码重构 code-refactor
为开发设置 set-up-for-development
现在应该开始重构现有功能以与Cloud Service兼容。
首先,查看详细说明基本工具的文档,然后开始重构您的代码:
- 在规划期间,最好是列出必须重构才能与AEMas a Cloud Service兼容的区域。 您可以查看 开发准则 有关如何重构和优化代码以进行Cloud Service的详细信息。
- 详细了解如何 管理配置 在AEMas a Cloud Service中。
- 了解如何通过下载 AEMAS A CLOUD SERVICESDK
- 最后,请熟悉 AEMas a Cloud ServiceJava API.
此外,您还可以:
-
观看此视频,了解如何本地安装Dispatcher SDK:
embed -
观看此视频,了解如何配置Dispatcher SDK:
embed
思维方式的改变 a-change-in-mindset
在AEMas a Cloud Service中开发和运行代码需要改变思维方式。 需要注意的是,代码必须是可复原的,尤其是在实例可能随时停止时。在云服务中运行的代码必须意识到它始终在群集中运行这一事实。这意味着始终会有多个实例在运行。
AEM Maven项目需要进行某些更改才能与云兼容。 AEMas a Cloud Service需要将 内容 和 代码 部署到不同的包中,以部署到AEM中:
-
/apps
和/libs
视为AEM的不可变区域,因为AEM启动后(即在运行时)无法对其进行更改。 这包括创建、更新或删除操作。 运行时对不可改变区域所做的任何更改尝试都将失败。 -
存储库中的其他所有内容(例如,
/content
,/conf
,/var
,/home
,/etc
,/oak:index
,/system
,/tmp
)都是可变区域,这意味着可在运行时更改这些区域。
欲了解更多信息,请参阅 推荐的包结构 文档。
云迁移工具 cloud-migration-tools
Adobe提供了多种工具来帮助加速某些代码重构任务。 了解这些工具及其解决的问题将降低迁移的复杂性和时间。
- 资产工作流迁移,用于自动迁移资产处理工作流的工具
- Dispatcher转换器,该工具可将您现有的Dispatcher配置转换为可供AEMas a Cloud Service使用的格式。
- 存储库现代化器,该工具将AEM多模式项目作为输入并将其转换为AEMas a Cloud Service项目
- 索引转换器,此工具可将索引转换为与AEMas a Cloud Service兼容的表单
- 现代化工具,这是一套实用程序,可用于将旧版AEM功能转换为AEMas a Cloud Service的现代化且受支持的功能。
AEM as a Cloud Service设置本地开发环境后,请查阅 文档.
计划代码冻结 schedule-a-code-freeze
要管理活动AEM上正在进行的代码开发以及过渡历程中的代码重构任务,Adobe建议在完成Maven项目重组以与AEMas a Cloud Service兼容之前,设置一个代码冻结期。
项目重组完成后,您可以基于这个新结构继续新的代码开发。 这减少了在代码部署和测试期间出现的Cloud Manager管道故障。
代码部署和测试的最佳实践 best-practices
Cloud Manager管道支持执行针对暂存环境运行的测试。
遵循以下文档中有关代码质量测试的最佳实践:
- 代码质量测试,该文档描述了编写测试脚本的过程,并解释了建议覆盖率至少为50%的概念。
- 了解自定义代码质量规则 该文档旨在描述Cloud Manager根据AEM Engineering的最佳实践创建的自定义代码质量规则。
准备上线 preparing-for-go-live
准备源系统以进行迁移涉及系统和AEM管理员级别任务。 首先,通过检查 修订清理 和 数据存储垃圾收集 任务状态。 如果您正在运行AEM版本6.3(因为内容传输工具与版本6.3及更高版本兼容),建议先执行离线压缩,然后再执行数据存储垃圾收集。
数据一致性检查 建议在所有AEM版本中使用,以确保内容存储库处于可启动迁移活动的良好状态。
需要系统管理员级别的访问权限才能安装和配置 AZCopy
此外,还建议您查看任何未使用的资产、页面、AEM项目、用户和组,以节省迁移时间。 请参阅 内容存储库运行状况 部分。
内容存储库运行状况 repository-health
访问一次 生产克隆 已建立,继续检查存储库的健康状况。 如上一节中所述,目标是在开始迁移之前清理并压缩源上的存储库。 此步骤可能会节省大量时间,否则,在迁移开始后,将花费大量时间对问题进行故障诊断。
正在收集数据 gathering-data
收集数据可以帮助您规划迁移活动和相关任务。 提取和摄取时间特别有用,因为数据点可以与迁移集的特定大小相关联。 因此,可以推断这些数据点来制定计划:
这些数据点也可以帮助您 建立KPI 和其他迁移相关的任务。
迁移计划 migration-plan
根据您收集的数据点(请参阅上文),您可以创建可集成到宏项目计划中的迁移计划。 此步骤将使所有关键利益相关者能够围绕迁移活动进行可视化和规划。
下表说明了典型的迁移计划:
如上表所示,遵循特定命名格式标识迁移迭代很有帮助,例如: PRDCLONE 对于源AEM环境, 创作/发布 对于AEMas a Cloud Service环境, CSSTAGE-AUTHOR (对于AEMas a Cloud Service实例,等等)。
一些影响您的迁移计划的重要详细信息:
所需的提取总数
- 特定环境中的创作提取和发布提取被视为两个并行提取,因为它们彼此独立。
- 基于特定时间段内存储库增长的增补提取次数。
所需的引入总数
- 将此项目捕获到计划中很重要,因为可以将提取的集摄取到多个Cloud Service环境中。
- 增补摄取的次数。
- 将内容从源作者迁移到Cloud Service Author实例,以及从源发布迁移到Cloud Service发布是避免将所有作者内容摄取到Cloud Service发布的最佳实践。
迁移跟踪器 migration-tracker
您可以使用迁移跟踪器记下初始运行和增补运行的时间。 这些数据点将帮助您在最终充值之前制定现实的内容冻结要求。
该跟踪器还将帮助您:
- 确定需要调整计划或上线时间线的计划员的任何偏差
- 提供可用于所有必要通信的现实状态
- 规划初始或未来的增补迁移
下表说明了一个功能迁移跟踪器:
内容迁移策略和时间表 content-strategyand-timeline
以下部分显示了可用于制定内容迁移策略和时间线的重要步骤和相关任务。
设备 fitment
-
执行修订清理、数据存储垃圾收集和数据一致性检查。 另请参阅 准备上线
-
收集统计数据 关于AEM源资料库:
- 区段存储大小
- 索引存储大小
- 页数
- 资源数
- 用户和组的数量
-
了解是否在AEM源上启用了以下功能(AEMas a Cloud Service中也要求这样做):
- 智能标记
- 相似性搜索
- 搜索包含Word和PDF文档中的文本
-
收集Best Practice Analyser 报告
-
将导入到 Cloud Acceleration Manager
- 查看自分析建议,以确保AEMas a Cloud Service可以处理存储需求。
-
在继续迁移计划之前,请为任何说明创建Adobe支持工单。
迁移证明 proof-of-migration
后续内容 what-is-next
在您充分了解如何评估您的AEM安装是否已准备好迁移到云后,就像我们了解如何使用所需的工具使其做好准备一样,您是时候迁移到 上线阶段.