Nov
6
[原]在DC 5.0上安装WAS 5.1
WAS 5.0即IBM WebSphere Application Server V5.1,是一个比较老的产品,在红旗 DC Server 4.0和4.1(均为2.4核心)上都已做过兼容性认证。现因服务器升级,原DC 4.1已停止开发,不再提供新硬件驱动。但应用又暂时没有迁移计划,故只能尝试让其运行在红旗DC Server 5.0。
通过查询WebSphere 操作系统需求,得知WAS 5.1.1是可以运行在RedHat EL 4.0上的,见这里。经过测试,其也可以运行在红旗 DC Server 5.0之上,但不兼容红旗 Asianux 3.0。
一、系统平台
测试环境:
安装前,请参考IBM提供的:Reference technote #1206183 before installation
从上文得知,需要在2.6以上核心成功运行,需要依赖以下几个套件:
另外,因为WAS 5.1不支持Native POSIX Threading Library (NPTL)和LinuxThreads,所以,运行前会自动判断系统当前的环境,而设置LD_ASSUME_KERNEL参数。
而DC Server 5.0默认为:
运行脚本会自动设置为:
※ 这也是Asianux 3.0 无法运行的原因!
二、准备工作
1、创建用户
WAS 5.1中,若选择“全部”安装,则会包括一个基于WebSphere MQ的JMS服务器的“嵌入式消息传递”服务。若需要该服务,则必须先创建两个用户组mqm和mqbrkrs,及一个用户mqm,并把mqm和root加入到mqm组中,再把root添加到mqbrkrs组中。
即执行下面的命令:
2、设置主机名和/etc/hosts文件
WAS的启动依赖于主机名和IP地址的对应,安装前,请把主机名和hosts文件设好:
3、安装必须的软件包
如果您的操作系统是完全安装,则前文中提到的一系列软件均已在DC 5.0中安装,只是版本有点不同,但不影响使用:
三、正式安装
安装程序使用图形界面,需在Xwin下进行。
1、设置语言
红旗 DC Server 5.0默认使用zh_CN.GB18030,但这似乎与安装程序有点冲突(没有出现默认安装路径)。故建议改为:zh_CN.UTF-8,或英文。
2、确认用户的宿组
若已经创建用户和组,但显示与上不同的话,请注销后重新登录。
3、启动安装界面

(我使用X-Win32,把安装界面迁移到Windows上,故有些按钮显示不正确,但不影响实际使用)

这里会提示“该操作系统不能识别,可能安装会失败”,但仅是个警告信息,对运行没有影响,直接按下一步即可:

这里可输入安装路径,我使用默认值。(完全安装)

输入节点名和主机名。
※ 注意,节点名在WAS集群中必须是唯一的,而主机名与前面设定的本机环境一致。
最后点击完成后,开始安装。安装过程很顺利,只是耗费时间有点长。
4、First Steps 窗口
安装完成后,会自动启动一个First Steps 向导窗口,从这里可启动、停止或检查WAS。

也可手动启动该界面:
※ 注意,如果使用的是中文环境,无论是zh_CN.GB18030或zh_CN.UTF-8,都不能正确显示的,需该为LANG=C 。
5、简单测试
启动:
# locale|grep LANG
LANG=zh_CN.GB18030
# cd /opt/WebSphere/AppServer/bin/
# ./startServer.sh server1
ADMU0116I: 在文件/opt/WebSphere/AppServer/logs/server1/startServer.log 中记录日志工具信息
ADMU3100I: 正在从服务器读取配置:server1
ADMU3200I: 服务器已启动。等待初始化状态。
ADMU3000I: 为电子商务开放服务器 server1;进程标识为 2646
相关端口:
访问测试页面:
http://hostname:9080/snoop

http://hostname:9080/hitcount

访问管理界面:
http://hostname:9090/admin


停止服务:
最后,若一切正常,请根据这里的内容,下载Fix Pack 1,升级到5.1.1版本。
四、常见问题
1、提示“禁用嵌入式消息传递功能部件”
安装时,提示如下信息:

