---
title: 软件迁移评估
description: "- 已成功安装鲲鹏DevKit，并已安装应用迁移工具。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengdevkithistory/devkit_24/probestpractice/kunpengDevKitProPractice_0056.html
sourcePath: /source/zh/kunpengdevkithistory/devkit_24/probestpractice/kunpengDevKitProPractice_0056.html
indexId: 4ebeb2171cecdd346dcef9283e9a86c2ad6659a9e3a2ec37390191545c65cfba92
---
# 软件迁移评估

#### 前提条件

- 已成功安装鲲鹏DevKit，并已安装应用迁移工具。
- 已安装鲲鹏DevKit插件，并已配置远端服务器。


#### 操作步骤

1. 从https://ci.bigtop.apache.org/view/Releases/job/Bigtop-3.0.1/DISTRO=centos-7,PLATFORM=amd64-slave/lastSuccessfulBuild/artifact/output/hadoop/x86_64/(https://ci.bigtop.apache.org/view/Releases/job/Bigtop-3.0.1/DISTRO=centos-7,PLATFORM=amd64-slave/lastSuccessfulBuild/artifact/output/hadoop/x86_64/)获取待使用的RPM包，如图1所示。
  图1 下载RPM包

2. 打开鲲鹏DevKit插件并登录鲲鹏DevKit工具，在左侧导航栏中选择“应用迁移 > 软件迁移评估”，勾选“分析软件包”，单击“上传”上传待分析的x86的RPM包，操作系统根据实际情况选择，默认为openEuler 22.03，此处单击目标操作系统下拉菜单选择openEuler 22.03 SP3，然后单击“开始分析”。
  图2 软件迁移评估

3. 分析完成后会在右侧工具列表对应功能下拉列表中生成分析报告，单击对应报告进入详情页或等待分析完成后会自动跳转到报告页面。报告中会显示需要替换的可执行文件、JAR包、SO文件以及安装过程中依赖的软件包如图3所示。
  图3 分析报告

  本文以分析hadoop-hdfs-3.2.2-1.el7.x86_64.rpm为例，扫描结果包含需要迁移的依赖库文件，具体处理建议如表1所示。如果报告中显示需要替换的JAR包鲲鹏Maven仓库已存在，则可跳过JAR包编译的过程。重构的过程中会自动从鲲鹏Maven仓库下载并替换相关JAR包。

**表1 hadoop-hdfs-3.2.2-1.el7.x86_64.rpm包分析结果**

| 序号 | 依赖库文件 | 所在路径 | 处理建议 |
| --- | --- | --- | --- |
| 1 | bigtop\-groovy | 该可执行文件是从当前分析的软件包中获取的依赖信息。 | 扫描后软件包不支持鲲鹏平台，需要自行编译后再替换。 |
| 2 | hadoop | 该可执行文件是从当前分析的软件包中获取的依赖信息。 | 扫描后软件包不支持鲲鹏平台，需要自行编译后再替换。 |
| 3 | bigtop\-jsvc | 该可执行文件是从当前分析的软件包中获取的依赖信息。 | 扫描后软件包不支持鲲鹏平台，需要自行编译后再替换。 |
| 4 | snappy\-java\-1.0.5.jar | /package/hadoop\-hdfs\-3.2.2\-1.el7.x86\_64.rpm/usr/lib/hadoop\-hdfs/lib/snappy\-java\-1.0.5.jar | 由分析报告中的分析结果可知，这3个JAR包兼容鲲鹏平台，可直接单击右侧“下载”按钮。 |
| 5 | leveldbjni\-all\-1.8.jar | /package/hadoop\-hdfs\-3.2.2\-1.el7.x86\_64.rpm/usr/lib/hadoop\-hdfs/lib/leveldbjni\-all\-1.8.jar | 由分析报告中的分析结果可知，这3个JAR包兼容鲲鹏平台，可直接单击右侧“下载”按钮。 |
| 6 | netty\-all\-4.1.48.Final.jar | /package/hadoop\-hdfs\-3.2.2\-1.el7.x86\_64.rpm/usr/lib/hadoop\-hdfs/lib/netty\-all\-4.1.48.Final.jar | 由分析报告中的分析结果可知，这3个JAR包兼容鲲鹏平台，可直接单击右侧“下载”按钮。 |


4. 获取需要替换的对应的二进制文件。
  分析扫描报告，当前版本RPM包需要替换的JAR包有3个：snappy-java-1.0.5.jar、leveldbjni-all-1.8.jar、netty-all-4.1.48.Final.jar。这3个JAR包鲲鹏Maven仓库已存在，不用编译。只需关注可执行文件和SO文件。

  表1中可执行文件可通过编译Hadoop组件获取，编译过程可参考：Hadoop 3.1.1 移植指南（CentOS 7.6&openEuler 20.03）(https://www.hikunpeng.com/document/detail/zh/kunpengbds/ecosystemEnable/Hadoop/kunpenghadoop_02_0001.html)
