使用 CAST Highlight 评测迁移至 Amazon Web Services Cloud 的应用程序就绪情况 - AWS Prescriptive Guidance

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 CAST Highlight 评测迁移至 Amazon Web Services Cloud 的应用程序就绪情况

由 Greg Rivera (Cast Software) 创建

环境:生产

来源:旧版应用程序源代码

目标:在 AWS 中重构的应用程序代码

R 类型:重构

工作负载:IBM;Microsoft;开源;Oracle

技术:现代化、迁移、容器和微服务

Amazon Web Services:Amazon RDS、Amazon S3

Summary

CAST Highlight 是一款软件即服务(SaaS)解决方案,用于执行应用程序组合的快速分析。此示例介绍了如何配置和使用 CAST Highlight,以评测组织的 IT 组合中定制软件应用程序的云就绪性,以及如何规划 Amazon Web Services (AWS) Cloud 的现代化和迁移技术。

CAST Highlight 可以深入了解应用程序的云就绪情况,识别迁移前需要删除的代码拦截器,估算移除这些拦截器的技术,并推荐各个应用程序在迁移后可以使用的 Amazon Web Services。

此示例介绍了设置和使用 CAST Highlight 的进程,其中包括五个步骤:新用户设置、应用程序管理、活动管理、源代码分析和结果分析。您必须完成此模式的操作部分所述所有步骤,以确保成功进行应用程序扫描和分析。

先决条件和限制

先决条件

  • 具有 Portfolio Manager 许可的活动 CAST Highlight 账号。 

  • 本地计算机上至少有 300 MB 的可用磁盘空间和 4 GB 的内存,以用于安装 CAST Highlight 本地代理。

  • Microsoft Windows 8 或更高版本。

  • 您的应用程序源代码必须存储至可从安装本地代理的计算机上访问的文本文件中。没有源代码离开本地,所有代码都是在本地扫描的。

架构

下图说明了 CAST Highligh 的使用工作流。

CAST Highlight 扫描源代码文件并生成存储在 RDS 中的分析结果文件。

工作流程由以下步骤组成:

  1. 登录 CAST Highlight 门户,下载本地代理,然后将其安装至本地计算机上。Amazon Simple Storage Service (Amazon S3) 存储本地代理安装软件包。

  2. 扫描源代码文件并生成结果文件。

  3. 将结果文件上传至 CAST Highlight门户。重要提示:结果文件中不包含源代码。

  4. 回答您扫描的每个应用程序中的调查问题。

  5. 查看 CAST Highlight内容门户中提供的控制面板与报告。Amazon Relational Database Service (Amazon RDS) 存储代码扫描、分析结果和 CAST Highligh 软件数据。

技术堆栈

CAST Highlight 支持以下技术分析应用程序云就绪情况:

  • Java

  • COBOL

  • C#

  • C++

  • Clojure

  • PHP

  • JavaScript

  • TypeScript

  • Python

  • Microsoft Transact-SQL

  • VB.net

  • Kotlin

  • Scala

  • Swift

自动化和扩缩

  • CLI 分析器可用于自动执行 CAST Highlight分析过程。

工具

如满足所有先决条件,则无需使用任何工具。但是,您可选择使用可选工具来管理源代码文件,例如源代码管理 (SCM) 实用程序、代码提取器或其他工具。

操作说明

任务描述所需技能

激活您的 CAST Highlight 账户并选择你的密码。

所有首次使用 CAST Highlight 的用户都将会收到一封账户激活电子邮件。点击激活链接,激活您的 CAST Highlight 账户,然后输入密码以完成激活过程。

不适用

登录 CAST Highlight 门户。

输入新密码后,将显示 CAST Highlight 主页。通过您的用户凭证登录 CAST Highlight 门户。

不适用
任务描述所需技能

创建应用程序记录。

在 CAST Highlight 门户中,导航到管理产品组合部分的管理应用程序选项卡。在屏幕顶部的应用程序图块中,选择添加

