Personalizzare il piano di migrazione per i carichi di lavoro WebSphere

Prima di iniziare

In questo documento si presuppone che tu abbia già ha creato una migrazione e avere il file del piano di migrazione.

Modifica il piano di migrazione

Dopo aver copiato e analizzato il file system, puoi trovare il piano di migrazione nella nuova directory creata nel percorso di output specificato: ANALYSIS_OUTPUT_PATH/config.yaml.

Modifica il piano di migrazione in base alle tue esigenze e salva le modifiche.

Esamina i dettagli del piano di migrazione e le indicazioni per aggiungere informazioni come necessaria.

In particolare, prendi in considerazione le modifiche apportate alle seguenti sezioni.

Struttura del piano di migrazione

Il piano di migrazione per i carichi di lavoro WebSphere ha la seguente struttura: che puoi personalizzare come descritto nelle sezioni seguenti.

# List of discovered WebSphere application servers and how to migrate their
# hosted applications to containers.
webSphereApplicationServers:
# The application server installation path.
- home: /opt/ibm/wlp
  applicationServerInfo:
    name: WebSphere Application Server
    profile: Liberty
    version: 23.0.0.4
    edition: Base
    # List of Java installations available to the application server.
    javaDevelopmentKits:
    - home: /opt/ibm/java
      vendor: IBM Corporation
      version:
        jdk: java version 1.8.0_361
        jre: Java(TM) SE Runtime Environment
        jvm: IBM J9 VM
  # List of hosted applications and how to migrate them to containers.
  applications:
  - path: /opt/ibm/wlp/usr/servers/defaultServer/apps/app.war
    # Application archives to be migrated into the target container.
    archives:
    - /opt/ibm/wlp/usr/servers/defaultServer/apps/app.war
    # Application configuration files to be migrated into the target container.
    configurations:
      serverXML: /opt/ibm/wlp/usr/servers/defaultServer/server.xml
      serverEnv:
      - /opt/ibm/wlp/usr/servers/defaultServer/server.env
      bootstrapProperties:
      - /opt/ibm/wlp/usr/servers/defaultServer/bootstrap.properties
      variableProperties:
      - /opt/ibm/wlp/usr/servers/defaultServer/variables/variable.properties
      jvmOptions:
      - /opt/ibm/wlp/usr/servers/defaultServer/jvm.options
    # Application resource files to be migrated into the target container.
    resources:
      locations:
      - /opt/ibm/wlp/usr/servers/defaultServer/resources/ports.xml
      libraries:
      - /opt/ibm/wlp/usr/servers/defaultServer/resources/postgresql.jar
      keystores:
      - /opt/ibm/wlp/output/defaultServer/resources/security/key.p12
      sharedResources:
        - /opt/ibm/wlp/usr/shared/resources/jdbc.jar
      additionalResources:
      - /opt/ibm/wlp/output/defaultServer/resources/mongodb.jar
    javaRuntime:
      se: SE8
      ee: EE7
      vendor: IBM Corporation
    targetJavaRuntime:
      se: SE8
      ee: EE7
      vendor: IBM Corporation
    targetApplicationServer:
      profile: Liberty
      version: 23.0.0.4
      edition: Base
    targetContainer:
      # The target container base image name.
      baseImage: ibmcom/websphere-liberty:full-java8-ibmjava-ubi
      # The application server installation path within the target container
      # base image.
      home: /opt/ibm/wlp
      # The application server default server name.
      server: defaultServer
      # The UID or name of the user configured within the target container
      # base image. Defaults to 1001 for Liberty profile.
      user: "1001"
      # The GID or name of the group configured within the target container
      # base image. Defaults to 0 for Liberty profile.
      group: "0"
      # Application ports to be exposed in Kubernetes artifacts.
      ports:
      - name: http-tcp-9080
        port: 9080
        protocol: TCP
      - name: https-tcp-9443
        port: 9443
        protocol: TCP
      # Specify whether discovered keystores are automatically converted to
      # Kubernetes secrets. Defaults to true.
      enableSecrets: true

Escludere le applicazioni

Per escludere applicazioni dalla migrazione, rimuovile dall'elenco applications.

  applications:
  # Exclude app1.war:
  # - path: app1.war
  #  ...
  - path: app2.war

Controllare i file dell'applicazione

Per controllare quali file delle applicazioni vengono inclusi o esclusi dalla migrazione, aggiorna i campi configurations e resources.

  applications:
  - path: app.war
    resources:
      keystores:
      # Exclude key1.p12:
      # - key1.p12
      # Include key2.p12:
      - key2.p12
      additionalResources:
      # Exclude resource1.xml:
      # - resource1.xml
      # Include resource2.xml:
      - resource2.xml

Personalizza il runtime Java di destinazione

Per personalizzare il runtime Java target per l'applicazione, aggiorna il campo targetJavaRuntime.

  applications:
  - path: app.war
    targetJavaRuntime:
      se: SE
      ee: EE
      vendor: VENDOR

Sostituisci quanto segue:

  • SE: la versione di Java SE. Formato: [SE8|SE11|SE17].
  • EE: la versione Java EE o Jakarta EE. Formato: [EE7|EE8|EE9|EE10].
  • VENDOR: il fornitore Java. Formato: [IBM Corporation|Oracle Corporation].

Personalizzare il server di applicazioni di destinazione

Per personalizzare il server applicazioni di destinazione per l'applicazione, aggiorna il campo targetApplicationServer.

  applications:
  - path: app.war
    targetApplicationServer:
      profile: PROFILE
      version: VERSION
      edition: EDITION

Sostituisci quanto segue:

  • PROFILE: il profilo WebSphere. Formato: [Liberty|Tradizionale].
  • TARGET_VERSION: la versione WebSphere.
  • TARGET_EDITION: l'edizione WebSphere. Formato: [Base|Core|Open|ND].

Personalizzare il contenitore di destinazione

Per personalizzare il contenitore di destinazione da utilizzare per l'applicazione, aggiorna il campo targetContainer.

  applications:
  - path: app.war
    targetContainer:
      baseImage: BASE_IMAGE
      home: HOME
      server: SERVER
      user: USER
      group: GROUP

Personalizzare i secret di Kubernetes

Per impostazione predefinita, viene eseguita la migrazione a Kubernetes dei file elencati nel campo keystores i tuoi segreti. Per eseguire la migrazione di questi file così come sono, puoi disattivare questa funzionalità.

  applications:
  - path: app.war
    resources:
      keystores:
      - key.p12
    targetContainer:
      # Do not migrate keystores to Kubernetes secrets:
      enableSecrets: false

Personalizzare le porte Kubernetes

Per controllare le porte esposte dai pod e dai servizi Kubernetes, aggiorna il campo ports.

  applications:
  - path: app.war
    targetContainer:
      ports:
      # Exclude http-tcp-9080:
      # - name: http-tcp-9080
      #   port: 9080
      #   protocol: TCP
      # Include https-tcp-9443:
      - name: https-tcp-9443
        port: 9443
        protocol: TCP

Passaggi successivi