Software Porting Assessment
Prerequisites
- Kunpeng DevKit has been successfully installed and the Kunpeng Porting Advisor has been installed.
- The Kunpeng DevKit plugin has been installed and the remote server has been configured.
Procedure
- Obtain the required RPM package from https://ci.bigtop.apache.org/view/Releases/job/Bigtop-3.0.1/DISTRO=centos-7,PLATFORM=amd64-slave/lastSuccessfulBuild/artifact/output/hadoop/x86_64/. See Figure 1.
- Open the Kunpeng DevKit plugin and log in to the Kunpeng DevKit. In the navigation tree on the left, choose Porting Advisor > Software Porting Assessment. Select Analyze Software Package and click Upload to upload the x86 RPM package to analyze. Select an OS as required. The default option is openEuler 22.03. In this example, select openEuler 22.03 SP3 from the Target OS drop-down list and click Analyze.Figure 2 Software Porting Assessment
- After the analysis is complete, an analysis report is generated in the drop-down list of the corresponding function in the tool list on the right. Click the report to go to the report page. You can also wait until the analysis is complete and later the report page is automatically displayed. The report displays the executable files, JAR packages, and SO files that need to be replaced, as well as the software packages required for the installation. See Figure 3.
As an example, Table 1 provides the porting suggestions for hadoop-hdfs-3.2.2-1.el7.x86_64.rpm. The scanning result lists the dependencies to be ported. If the report shows that the Kunpeng Maven repository has already contained the JAR package, skip the JAR package compilation operation. During the rebuild, the Kunpeng Porting Advisor automatically downloads the target JAR package from the Kunpeng Maven repository and uses it to replace the existing one.
Table 1 Analysis result of the hadoop-hdfs-3.2.2-1.el7.x86_64.rpm package No.
Dependency File
Path
What to Do
1
bigtop-groovy
The executable file contains the dependency information obtained from the current software package.
The scanning result shows that the software package does not support the Kunpeng platform. You need to compile the software package and then replace it.
2
hadoop
The executable file contains the dependency information obtained from the current software package.
3
bigtop-jsvc
The executable file contains the dependency information obtained from the current software package.
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
According to the analysis result, the three JAR packages are compatible with the Kunpeng platform. Click Download on the right to download them.
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
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
- Obtain the binary files that need to be replaced.
According to the report, the RPM package of the existing version has three JAR packages that need be replaced: snappy-java-1.0.5.jar, leveldbjni-all-1.8.jar, and netty-all-4.1.48.Final.jar. The three JAR packages already exist in the Kunpeng Maven repository and do not need to be compiled. Replace the executable files and SO files only.
Executable files listed in Table 1 can be obtained by compiling Hadoop components. For details about the compilation process, see Hadoop 3.1.1 Porting Guide (CentOS 7.6 & openEuler 20.03).