不适用

选择应用程序名称。

输入您的应用程序名称,然后选择保存。此名称用于在 CAST Highlight 中的申请记录。

不适用

对所有应用程序重复此步骤。

针对您要扫描的每个应用程序重复这些步骤。

不适用
任务描述所需技能

创建市场活动。

CAST Highlight 使用“活动”描述一组将在特定时间进行分析的应用程序。在 CAST Highlight 门户中,导航到管理组合部分的管理活动选项卡。选择创建活动以启动活动创建屏幕。

不适用

输入名称,并选择活动的截止日期。

输入活动的名称,然后选择活动截止日期。 

重要提示:参与者不能在活动结束日期之后提交申请分析结果。

不适用

决定包含源代码扫描、调查答案以及域和应用程序范围。

选择一个或多个标准调查,以使用定性信息增强源代码分析数据。调查类别为 “业务影响”、“软件维护工作CloudReady、“应用程序属性” 和 “绿色影响”。选择在活动期间分析的域名与应用程序。 

重要提示:在开始活动之前,请务必在管理应用程序 部分中添加要扫描的所有应用程序。

不适用

自定义启动消息。

自定义启动消息,该消息将通过电子邮件发送至与活动中的应用程序关联的所有参与者。

不适用

启动活动。

选择完成以启动活动。

不适用
任务描述所需技能

下载 CAST Highlight 本地代理。

在 CAST Highlight 门户,选择应用程序扫描并将 Local Agent 下载到您的本地计算机。

不适用

安装 Local Agent。

启动 CAST HighlightSetup .exe 安装程序,然后按照显示的安装说明进行操作。安装 Local Agent 后,就可以分析应用程序了。

不适用

定义本地代理代码扫描范围。

代码分析是在文件级别执行的,不考虑文件间的逻辑链接或依赖关系。所有文件都被视为平等,并且是应用程序的一部分。 

若要提供准确一致的结果,请使用 Local Agent 中提供的文件或文件夹排除功能来准备代码扫描范围。

不适用

包含开源或 COTS 软件包。

(可选)如果要包含开源或商业 off-the-shelf (COTS) 软件包,请确保它们包含在计划扫描的文件夹中。通常,外部库被分组到一个名为“第三方”或类似的子文件夹中,主代码通常位于“src/main”文件夹中。

不适用

排除测试类。

通常将测试类排除在源代码分析以外,因为它们通常不属于已编译的应用程序。不过,如有必要,您可以选择将它们纳入在扫描中。

不适用

排除 SCM、生成以及部署文件夹。

为了获得更一致的结果,应避免在扫描中包含 SCM、生成或部署文件夹(例如 .git 或 .svn 文件)。

不适用

包括依赖项文件。

如果您想深入了解其物理文件是否属于您正在扫描的文件夹的框架和依赖项,请确保包含依赖项文件(例如 pom.xml、build.gradle、package.json 或.vcsproj 文件)。

不适用

调用 Local Agent.。

在本地 Windows 计算机上运行 Local Agent.。

不适用

选择包含源代码的文件夹。

选择包含源代码的文件夹。您可添加多个要由本地代理发现的文件夹。尽管 Local Agent. 确实支持通过网络路径发现源代码,但您应确保源文件夹位于本地计算机上。 

重要提示:如果源文件夹中的文件超过 10,000 个,我们建议您进行多次扫描。

不适用

开始文件发现。

在 Local Agent 控制面板,选择发现文件。Local Agent 会发现您的文件夹和子文件夹中的文件,并检测其技术。您可以随时选择取消按钮以取消发现。 

文件发现完成后,本地代理会列出找到的文件夹与文件。技术列显示相关的技术和文件数量。路径列显示文件夹和文件的位置。

不适用

完善源代码的扫描配置。

(可选)要优化本地代理扫描,可以对特定文件夹或文件停用一种或多种技术。如果所有技术都已停用,则您的文件夹或文件将排除在扫描范围外。 

