转自:http://fengzhilinux.blog.51cto.com/1343279/315690
IBM Websphere Application Server(WAS)
序:
自打从学校出来,这是平生第一次完全凭己一人之力学习一个完全陌生的东西,真可谓是深有体会,真正了解到老师在我们平时的学习中起到多大的作用!自我开始研究WAS开始,在上面的下精力有多少不说,单是时间上来说,相差10倍不止啊!!!真是惭愧!哎!!闲话少提,干正事,权作为新手们少浪费精力和宝贵的时间!
主要内容:
如何linux平台上安装WebSphere Application Server V6.1,包括如何卸载以往版本,创建概要文件
安装要求:
1.系统需为分布式系统
2.1.6GB闲置磁盘空间用于保存安装文件
3.另一1.6GB闲置磁盘空间用于存放安装后的文件以及概要文件等
我的系统配置:
[root@shasys01 bin]# uname -a
Linux shasys01.ex.bnslink.com 2.6.9-22.ELsmp #1 SMP Mon Sep 19 18:00:54 EDT 2005 x86_64 x86_64 x86_64 GNU/Linux
WAS简介:
WAS是Websphere Application Server的简称,和Weblogic一样,是当前主流的是中间件之一。V6.1在6.0的基础上增强了如下功能:
1.用单元模板建立一个包括一个部署管理器和一个结点的完整的单元
2.使您能够行使管理安全
3.用新的Profile Management Tool(PMT,概要文件管理工具)创建概要文件
四种概要文件的描述:【据我经验来看,希望大家好好看看这几个文件的概念和区别!切记!不然后面会非常的绕人!!】
Cell profile(单元概要文件):一个单元概要文件包含一个部署管理器概要文件和一个应用程序服务器结点概要文件。你可以在创建单元概要文件之后把其他一些应用程序服务器结点添加到部署管理器概要文件。单元概要文件模板是V6.1
中新增的概要文件类型。
Deployment manager profile(部署管理器概要文件):部署管理器为在一台或者多台机器上的逻辑上的一组应用程序服务器提供一个单独的管理接口。在部署管理器创建的时候开始,就已经可以获得管理安全。
Application server profile(应用程序服务器概要文件):一个应用程序服务器概要文件有一个名为 server1 的缺省服务器。应用程序服务器可以与一个包含snoop servlet 和hitcount servlet 的缺省应用程序一起创建,也可以与示例程序一起创建。你可以联立一个应用程序服务器,或者把它作为一个独立的应用程序服务器使用。
Custom profile(自定义概要文件):一个自定义概要文件是一个空结点。你可
以向结点里面添加应用程序服务器,集簇,或者其他的Java 过程,例如通信服
务器。你必须把自定义概要文件添加到一个单元之中才能对其进行操作。
注意:为了搭建一个完整的WebSphere Application Server 运行环境,你至少要创建一个概要文件。该概要文件叫做缺省概要文件。缺省概要文件通常是在安装WebSphere ApplicationServer 的时候创建的。但是,你也可以在安装好WebSphere Application Server 之后再另行创建概要文件。两种创建概要文件的方法的结果都是一样的,都可以完成搭建一个完整的WebSphere Application Server 运行环境。
什么是单元(Cell)?什么是节点(Node)?Node、Profile 与 Server 之间的关系是什么?
单元:
单元是整个分布式网络中一个或多个节点的逻辑分组。单元是一个配置概念,是管理员将节点间逻辑关联起来的实现方法。管理员根据具体的业务环境,制定对其整体系统集成环境有意义的条件来定义和组织构成单元的节点。就一般情况来说,可以将单元看作是最大的作用域。
在 IBM WAS ND 产品中,管理配置数据都存储在 XML 文件中。单元保留了它每个节点中每台服务器的主配置文件。同时每个节点和服务器也有其自己的本地配置文件。如果服务器已经属于单元,则对于本地节点或服务器配置文件的更改都是临时的,通过在本地提交更改生效时,本地更改覆盖单元配置,但是当执行单元配置文档同步到节点的操作时,在单元级别上对主控服务器和 主节点配置文件所作的更改将会替换对该节点所作的任何临时更改。
节点:
节点是受管服务器(Server)的逻辑分组。节点通常与具有唯一 IP 主机地址的逻辑或物理计算机系统对应,节点不能跨多台计算机。节点分为受管节点与非受管节点。
关于 Node、Profile 与 Server:
这三个概念比较容易混淆,我们拿出来对比说明:Node=Profile。Node 是管理上使用的概念,Profile 是实际的概要文件,它们代表同一事物。Server 就是所谓的 Application Server Instance , 这是我们实际要布署 Application 的地方。在IBM WAS ND 产品中受管节点的 Node Agent 目的就是让 Deployment Manager Server 可以透过 Node Agent 来管 Node (Profile) 中的 Application Server Instance,一个 Node (Profile) 中可以有多个 Application Server Instance。
如果是非 ND 版本 , 则属于 Single Server 版本,那么一个 Node (Profile) 中只能有一个 Application Server Instance,如果你希望在一台机器上有多个 Application Server Instance,那就只能透过创建多个 Profile (Node) 来达成,但这些 Node (Porfile) 彼此独立没有管理上的关系 (RelationShip),只要使用的 TCP/IP Port 不要冲突即可。
安装:
Linux的默认安装目录是:/opt/WebSphere/AppServer(在后面都用$was表示)
如果在安装前你的系统里面已经安装的有低版本的Websphere你需要先将其卸载掉。在$was/uninstall目录中运行./uninstall一路下一步就OK了。
如果没有的话就可以直接安装了
一.在你的安装程序,执行install命令,出现如下欢迎界面,点击Next即可
查看那并接受协议
如果你已经在这台电脑上安装了WAS,并且想再安装一个或者多个WAS的话,则会出现如下这个画面。前提是你的电脑要足够强
否则的话则会出现要你前些在哪里安装的界面,差不多都一样了,相信这还难不住各位
这里填写想要安装的目录,但是有时候报如下错误。这种问题可能是你前一次在这个目录装过WAS了,也可能是原来装过了但也删除了,但是进程没有撤销,依然占有这个文件夹,你可以关掉WAS或者重启下电脑(注意:测试可以这样,但是真实环境中卡千万不能这样!),或者干脆直接换个文件夹即可。
这里有四种模式可供我们选择新手建议选择第一种
一样,新手建议选择安装样板
下面是我们选择的信息,需要我们确认后才能继续
、
好了,我们可以泡杯茶小酣一会,这里需要20—30分钟左右的时间,具体以机器性能而视。但是真正的挑战才真正开始。我说的可是真的哈!!呵呵
当出现Success的字眼是说明我们安装成功。下面开始配置WAS
确保出现类似下图表示成功。
这里记着下面两个端口号。在后面要用到
SOAP_CONNECTOR_ADDRESS=8884
WC_adminhost=9064
在IE地址栏输入http://IP:Port/admin(port默认是9060,我们可以在$was/profiles/dmgr001/properties/portdef.props查看各概要文件相应端口号)即可进入图形化管理界面。因为我的系统是64 位的不支持PTM图形工具创建概要文件。只能通过命令行来创建。这里我也建议大家也在命令行来创建。因为在图形化界面中会有延迟,并且有时候不能及时正确的显示我们所需信息。正常启动的界面如下:
注意:我们首次建立的应用程序服务器只能通过手动重启,在WEB中试无法启动的!!
命令:
表 1 manageprofiles 的模式
-create: 创建一个新的概要。
-augment 使用给定的概要模板,扩充某个特定的概要。
-delete 删除一个概要。
-unaugment: 取消对概要的扩充。
-deleteAll 删除所有已注册的概要。
-listProfile 列出概要注册中心中的概要。
-getName 返回指定路径下的概要的名称。
-getPath 返回指定概要名称的路径。
-validateRegistry 验证概要注册中心,并返回一个无效概要的列表。
-validateAndUpdateRegistry 验证概要注册中心,列出被清除的无效概要。
-getDefaultName 返回缺省概要的名称。
-setDefaultName 设置缺省概要。
-backupProfile 将指定的概要备份到一个 zip 文件。
-restoreProfile 从 zip 文件中恢复指定的概要。
-response 在一个响应文件中管理概要。
-help 显示帮助。
Profile模板:概要是根据随产品提供的模板创建的。这些模板位于<was_home>/profileTemplates。每个模板都由一组提供概要初始设置的文件和概要创建后将采取的操作列表组成。目前还没有为您提供修改这些模板以及创建新模板的方法。当您使用manageprofiles创建概要时,您需要指定下列模板中的一个:
* Default(对于应用程序服务器概要)
* Dmgr(对于部署管理器概要)
* Managed(对于自定义概要)
* Cell(对于单元概要)
下面是在命令行中添加概要文件方式(大家一定注意路径):
[root@shasys01 bin]# pwd
$was/bin
[root@shasys01 bin]# ./manageprofiles.sh -create -profileName dmgr001 -templatePath $was/profileTemplates/dmgr -nodeName dnmgr001node -cellName dmgr001cell
INSTCONFSUCCESS: Success: Profile dmgr001 now exists. Please consult /list/opt/IBM/WebSphere/AppServer/profiles/dmgr001/logs/AboutThisProfile.txt for more information about this profile.
[root@shasys01 bin]# pwd
$was/bin
[root@shasys01 bin]# ./manageprofiles.sh -create -profileName app001 -templatePath $was/profileTemplates/default/ -nodeName default001node
INSTCONFSUCCESS: Success: Profile app001 now exists. Please consult /list/opt/IBM/WebSphere/AppServer/profiles/app001/logs/AboutThisProfile.txt for more information about this profile.
[root@shasys01 bin]# pwd
$was/profiles/app001/bin
[root@shasys01 properties]# pwd
$was/profiles/dmgr001/properties
[root@shasys01 properties]# vim portdef.props
[root@shasys01 bin]# pwd
$was/profiles/app001/bin
[root@shasys01 bin]# ./addNode.sh 172.16.248.2 8884为部署管理概要文件SOAP端口
一般出现下面类似结果表示成功
ADMU0116I: Tool information is being logged in file
/list/opt/IBM/WebSphere/AppServer/profiles/app001/logs/addNode.log
ADMU0128I: Starting tool with the app001 profile
CWPKI0308I: Adding signer alias "dummyclientsigner" to local keystore
"ClientDefaultTrustStore" with the following SHA digest:
0B:3F:C9:E0:70:54:58:F7:FD:81:80:70:83:A6:D0:92:38:7A:54:CD
CWPKI0308I: Adding signer alias "dummyserversigner" to local keystore
"ClientDefaultTrustStore" with the following SHA digest:
FB:38:FE:E6:CF:89:BA:01:67:8F:C2:30:74:84:E2:40:2C:B4:B5:65
CWPKI0308I: Adding signer alias "default" to local keystore
"ClientDefaultTrustStore" with the following SHA digest:
A6:3C:83:9B:40:4A:2B:0F:E3:43:C8:40:E3:24:1C:F2:36:BB:15:54
ADMU0001I: Begin federation of node default001node with Deployment Manager at
172.16.248.2:8884.
ADMU0001I: Begin federation of node default001node with Deployment Manager at
172.16.248.2:8884.
ADMU0009I: Successfully connected to Deployment Manager Server:
172.16.248.2:8884
ADMU0505I: Servers found in configuration:
ADMU0506I: Server name: server1
ADMU2010I: Stopping all server processes for node default001node
ADMU0510I: Server server1 is now STOPPED
ADMU0024I: Deleting the old backup directory.
ADMU0015I: Backing up the original cell repository.
ADMU0012I: Creating Node Agent configuration for node: default001node
ADMU0014I: Adding node default001node configuration to cell: dmgr001cell
ADMU0016I: Synchronizing configuration between node and cell.
ADMU0018I: Launching Node Agent process for node: default001node
ADMU0020I: Reading configuration for Node Agent process: nodeagent
ADMU0022I: Node Agent launched. Waiting for initialization status.
ADMU0030I: Node Agent initialization completed successfully. Process id is:
2158
ADMU9990I:
ADMU0300I: The node default001node was successfully added to the dmgr001cell
cell.
ADMU9990I:
ADMU0306I: Note:
ADMU0302I: Any cell-level documents from the standalone dmgr001cell
configuration have not been migrated to the new cell.
ADMU0307I: You might want to:
ADMU0303I: Update the configuration on the dmgr001cell Deployment Manager with
values from the old cell-level documents.
ADMU9990I:
ADMU0306I: Note:
ADMU0304I: Because -includeapps was not specified, applications installed on
the standalone node were not installed on the new cell.
ADMU0307I: You might want to:
ADMU0305I: Install applications onto the dmgr001cell cell using wsadmin
$AdminApp or the Administrative Console.
ADMU9990I:
ADMU0003I: Node default001node has been successfully federated.
每个应用程序服务器概要文件创建好之后都会有一个默认的应用程序服务器server1
[root@shasys01 bin]# pwd
$was/profiles/app001/bin
[root@shasys01 bin]# ./startServer.sh server1
ADMU0116I: Tool information is being logged in file
/list/opt/IBM/WebSphere/AppServer/profiles/app001/logs/server1/startServer.log
ADMU0128I: Starting tool with the app001 profile
ADMU3100I: Reading configuration for server: server1
ADMU3200I: Server launched. Waiting for initialization status.
ADMU3000I: Server server1 open for e-business; process id is 2717
[root@shasys01 bin]# pwd
$was/profiles/app001/bin
[root@shasys01 bin]# ./serverStatus.sh server1
ADMU0116I: Tool information is being logged in file
$was/profiles/app001/logs/server1/serverStatus.log
ADMU0128I: Starting tool with the app001 profile
ADMU0500I: Retrieving server status for server1
ADMU0508I: The Application Server "server1" is STARTED
应用程序服务器概要文件的server1开启之后就可以在IE图形化界面查看配置信息了。
http://172.16.248.2:9067/ibm/console/login.do
[root@shasys01 bin]# pwd
$was/profiles/dmgr001/bin
[root@shasys01 bin]# ./startManager.sh
ADMU0116I: Tool information is being logged in file
$was/profiles/dmgr001/logs/dmgr/startServer.log
ADMU0128I: Starting tool with the dmgr001 profile
ADMU3100I: Reading configuration for server: dmgr
ADMU3200I: Server launched. Waiting for initialization status.
ADMU3000I: Server dmgr open for e-business; process id is 8681
部署管理器概要文件的控制台开启之后就可以在IE图形化界面查看配置信息了
http://172.16.248.2:9064/ibm/console/login.do
如果仔细比较的话,大家会发现应用程序服务器概要文件的图形化信息和部署管理器概要文件的图形化信息还是有很大区别的,这个问题我这里专门提出来主要是因为,我当时对于应用程序服务器概要文件和部署管理器概要文件之间的区别和联系很模糊,所以当我看到应用程序服务器概要文件的图形化信息是很是郁闷,就是找不到从哪里启动server。浪费了很多时间去查资料。
好了到这里WAS的基本配置算是结束了。再往下的路已经很简单了。大家可以在图形化界面玩了。上面我几乎每一个命令都给大家标示了路径希望大家能重视起来,要不让倒时候服务起不来可被怪我没提醒哈!!呵呵,还有就是服务和命令不能重复使用负责会报错,但是在命令提示符下提示的信息却是相当的不明确。跟linux没法比呀。呵呵
总结:
下面是我总结的几句话。相信在大家迷茫的时候会大家有所启发帮助
1. 部署管理器逻辑的为应用程序提供一个单独的管理接口,在部署管理器创建的开始就可以获得管理安全
2. 一个应用程序服务器概要文件都有一个名为server1的缺省服务器
3. 某个结点成为受管结点后,这个结点上的server需要DM+Node Agent启动后,才能启动或者停止server
4. Node Agent协调机器上服务器之间的管理。他是运行服务器,他代表Network Deployment环境中的节点,必须在每个节点启动Node Agent后 Deployment Manager (DM)才能控制节点上的server,你必须以开始就启动Node Agent
5. Node Agent必须正在运行,DM才能管理节点上的服务器。
6. addNode.sh命令将启动Node Agent 当节点不小心stop后./startNode.sh再启动结点
7. 在$was下,还有一层目录,我们发现和$was/profiles/下的各个概要文件中的目录架构是一样的。该层下的命令都是对于缺省概要文件来说的。在其下运行时需要指定-profileName
8. addNode.sh命令来联合概要文件
9. 确定概要文件使用的端口号:$was/profiles/proproties/portdef.props,如果端口冲突了的话可使用ws_ant脚本来手动指定端口号
10. 启动顺序:先同步——启动结点—启动服务
关闭顺序:先关闭结点—再关闭服务