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:

To set up binaryAppScanner.jar:

  1. Download the installer file, binaryAppScannerInstaller.jar, from IBM Support.You must accept the license agreement as part of the download.

  2. Run the following command to extract the binaryAppScanner.jar file and to accept the License Agreement:

    java -jar binaryAppScannerInstaller.jar --acceptLicense --verbose
    
  3. Specify the target directory for the extraction. For example, /tmp. The installer creates a directory named /wamt below the target directory.

  4. Navigate to the /wamt directory. For example:

    cd /tmp/wamt
    
  5. 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 /
    
  6. Build and push the docker image:

    gcloud builds submit --timeout 1h -t gcr.io/PROJECT_ID/v2k-websphere-with-scanner:v1 --project PROJECT_ID
    
  7. 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
    
  8. Save the CRD.

Next steps