若要停用技术,请选择要停用的技术的黄色标签。将鼠标悬停至文件或文件夹上时,也可以选择筛选器图标,将技术与特定文件或文件夹相关联。这些设置已保存,以加快文件夹或文件的发现过程。

不适用

开始源代码扫描。

配置扫描后,选择“扫描文件”以开始扫描过程。

不适用

检查绿色或者灰色标签。

源代码扫描完成后,将在文件夹和文件级显示状态标签。 

绿色标签表示使用相关技术扫描了正确文件。 

灰色标签表示文件未被扫描,并被排除在外。当您将鼠标悬停至每个文件的标签上时,会显示排除它们的原因。排除文件的可能原因包括:二进制文件、无法读取的文件、丢失的文件、外部库、编码的文件、生成的文件、语法错误、不符合预期语言的内容、不符合足够分析标准的代码、超过大小限制 (10 MB) 的文件、超时问题或分析器不可用。

不适用

修改扫描配置,并重新扫描代码。

(可选)您可以修改扫描配置设置,然后选择扫描文件 以再次扫描文件。

不适用

确认扫描结果。

如果扫描结果符合您的要求,请选择确认结果

不适用

查看 Local Agent 找到的框架和软件库。

查看您的应用程序使用或引用的框架和软件库,以及本地代理在代码扫描期间发现的框架和软件库。您可以通过选择单独的割接按钮保留或忽略这些列表中的元素。 

选择确认依赖项继续。

重要提示:如果某个框架已关闭,则该框架不会在 CAST Highlight 门户中列出,也不会附加至您的应用程序中。

不适用

保存代码扫描结果。

Local Agent 显示按技术分组的代码扫描结果摘要。选择保存,然后指定要将结果保存到的文件夹。Local Agent 每次扫描都会生成一个.zip 文件,其中包含所有分析结果。 

根据不同技术和根源文件夹的数量,本地代理会自动生成一个或多个命名结构为.technology.date.csv 的 FolderName.csv 文件。

不适用

将代码扫描结果上传至 CAST Highlight 门户。

在 CAST Highlight 门户中,选择您在应用程序扫描部分中分析的应用程序。选择上传结果,然后选择 .csv 文件。您也可以单独上传 .csv 文件。每个文件上传后,屏幕上将显示上传记录。

不适用

如有需要,请删除分析结果文件。

(可选)在上传过程中,通过选择垃圾桶图标,可随时删除分析结果文件。 

重要提示:只有拥有 Portfolio Manager 权限的用户或上传结果的参与者才能删除结果。

不适用

回答申请调查。

调查按钮在需要调查的应用程序上显示。选择调查,回答调查每个部分的问题,完成后选择提交。 

您的调查进度将会显示在屏幕顶部。提交所有必填信息后,您就可提交结果。但是,您可通过回答所有问题来,丰富组织的 CAST Highlight 实例数据。

不适用

提交代码扫描结果。

上传应用程序的所有 .csv 结果文件并完成调查问题后,在应用程序扫描部分中选择提交。必须执行此步骤才能完成该过程,并确保结果在 CAST Highlight 门户中可用。

不适用
任务描述所需技能

查看 CAST Highlight 门户主页。

CAST Highlight 门户主页包含包含有关您的应用程序组合的高级信息的图块 CloudReady,例如软件运行状况以及整个产品组合的开源安全评分。主页还包含已载入应用程序的数量。有关 CAST Highlight 指标定义和衡量方法的更多信息,请参阅 CAST 亮点——指标和方法(Microsoft PowerPoint 演示文稿)。

不适用

查看 CloudReady 控制面板。

选择图CloudReady 块以打开 CloudReady 仪表板。这是主要的产品组合级别控制面板,用于评测应用程序的云准备情况。它可帮助您规划和制定云迁移的产品组合路线图

不适用

