• Migrating to WebSphere 9


    Migrating to WebSphere 9

    Make a migration plan

    Requirements

    • Migrate WebSphere profiles into the new WebSphere
    • Keep profiles' locations as the original path

    Prepare

    • Install the new WebSphere
    • Setup variables
      At first, we need to record variables related to the migration.
    set WAS_HOME_Old=C:IBMWebSphereAppServer
    set WAS_Root_New=C:IBMWebSphere9
    set WAS_HOME_New=%WAS_Root_New%AppServer
    set Dmgr_Profile_Path=C:ProductprofilesxxxDmgr
    set Dmgr_Profile_Name=xxxDmgr
    set Prod_Cell_Name=xxxCell
    set Prod_Ear=xxx.ear
    set Node_Profile_Path=C:ProductprofilesxxxNode1
    set Node_Profile_Name=xxxNode1
    set DmgrHost=localhost
    set DmgrPort=8879
    set DmgrUser=admin
    set DmgrPassword=password
    
    • Stop all services of the old WebSphere

    Migrating

    Overall steps

    • Copy extension library
    • Backup source profiles
    • Migrate from source profiles
    • Move source profiles, we will create new profiles at same places
    • Create target profiles
    • Migrate to target profiles
    • Sync nodes
    • Some post steps may need

    Copy extension library

    Copy old WebSphere extension libraries which are used by existing servers into the new WebSphere.

    echo Copy extension library
    copy "%WAS_HOME_Old%libext*.*" "%WAS_HOME_New%libext"
    

    Backup source profiles

    pushd "%WAS_HOME_Old%in"
    
    echo Create profile backup folders
    mkdir %WAS_HOME_Old%profilesBackup
    
    echo Backup source profiles
    call backupConfig.bat "%WAS_HOME_Old%profilesBackupMigrationBackup_%Dmgr_Profile_Name%.zip" -nostop -profileName %Dmgr_Profile_Name%
    call backupConfig.bat "%WAS_HOME_Old%profilesBackupMigrationBackup_%Node_Profile_Name%.zip" -nostop -profileName %Node_Profile_Name%
    
    popd
    

    Migrate from source profiles

    pushd "%WAS_HOME_New%in"
    
    echo Migrate from source profiles
    call WASPreUpgrade.bat "%WAS_Root_New%WSMigration\%Node_Profile_Name%" "%WAS_HOME_Old%" -oldProfile %Node_Profile_Name% -keepDmgrEnabled false
    call WASPreUpgrade.bat "%WAS_Root_New%WSMigration\%Dmgr_Profile_Name%" "%WAS_HOME_Old%" -oldProfile %Dmgr_Profile_Name% -keepDmgrEnabled false -username %DmgrUser% -password %DmgrPassword%
    popd
    
    

    Move source profiles

    echo Move source profiles
    rename "%Dmgr_Profile_Path%" %Dmgr_Profile_Name%_Old
    rename "%Node_Profile_Path%" %Node_Profile_Name%_Old
    

    Create target profiles

    pushd "%WAS_HOME_New%in"
    
    echo Create target profiles
    call manageprofiles.bat -create -profileName %Dmgr_Profile_Name% -profilePath "%Dmgr_Profile_Path%" -templatePath management -nodeName %Dmgr_Profile_Name%Node -cellName %Prod_Cell_Name%
    
    call manageprofiles.bat -create -profileName %Node_Profile_Name% -profilePath "%Node_Profile_Path%" -templatePath managed -nodeName %Node_Profile_Name% -dmgrHost %DmgrHost% -dmgrPort %DmgrPort% -dmgrAdminUserName %DmgrUser% -dmgrAdminPassword %DmgrPassword%,-cellName %Prod_Cell_Name% -federateLater true
    
    popd
    

    Migrate to target profiles

    pushd "%WAS_HOME_New%in"
    
    echo Migrate to the deployment manager profile
    call WASPostUpgrade.bat "%WAS_Root_New%WSMigration\%Dmgr_Profile_Name%" -oldProfile %Dmgr_Profile_Name% -profileName %Dmgr_Profile_Name% -setPorts useOld -resolvePortConflicts incrementCurrent -includeApps true -keepAppDirectory true -keepDmgrEnabled true -clone false
    
    call startManager.bat
    
    echo Migrate to the node profile
    call WASPostUpgrade.bat "%WAS_Root_New%WSMigration\%Node_Profile_Name%" -oldProfile %Node_Profile_Name% -profileName %Node_Profile_Name% -setPorts useOld -resolvePortConflicts incrementCurrent -keepDmgrEnabled true -username %DmgrUser% -password %DmgrPassword% -clone false
    
    popd
    

    NOTE: There is another choice to use switch "-includeApps script", if in this case, we need to run the following command manually to install applications.
    cd /d "%WAS_Root_New%WSMigration%Dmgr_Profile_Name%"
    "%WAS_HOME_New%inwsadmin.bat" -f "install_%Prod_Ear%.jy" -CONNTYPE none -lang jython"

    Sync nodes

    pushd "%Node_Profile_Path%"in
    
    rem node agent disablement reversal
    if exist "%Dmgr_Profile_Path%configcells\%Prod_Cell_Name%
    odes\%Node_Profile_Name%serverindex.xml_disabled" (
        echo Node agent disablement reversal
        rename "%Dmgr_Profile_Path%configcells\%Prod_Cell_Name%
    odes\%Node_Profile_Name%serverindex.xml" serverindex.xml_nonagent
        rename "%Dmgr_Profile_Path%configcells\%Prod_Cell_Name%
    odes\%Node_Profile_Name%serverindex.xml_disabled" serverindex.xml
    )
    
    echo Sync node
    call SyncNode.bat %DmgrHost% %DmgrPort% -username %DmgrUser% -password %DmgrPassword%
    
    echo Remove jsp built folders
    for /D %%i in (%Node_Profile_Path%installedApps\%Prod_Cell_Name%\%Prod_Ear%*) DO (
        if exist  "%%iWEB-INFclasses" (
            echo Clear jsp classes "%%iWEB-INFclasses"
            del /F /S /Q "%%iWEB-INFclasses*"
        )
    )
    popd
    

    NOTE: default node agent is disabled, we need to enable node agent.
    NOTE: Removing jsp cache will avoid jsp errors during application initialize.

    Post steps of migration

    • Remove old Windows services of the product
    • Add new Windows services for the product
    • Reset any arguments whose values are related to WebSphere location in the WebSphere Server
    • Set JAVA_HOME if need

    End

    • Uninstall the old version WebSphere

    • Remove the backup folders to save disk

    %WAS_HOME_Old%profilesBackup
    %WAS_Root_New%WSMigration
    %Dmgr_Profile_Path%_Old
    %Node_Profile_Path%_Old
    

    Frequent Issues

    Node agent failed to start

    • Symptom
      We can find following message is the node agent SystemOut.log file
    com.ibm.ws.naming.distcos.NameSpaceConfigurationException: Missing host name info in bootstrap address of server "nodeagent" in node "<Node Name>".
    
    • Cause
      Node agent is disabled default.

    • Solution
      Enable node agent and sync node
      If there is a serverindex.xml_disabled file in the deployment manager configuration, remove serverindex.xml and rename serverindex.xml_disabled as serverindex.xml.
      Run SyncNode.bat from the node profile bin folder.

    echo node agent disablement reversal
    if exist "%Dmgr_Profile_Path%configcells\%Prod_Cell_Name%
    odes\%Node_Profile_Name%serverindex.xml_disabled" (
        echo Node agent disablement reversal
        rename "%Dmgr_Profile_Path%configcells\%Prod_Cell_Name%
    odes\%Node_Profile_Name%serverindex.xml" serverindex.xml_nonagent
        rename "%Dmgr_Profile_Path%configcells\%Prod_Cell_Name%
    odes\%Node_Profile_Name%serverindex.xml_disabled" serverindex.xml
    )
    
    pushd "%Node_Profile_Path%"in
    echo Sync node
    call SyncNode.bat %DmgrHost% %DmgrPort% -username %DmgrUser% -password %DmgrPassword%
    popd
    

    References

  • 相关阅读:
    Java EE (3) -- Java EE 6 Web Services Developer Certified Expert(1z0-897)
    二、用电信号传输 TCP/IP 数据(1)
    P2384 最短路 洛谷
    T1231 最优布线 codevs
    P3371 单源最短路径【模板】 洛谷
    spfa【模板】
    P1396 营救 洛谷
    解决Android加固多进程ptrace反调试的思路整理
    Android Dex文件格式解析
    360加固保so动态脱壳
  • 原文地址:https://www.cnblogs.com/steven-yang/p/6880837.html
Copyright © 2020-2023  润新知