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:\IBM\WebSphere\AppServer
set WAS_Root_New=C:\IBM\WebSphere9
set WAS_HOME_New=%WAS_Root_New%\AppServer
set Dmgr_Profile_Path=C:\Product\profiles\xxxDmgr
set Dmgr_Profile_Name=xxxDmgr
set Prod_Cell_Name=xxxCell
set Prod_Ear=xxx.ear
set Node_Profile_Path=C:\Product\profiles\xxxNode1
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%\lib\ext\*.*" "%WAS_HOME_New%\lib\ext\"
Backup source profiles
pushd "%WAS_HOME_Old%\bin"
echo Create profile backup folders
mkdir %WAS_HOME_Old%\profilesBackup
echo Backup source profiles
call backupConfig.bat "%WAS_HOME_Old%\profilesBackup\MigrationBackup_%Dmgr_Profile_Name%.zip" -nostop -profileName %Dmgr_Profile_Name%
call backupConfig.bat "%WAS_HOME_Old%\profilesBackup\MigrationBackup_%Node_Profile_Name%.zip" -nostop -profileName %Node_Profile_Name%
popd
Migrate from source profiles
pushd "%WAS_HOME_New%\bin"
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%\bin"
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%\bin"
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%\bin\wsadmin.bat" -f "install_%Prod_Ear%.jy" -CONNTYPE none -lang jython"
Sync nodes
pushd "%Node_Profile_Path%"\bin
rem node agent disablement reversal
if exist "%Dmgr_Profile_Path%\config\cells\%Prod_Cell_Name%\nodes\%Node_Profile_Name%\serverindex.xml_disabled" (
echo Node agent disablement reversal
rename "%Dmgr_Profile_Path%\config\cells\%Prod_Cell_Name%\nodes\%Node_Profile_Name%\serverindex.xml" serverindex.xml_nonagent
rename "%Dmgr_Profile_Path%\config\cells\%Prod_Cell_Name%\nodes\%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 "%%i\WEB-INF\classes" (
echo Clear jsp classes "%%i\WEB-INF\classes"
del /F /S /Q "%%i\WEB-INF\classes\*"
)
)
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%\config\cells\%Prod_Cell_Name%\nodes\%Node_Profile_Name%\serverindex.xml_disabled" (
echo Node agent disablement reversal
rename "%Dmgr_Profile_Path%\config\cells\%Prod_Cell_Name%\nodes\%Node_Profile_Name%\serverindex.xml" serverindex.xml_nonagent
rename "%Dmgr_Profile_Path%\config\cells\%Prod_Cell_Name%\nodes\%Node_Profile_Name%\serverindex.xml_disabled" serverindex.xml
)
pushd "%Node_Profile_Path%"\bin
echo Sync node
call SyncNode.bat %DmgrHost% %DmgrPort% -username %DmgrUser% -password %DmgrPassword%
popd
References
- Migrating, coexisting, and interoperating
- IBM Knowledge Center - Troubleshooting migration
- IBM Knowledge Center - Migrating a large WebSphere Application Server, Network Deployment configuration with a large number of applications
Migrating to WebSphere 9的更多相关文章
- webSphere内存溢出
有一个做了很长时间的项目,是用websphere做生产环境的,可是一旦加载的项目过多,webSphere就很傲娇的内存溢出,这是一个折腾了公司里某个前辈很久很久的问题,因为是测试版,所以各种官方文档说 ...
- 为什么WebSphere好好的,他就不干活了?
“修理不好用的WebSphere,有时候要看运气.”这个是我接触过很过有历史的运维工程师经常说的一个梗;研发人员也经常说这个程序在我这里运行好好的,怎么到你那就不灵了?问题是你的,你自己解决. 声明一 ...
- MyEclipse 2016 CI 1支持远程WebSphere连接器
MyEclipse 2016 CI 1有很多Web开发者会喜欢的新功能,包括Live Preview,带有Map支持和hot-swap功能的JavaScript调试.另外还新增支持远程WebSpher ...
- Set up Github Pages with Hexo, migrating from Jekyll
Set up Github Pages with Hexo, migrating from Jekyll. 本文介绍用Hexo建立github pages, 其中包含了从Jekyll迁移过来的过程. ...
- 帆软报表FineReport中数据连接之Websphere配置JNDI连接
以oracle9i数据源制作的模板jndi.cpt为例来说明如何在FineReport中的Websphere配置JNDI连接.由于常用服务器的JNDI驱动过大,帆软报表FineReport中没有自带, ...
- Migrating an Existing Website from SQL Membership to ASP.NET Identity
Migrating an Existing Website from SQL Membership to ASP.NET Identity public class User : IdentityUs ...
- WebSphere MQ Explorer的sqlserver的jdbc
一.IBM WebSphere MQ7.0的jdbc支持数据库有: DB2 Informix Informix_With_Date_Format Microsoft_SQL_Server Oracle ...
- IBM WebSphere MQ的oracle的jdbc
一.IBM WebSphere MQ7.0的jdbc支持数据库有: DB2 Informix Informix_With_Date_Format Microsoft_SQL_Server Oracle ...
- Migrating an ASP.NET MVC application to ADFS authentication
I recently built an ASP.NET application at work to help track internal use of our products. It's bee ...
随机推荐
- J2EE从下载到配置成功
1,首先在www.oracle.com网站下载JDK 2 3 4,可以根据自己的需要下载相应的JDK 5,在安装的过程中要将JDK的安装路径和JRE的安装路径安装在不同文件夹中以示区别,例如 6,配置 ...
- 将form表单元素的值序列化成对象
/**jQuery * 将form表单元素的值序列化成对象 * @returns object */ var serializeObject = function(form) { var o = {} ...
- 【转】Java做服务器开发语言
版权声明:本文为博主原创文章,未经博主允许不得转载. 随着游戏市场的兴起,特别是网页游戏.手机游戏的崛起,对游戏开发技术的需求越来越多.网络游戏开发是一个庞大的体系,总体来说是客户端与服务器端.客户端 ...
- PAT——1068. 万绿丛中一点红
对于计算机而言,颜色不过是像素点对应的一个24位的数值.现给定一幅分辨率为MxN的画,要求你找出万绿丛中的一点红,即有独一无二颜色的那个像素点,并且该点的颜色与其周围8个相邻像素的颜色差充分大. 输入 ...
- 阅读基于sketch的软件定义网络测量数据平面硬件模型
概要 硬件实现 基于sketch 功能:采集包数.流长数据,恢复五元组 重点:高速条件下性能较好,节省硬件资源 摘要: 提出一种基于sketch 数据结构的软件定义测量数据平面硬件模型,并在以现场可编 ...
- C# 4.0 不要跨程序集用dynamic指向匿名类型 (转载)
今天写代码时偷懒用了dynamic,结果遇到问题,运行时始终无法获取dynamic对象的属性.原问题简化后如下: 程序集A包含SampleClass类,有一个静态方法,接收一个dynamic类型参数并 ...
- jdk 下载地址 服务器
https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
- Oracle 数据库数据结构(包括存储过程,函数,表,触发器等)版本控制器
原理: 写系统触发器,在修改数据库结构的时候,把DDL写入表中 create sequence A_Ver_Control_seq minvalue nomaxvalue start incremen ...
- TXT文件转换成DataSet数据集
/// <summary> /// TXT文件转换成DataSet数据集 /// </summary> /// <param name="FilePath&qu ...
- org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping
org.yaml.snakeyaml.parser.ParserException: while parsing a block mapping 原因:yml文件格式错误,此文件要求严格要求格式 如节 ...