查看 Portfolio Advisor for Cloud 控制面板。

Portfolio Advisor for Cloud 控制面板会自动将应用程序划分为推荐的迁移类别。按每个应用程序的技术特征进行细分。因素包括源代码分析(云就绪性、软件弹性等)和来自调查的业务影响。在右上角,选择计算以生成初始分段建议。

控制面板顶部图表中的气泡代表产品组合中的每个应用程序,按推荐的细分进行组织。图表下方的数据表中还列出了每项应用程序,包括每个应用程序的相关指标。

建议的可能细分包括:

  • 更换主机 — 建议更改应用程序的基础架构配置,以便使用基础设施即服务 (IaaS) 解决方案将其直接迁移到云端。

  • 重构 — 建议在不更改架构或功能的情况下对应用程序代码进行适度修改,以便可以使用容器即服务 (CaaS) 或平台即服务(PaaS)解决方案对其进行迁移。

  • 重新架构 — 建议大幅修改应用程序代码以改善应用程序的运行状况,并使用 PaaS 解决方案为迁移做好准备,或者使用函数即服务(FaaS)解决方案将其部署为无服务器应用程序。

  • 重建 — 建议丢弃应用程序代码,使用 PaaS 解决方案在云中重新开发,或者使用 FaaS 解决方案将其重新开发为无服务器应用程序。

  • 停用 — 建议完全放弃该应用程序,或者可能将其替换为商业软件即服务(SaaS)替代方案。

不适用

修改细分建议。

在某些情况下,您可能会选择更改 CAST Highligh 推荐部分。为此,您可浏览数据表中的应用程序,然后从应用程序名称旁边的下拉列表中选择不同的区段。然后选择右上角的保存来保存您的更改。

您也可以随时通过选择右上角的导出以导出这些数据。

不适用

选择待分析应用程序。

在 Portfolio Advisor for Cloud 控制面板,选择一个应用程序气泡,以分析该应用程序。在气泡图之后的表格中选择应用程序名称,以开始更深入的分析。 

可以使用不同的控制面板来分析各个应用程序,例如 Code Insights(软件运行状况模式)、趋势软件组合(开源风险)。

不适用

分析单个应用程序的 CloudReady 结果。

选择显示应用程序总 CloudReady 分的CloudReady选项卡。该分数是基于 CloudReady 调查答案和 CloudReady 代码扫描组合的加权平均值。调查问题的答案显示在图块下的表格中。 

选择 “CloudReady 代码扫描” 以查看代码扫描结果。有一个扫描应用程序代码的 CloudReady 模式列表。此列表包括以下列: 

  • 云需求是特定代码模式。 

  • 技术是模式编程语言。“影响” 是模式对应用程序的影响(C = 代码,F = 框架,A = 架构)。 

  • 重要性是在迁移之前解决这种模式的重要程度。 

  • 贡献是这种模式对总 CloudReady 分的贡献方式。如果图案为绿色,则为助推器并增加 CloudReady 分数。如果图案为红色,则表示它会阻挡并降低 CloudReady 分数。如果图案没有颜色,则它是一个未被检测到的阻挡物,因此会增加 CloudReady 分数。 

  • Roadblocks 模式出现的个别次数。选择障碍编号,以显示检测到该模式的源代码文件列表。 

  • 东部时间 工作量是对修复每行障碍所需天数的估计值。

不适用

将数据导出至 Microsoft Excel。

(可选)选择导出至 Excel,以导出数据以供进一步分析。应用程序分析结果数据可用于进一步分析应用程序云准备情况,并确定在迁移之前必须更新哪些代码。

不适用

查看建议。

选择 “CloudReady 代码扫描” 旁边的 “推荐”,查看 “云服务推荐” 屏幕。这可根据应用程序的特性,确定应用程序可以采用的 Amazon Web Services。

重复此步骤,以查看针对您分析的所有应用程序的建议。

不适用

相关资源

活动管理

源代码分析

其他资源