Before you begin
Before you begin a migration, you must first perform the following tasks.
Install Migrate to Containers
Install Migrate to Containers on your processing cluster. A processing cluster is a Google Kubernetes Engine (GKE) or Anthos cluster with Migrate to Containers components installed, and which you use to migrate VMs. See Installation overview for all installation instructions.
Optionally install Migrate to VMs
To use Migrate to Containers to migrate Linux VMs to Google Cloud from VMware, AWS and Azure, you must install Migrate to VMs which handles the transport. See Set up Migrate to VMs for more.
Set up the binaryAppScanner.jar
Migrate to Containers automates the use of the binaryAppScanner.jar
, available
as part of the IBM WebSphere Application Server Migration Toolkit for Application Binaries,
to extract configuration information and files for WAS applications in the source VM.
Before you can perform a migration, you must:
Accept the license agreement and download the IBM WebSphere Application Server Migration Toolkit for Application Binaries, and then extract the
binaryAppScanner.jar
file.Create a Dockerfile and prepare the plugin bundled with the binary scanner.
To set up binaryAppScanner.jar
:
Download the installer file,
binaryAppScannerInstaller.jar
, from IBM Support.You must accept the license agreement as part of the download.Run the following command to extract the
binaryAppScanner.jar
file and to accept the License Agreement:java -jar binaryAppScannerInstaller.jar --acceptLicense --verbose
Specify the target directory for the extraction. For example,
/tmp
. The installer creates a directory named/wamt
below the target directory.Navigate to the /wamt directory. For example:
cd /tmp/wamt
Create a Dockerfile with the following two commands:
FROM us-docker.pkg.dev/migrate-modernize-public/modernize-prod/v2k-websphere:v1.11.0 ADD binaryAppScanner.jar /
Build and push the docker image:
gcloud builds submit --timeout 1h -t gcr.io/PROJECT_ID/v2k-websphere-with-scanner:v1 --project PROJECT_ID
Edit the plugin CRD to bundle it with binary-scanner as following:
$ kubectl edit appxplugins.anthos-migrate.cloud.google.com -n v2k-system websphere-container # Set the value gcr.io/PROJECT_ID/v2k-websphere-with-scanner:v1 in both # spec.discoveryImage and spec.generateArtifactsImage: apiVersion: anthos-migrate.cloud.google.com/v1beta2 kind: AppXPlugin metadata: namespace: v2k-system name: websphere-container labels: anthos-migrate.cloud.google.com/preview-type: "public" annotations: anthos-migrate.cloud.google.com/display-name: "Websphere container" spec: discoverImage: gcr.io/PROJECT_ID/v2k-websphere-with-scanner:v1 discoverCommand: - /bin/sh - -c - /websphere-discovery parameterDefs: - name: was-home usage: Path of the Websphere WAS_HOME on the original instance. envVar: APPX_WAS_HOME generateArtifactsImage: gcr.io/PROJECT_ID/v2k-websphere-with-scanner:v1 generateArtifactsCommand: - /bin/sh - -c - /websphere-extraction
Save the CRD.