这正是由于没创建对应的用户和组,或组分配不对,请参考上述提到的内容排查。
2、提示找不到主机名
若启动时,一直停止在等待状态。
可试试分析目录/opt/WebSphere/AppServer/logs/server1下的日志文件。
例如,从SystemErr.log 中可能看到:
则可判断是主机名不正确。
利用hostname命令看看当前主机名,及/etc/hosts文件中是否已设置主机名和IP对应关系。
3、关于LD_ASSUME_KERNEL变量
在运行WAS前,由setupCmdLine.sh脚本自动分析系统现在的状态,若核心支持NPTL,则修改该变量的值,以禁用NPTL。
因为Asianux 3.0使用的GLIBC中已取消这部分的库函数,故WAS 5.1无法在其上运行。
※ 关于LD_ASSUME_KERNEL
详见:这里。
五、参考资料
在LINUX中安装WEB SPHERE5.1的正确方法
在Red Hat Linux AS4上安装WebSphere Application Server v5.1
Preparing Red Hat Enterprise Linux 4 (RHEL 4) to run WebSphere Application Server V5.1 products
通过查询WebSphere 操作系统需求,得知WAS 5.1.1是可以运行在RedHat EL 4.0上的,见这里。经过测试,其也可以运行在红旗 DC Server 5.0之上,但不兼容红旗 Asianux 3.0。
一、系统平台
测试环境:
引用
操作系统:红旗 DC Server 5.0 SP3 for i386
应用软件:IBM WebSphere Application Server V5.1
应用软件:IBM WebSphere Application Server V5.1
安装前,请参考IBM提供的:Reference technote #1206183 before installation
从上文得知,需要在2.6以上核心成功运行,需要依赖以下几个套件:
引用
● compat-libstdc++-296-2.96-132.7.2 -- Required for C++ run time compatibility. Used by such components as GSKit, the Java™ SDK, plug-ins, and so on.
● compat-db-4.1.25-9 -- Required by IBM® HTTP Server. Some of the modules use the libraries contained within this RPM package.
● rpm-build-4.3.3-7_nonptl -- Required by InstallShield Multiplatform (ISMP) to properly register products with the RPM database.
● sharutils-4.2.1.22 -- Provides the uudecode utility, which is required by the MQSeries® component for part of the installation routine.
● compat-db-4.1.25-9 -- Required by IBM® HTTP Server. Some of the modules use the libraries contained within this RPM package.
● rpm-build-4.3.3-7_nonptl -- Required by InstallShield Multiplatform (ISMP) to properly register products with the RPM database.
● sharutils-4.2.1.22 -- Provides the uudecode utility, which is required by the MQSeries® component for part of the installation routine.
另外,因为WAS 5.1不支持Native POSIX Threading Library (NPTL)和LinuxThreads,所以,运行前会自动判断系统当前的环境,而设置LD_ASSUME_KERNEL参数。
而DC Server 5.0默认为:
引用
LD_ASSUME_KERNEL=2.4.20
运行脚本会自动设置为:
引用
LD_ASSUME_KERNEL=2.4.19
※ 这也是Asianux 3.0 无法运行的原因!
二、准备工作
1、创建用户
WAS 5.1中,若选择“全部”安装,则会包括一个基于WebSphere MQ的JMS服务器的“嵌入式消息传递”服务。若需要该服务,则必须先创建两个用户组mqm和mqbrkrs,及一个用户mqm,并把mqm和root加入到mqm组中,再把root添加到mqbrkrs组中。
即执行下面的命令:
# groupadd mqm
# groupadd mqbrkrs
# useradd -g mqm mqm
# lgroupmod -M root mqm
# lgroupmod -M root mqbrkrs
# groupadd mqbrkrs
# useradd -g mqm mqm
# lgroupmod -M root mqm
# lgroupmod -M root mqbrkrs
2、设置主机名和/etc/hosts文件
WAS的启动依赖于主机名和IP地址的对应,安装前,请把主机名和hosts文件设好:
引用
# hostname
web.localdomain
# cat /etc/hosts|grep web
192.168.228.236 web.localdomain web
# ping web.localdomain -c 1
PING web.localdomain (192.168.228.236) 56(84) bytes of data.
64 bytes from web.localdomain (192.168.228.236): icmp_seq=0 ttl=64 time=1.21 ms
web.localdomain
# cat /etc/hosts|grep web
192.168.228.236 web.localdomain web
# ping web.localdomain -c 1
PING web.localdomain (192.168.228.236) 56(84) bytes of data.
64 bytes from web.localdomain (192.168.228.236): icmp_seq=0 ttl=64 time=1.21 ms
3、安装必须的软件包
如果您的操作系统是完全安装,则前文中提到的一系列软件均已在DC 5.0中安装,只是版本有点不同,但不影响使用:
引用
# rpm -qa|grep compat-libstdc++-296
compat-libstdc++-296-2.96-132.7.2.2AX
# rpm -qa|grep compat-db
compat-db-4.1.25-9.2AXS2
# rpm -qa|grep rpm-build
rpm-build-4.3.3-26_nonptl.2AXS2
# rpm -qa|grep sharutils
sharutils-4.2.1-22.2
compat-libstdc++-296-2.96-132.7.2.2AX
# rpm -qa|grep compat-db
compat-db-4.1.25-9.2AXS2
# rpm -qa|grep rpm-build
rpm-build-4.3.3-26_nonptl.2AXS2
# rpm -qa|grep sharutils
sharutils-4.2.1-22.2
三、正式安装
安装程序使用图形界面,需在Xwin下进行。
1、设置语言
红旗 DC Server 5.0默认使用zh_CN.GB18030,但这似乎与安装程序有点冲突(没有出现默认安装路径)。故建议改为:zh_CN.UTF-8,或英文。
# export LANG=zh_CN.UTF-8
2、确认用户的宿组
引用
# id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),500(mqm),501(mqbrkrs)
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel),500(mqm),501(mqbrkrs)
若已经创建用户和组,但显示与上不同的话,请注销后重新登录。
3、启动安装界面
引用
# cd WAS5.1/linuxi386/
# ./install &
[1] 28804
[root@web linuxi386]# InstallShield Wizard
正在初始化 InstallShield Wizard...
正在搜索 Java(tm) 虚拟机...
........
# ./install &
[1] 28804
[root@web linuxi386]# InstallShield Wizard
正在初始化 InstallShield Wizard...
正在搜索 Java(tm) 虚拟机...
........
(我使用X-Win32,把安装界面迁移到Windows上,故有些按钮显示不正确,但不影响实际使用)
这里会提示“该操作系统不能识别,可能安装会失败”,但仅是个警告信息,对运行没有影响,直接按下一步即可:
这里可输入安装路径,我使用默认值。(完全安装)
输入节点名和主机名。
※ 注意,节点名在WAS集群中必须是唯一的,而主机名与前面设定的本机环境一致。
最后点击完成后,开始安装。安装过程很顺利,只是耗费时间有点长。
4、First Steps 窗口
安装完成后,会自动启动一个First Steps 向导窗口,从这里可启动、停止或检查WAS。
也可手动启动该界面:
# unset LANG
# cd /opt/WebSphere/AppServer/firststeps/
# ./firststeps.sh &
# cd /opt/WebSphere/AppServer/firststeps/
# ./firststeps.sh &
※ 注意,如果使用的是中文环境,无论是zh_CN.GB18030或zh_CN.UTF-8,都不能正确显示的,需该为LANG=C 。
5、简单测试
启动:
引用
# locale|grep LANG
LANG=zh_CN.GB18030
# cd /opt/WebSphere/AppServer/bin/
# ./startServer.sh server1
ADMU0116I: 在文件/opt/WebSphere/AppServer/logs/server1/startServer.log 中记录日志工具信息
ADMU3100I: 正在从服务器读取配置:server1
ADMU3200I: 服务器已启动。等待初始化状态。
ADMU3000I: 为电子商务开放服务器 server1;进程标识为 2646
相关端口:
引用
# netstat -ln|more
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:5558 0.0.0.0:* LISTEN
tcp 0 0 :::9090 :::* LISTEN
tcp 0 0 :::9443 :::* LISTEN
tcp 0 0 :::1507 :::* LISTEN
tcp 0 0 :::8880 :::* LISTEN
tcp 0 0 :::9043 :::* LISTEN
tcp 0 0 :::22 :::* LISTEN
tcp 0 0 :::5559 :::* LISTEN
tcp 0 0 :::9080 :::* LISTEN
tcp 0 0 :::2809 :::* LISTEN
tcp 0 0 :::32894 :::* LISTEN
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:5558 0.0.0.0:* LISTEN
tcp 0 0 :::9090 :::* LISTEN
tcp 0 0 :::9443 :::* LISTEN
tcp 0 0 :::1507 :::* LISTEN
tcp 0 0 :::8880 :::* LISTEN
tcp 0 0 :::9043 :::* LISTEN
tcp 0 0 :::22 :::* LISTEN
tcp 0 0 :::5559 :::* LISTEN
tcp 0 0 :::9080 :::* LISTEN
tcp 0 0 :::2809 :::* LISTEN
tcp 0 0 :::32894 :::* LISTEN
访问测试页面:
http://hostname:9080/snoop
http://hostname:9080/hitcount
访问管理界面:
http://hostname:9090/admin
停止服务:
引用
# ./stopServer.sh server1
ADMU0116I: 在文件/opt/WebSphere/AppServer/logs/server1/stopServer.log 中记录日志工具信息
ADMU3100I: 正在从服务器读取配置:server1
ADMU3201I: 发出了服务器停止请求。等待停止状态。
ADMU4000I: 服务器 server1 停止完成。
ADMU0116I: 在文件/opt/WebSphere/AppServer/logs/server1/stopServer.log 中记录日志工具信息
ADMU3100I: 正在从服务器读取配置:server1
ADMU3201I: 发出了服务器停止请求。等待停止状态。
ADMU4000I: 服务器 server1 停止完成。
最后,若一切正常,请根据这里的内容,下载Fix Pack 1,升级到5.1.1版本。
四、常见问题
1、提示“禁用嵌入式消息传递功能部件”
安装时,提示如下信息:
这正是由于没创建对应的用户和组,或组分配不对,请参考上述提到的内容排查。
2、提示找不到主机名
若启动时,一直停止在等待状态。
可试试分析目录/opt/WebSphere/AppServer/logs/server1下的日志文件。
例如,从SystemErr.log 中可能看到:
引用
[09-11-6 9:29:04:084 GMT+08:00] 494a40dc SystemErr R java.net.UnknownHostException: web: web
则可判断是主机名不正确。
利用hostname命令看看当前主机名,及/etc/hosts文件中是否已设置主机名和IP对应关系。
3、关于LD_ASSUME_KERNEL变量
在运行WAS前,由setupCmdLine.sh脚本自动分析系统现在的状态,若核心支持NPTL,则修改该变量的值,以禁用NPTL。
getconf GNU_LIBPTHREAD_VERSION 2>&1 | grep NPTL > /dev/null 2>&1
if [ $? -eq 0 ] ; then
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
fi
if [ $? -eq 0 ] ; then
LD_ASSUME_KERNEL=2.4.19
export LD_ASSUME_KERNEL
fi
因为Asianux 3.0使用的GLIBC中已取消这部分的库函数,故WAS 5.1无法在其上运行。
※ 关于LD_ASSUME_KERNEL
引用
LD_ASSUME_KERNEL is an environment variable that allows over-riding the GLIBC run time that loads with a particular application. The LD_ASSUME_KERNEL environment variable tells the dynamic linker (the part of the operating system that loads shared libraries) to override the default Application Binary Interface (ABI).
详见:这里。
五、参考资料
在LINUX中安装WEB SPHERE5.1的正确方法
在Red Hat Linux AS4上安装WebSphere Application Server v5.1
Preparing Red Hat Enterprise Linux 4 (RHEL 4) to run WebSphere Application Server V5.1 products