Analyze with TA
Analyze the scan result of the Exising Application
Analyze the scan results
You now have the Scan Results of the application for analyzing
The Application Binary (plantsbywebsphere8.ear) is present in the below location. You will need this uploading to the transformation advisor
cd icp-dev-workshop/lab4/binary/applicationThe DB2 libararies are present in the below location. You will upload the “db2jcc.jar” in the Transformation advisor and later push the “db2jcc_license_cu.jar” to your git repository (one you will be creating during this phase for the migration bundle)
cd icp-dev-workshop/lab4/binary/libAlso, download the application related files from the below repository, which shall be used for the deployment of the application during the course of the Lab exercise.
git clone https://github.com/ibm-gsi-ecosystem/appmod-plants-app.git
Download the Scan results, reference application binaries and libaries from the below repository.
git clone https://github.com/ibm-gsi-ecosystem/appmod-plants-app.gitRepository contains following artifacts. Scan results are included in the repository for convinience. If you are able to execute the previous steps on your Laptop/Desktop, you already have the scan results. Alternatively, you can use the below reports for analyzing
scan-results (folder): contains the “AppSrv01.zip” that will be used to analyze the Application using Transformation Advisor
application-binaries (folder): Application Binary that will used for Migration/Transformation
db2-binaries (folder): It has db2jcc.jar and db2jcc_license_cu.jar.
a) db2jcc.jar along with Application binaries will be used along with target files generated by Transformation Advisor as part of migration. b) db2jcc_license_cu.jar has to be separately uploaded to the repo that is created for migration in the coming below steps. This would be in newly created repo to the folder represented(src/main/liberty/lib/)Note : Inorder to enable the CI pipeline, the below set of files is required during the deployment of the application in the openshift cluster.
pom.xml (file): The original pom.xml generated by TA will be replaced by this file. This file uses the websphere liberty container as runtime environment, since this application would need JPA2.0 supported environment for database access.
Jenkinsfile (file): Contains the definition to the pipeline using the javalibertyapp image
assets (folder): Contains the Binaries of both the application and Db2 related, in a structured manner, that shall be used by the pom.xml during the maven based pipeline validation stage as a local build. These files are same as the libararies and binaries available in application-binaries & db2-binaries folder, but are available in the structured manner for the maven. However, the ones in application-binaries & db2-binaries folder are necessary for the Docker which will be used for deployment in the pipeline as part of the build and deploy stage.
charts (folder): Contains the files related to pipeline deployment configuration
In this section, you will upload the results from the data collector to the Transformation Advisor UI and analyze the findings.
- Access the Open Shift Cluster Dashboard to open the Transformation Advisor dashboard which as part of the Cloud Native Toolkit menu.
Now that namespace and collection are created, access the Workspace (AppMod_{initials}) and the Collection.
The Data collector / Upload data screen appears as shown
Click
Upload data
and specify theAppSrv01.zip
file you created from scanning the appAfter a few moments, the UI will display the Results page.
Review the results
Take a moment to review the results. Transformation Advisor has determined this application is “simple” to move to Liberty on Private Cloud.
What happens if you change the Preferred migration target to Liberty on Public Cloud? Why did the complexity change?
Hold your mouse over the “Complex” box. Why does Transformation Advisor think you need a VPN?
Click on the the
PlantsByWebSphere8.ear
and read the Public Cloud to Private Cloud Network Connection result.
Scroll down and note the External Dependencies that have been detected to be required by this application. Remember the DB2 database? Transformation Advisor detected that the application uses the database. It is telling you that either you will need to move the database to the public cloud or the application in the pubic cloud will need a network connection—probably a VPN—to the database in the private data center.
- Click the
<-- Recommendations
link at the top of the page to return to the Recommendations page, then set the Preferred migration target to Liberty on Private Cloud once again
Review the reports
Take a moment to review the reports. Make sure the Transformation Advisor UI is displaying the Results page and that the Preferred migration target is set to Liberty on Private Cloud.
Click on the the
PlantsByWebSphere8.ear
again and review the Technology Issues sectionScroll to the bottom of the page and review the Technology Report, Inventory Report, and Analysis Report
Note that at the top of each report, the command line parameters are shown. This helps to validate that your settings in customCmd.properties
have been detected.
Review each of the reports:
Technology Report
Lists the Java EE features used by the application
Maps these features to the capabilities of the various WebSphere editions
This is a useful first step to determining whether this application will run on Liberty.
Inventory Report
Lists the Java EE components in the application
This helps give an idea of the size of the monolith and identify the number of EJBs and web services.
Shows the application structure
This shows which JARs are included in the application, which helps identify technical debt such as old versions of Struts, Spring, and Hibernate, and whether the application packages IBM or JEE JARs that can cause classloading issues later.
Lists the Utility JAR files
This shows which packages are in each JAR, which is especially useful if the client doesn’t know which Java packages to scan. If you find this part of the report lists client code in packages that the scanner ignored such as
org
andnet
, you will need to update thecustomCmd.properties
file to include these packages and re-run the scan.
Analysis Report
Lists the issues found during the scan of the application
Review the Severe and Warning results using the
show rule help
andshow results
links. Note that there are no severe result for this application and every item shown as warning. If there are Resuls related to severe (shown are red indicator), there would need some appropriate action to be performed prior deployment.
Close the open report tabs and return to the Recommendations page
Let’s go ahead and move this application to Liberty in the next session.
Summary
You have now completed the Anlaysis the various reports Technology Report, Inventory Reports, Analysis report from the scan results of the existing application using Transformation Advisor. Now that we have analysed, we will move the application to liberty and deploy in the openshift cluster provisioned in the IBM Cloud