在生产环境中,WebLogic服务器实例经常会跨多个管理域(domains)、物理主机(machines)或地域(geographic locations)分开部署。Node Manager是远程启动、停止或重启管理服务器和受管服务器的工具。尽管它不是必须的,但如果你的WebLogic服务器中的应用有高可用性的需求,还是推荐使用它。
Node Manager进程并不与特定的Weblogic管理域关联,只与特定的物理主机关联。可用同一个Node Manager进程控制多个Weblogic管理域上的服务器实例,只要这些服务器实例与Node Manager进程在同一个物理主机上。
此导学包含了配置与启动基于java的Node Manager,并使用它控制Oracle WebLogic Server 12c (12.1.1)受管服务器。
在开始此导学前,你应该完成了:
Oracle WebLogic Server 12c: Installing WebLogic Server and Creating a Domain,
Oracle WebLogic Server 12c: Configuring Managed Servers,
Oracle WebLogic Server 12c: Creating and Configuring Machines.
一、查看当前物理主机的配置
通过如下步骤检查物理主机的配置:
1. |
如果管理域中的管理服务器没有启动,必须先启动它。通过终端窗口进入到管理域目录,输入如下命令: $ ./startWebLogic.sh 当提示用户名与密码时,请输入管理域的管理员凭证。 |
---|---|
2. |
管理服务器启动后,进入WebLogic Server管理控制台。打开浏览器输入如下地址: http://hostname:port/console 此导学中地址为: http://host01.example.com:8001/console 注意:使用你主机的主机名。另外,如果你使用了一个不同的管理服务器端口,请使用这个端口。 在欢迎界面,使用管理服务器的用户名和密码登录。 |
3. |
如果有受管服务器(dizzy1, dizzy2, dizzy3)在运行,请关闭它们。 |
4. |
检查在导学Oracle WebLogic Server 12c: Creating and Configuring Machines中创建的物理主机的配置。 在Domain Structure中,展开Environment (通过点击旁边的 + )。点击Machines |
5. |
在Machines中点击dizzyMachine1. |
6. |
在配置dizzyMachine1中,点击Configuration标签和Node Manager子标签。 |
7. |
此时可以看到这个物理主机对应的Node Manager的配置。Type 设置成Plain(表示基于java的Node Manager未使用SSL),Listen Address设置成host01.example.com ,Listen Port设置成5556。 |
8. |
检查dizzyMachine2对应的Node Manager的配置。在Domain Structure下的Environment点击Machines。 在Machines表格中点击dizzyMachine2。 在配置dizzyMachine2中,点击Configuration标签和Node Manager子标签。 此时可以看到这个物理主机对应的Node Manager的配置。它与dizzyMachine2对应的Node Manager的配置相同,除了Listen Address设置成host02.example.com ,Listen Port设置成5557。 |
二、配置Node Manager
为了在物理主机上创建新的Node Manager目录并配置它,执行如下步骤:
1. |
在host01上打开一个新终端,并进入安装目录<MIDDLEWARE_HOME>。在此导学中为/u01/app/oracle/Middleware。 |
---|---|
2. |
创建新目录<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine1。 |
3. |
复制如下文件到dizzyMachine1目录:<MIDDLEWARE_HOME>/wlserver_12.1/server/bin/startNodeManager.sh |
4. |
编辑文件<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine1/startNodeManager.sh. |
5. |
将NODEMGR_HOME变量设为当前路径。在此导学中为<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine1。然后保存。 |
6. |
创建新文件<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine1/nodemanager.properties并编辑它。 |
7. |
将如下三行添加到新文件中:
然后保存。 |
8. |
访问第二个物理主机host02。 设置dizzyMachine2上的node manager: 创建新目录<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine2,将startNodeManager.sh复制到这个目录中。 在此脚本中将NODEMGR_HOME设为当前路径。在此导学中为<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine2。保存此文件。 再次创建nodemanager.properties文件,为dizzyMachine2输入如下listen address和port number:
保存此文件。 |
译者注:关于这一部分内容,可以使用${WL_HOME}/wlserver/common/bin/config.sh创建一个只包含Node Manager的管理域,这样以上文件都会生成,不用再手工复制。
三、向管理域中登记计算机
向管理域中登记计算机后,此计算机上的Node Manager就可以接受从管理域发来的请求,执行步骤如下:
1. |
访问host01。打开终端窗口进入<MIDDLEWARE_HOME>/wlserver_12.1/server/bin。运行脚本setWLSEnv.sh设置WLST需要的环境: $ source setWLSEnv.sh |
---|---|
2. |
通过在终端窗口中输入如下命令以交互模式打开WLST:(译者注:也可以执行wlst.sh进入) java weblogic.WLST |
3. |
在WLST提示框中输入如下命令连接到运行中的管理服务器: wls:/offline> connect('<USERNAME>', '<PASSWORD>', 't3://<ADMIN_HOST>:<ADMIN_PORT>') 使用与你环境匹配的参数替代样例变量,如下: wls:/offline> connect('weblogic', 'Welcome1', 't3://host01.example.com:8001') |
4. |
运行nmEnroll()命令。此命令将运行WLST的计算机登记到WLST连接到的管理服务器所在的管理域。所谓“登记”就是从管理服务器下载两个文件到本计算机:nm_password.properties和SerializedSystemIni.dat。 Node Manager的“加密文件”nm_password.properties包含加密过的用户名和密码,管理服务器用它向Node Manager进程认证自己。此文件在管理域目录/config/nodemanager/中。 用来加密和解密的文件SerializedSystemIni.dat放在管理域目录/security/中。 另外,nmEnroll()命令创建或更新Node Manager主目录中的nodemanager.domains文件。它将当前管理域添加到Node Manager允许管理的管理域列表中。 nmEnroll()命令包含两个参数:
此导学中命令应为: nmEnroll('/u01/app/oracle/Middleware/user_projects/domains/dizzyworld', 注意:管理域路径和Node Manager路径要设置正确。 |
5. |
在提示窗口中输入如下命令退出WLST: |
6. |
访问host02,在dizzyMachine2对应的Node Manager主目录中运行nmEnroll()重复以上步骤: nmEnroll('/u01/app/oracle/Middleware/user_projects/domains/dizzyworld', |
四、启动Node Manager
执行如下步骤启动Node Manager:
1. |
在host01中进入<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine1并输入: ./startNodeManager.sh 注意dizzyMachine1对应的Node Manager启动了。 |
---|---|
2. |
在host02中进入<MIDDLEWARE_HOME>/user_projects/nodemanager/dizzyMachine2并输入: ./startNodeManager.sh |
五、使用Node Manager和管理控制台启动受管服务器
执行如下步骤从管理控制台启动受管服务器:
1. |
再次访问WebLogic Server管理控制台。在Domain Structure中展开Environment并点击Servers: |
---|---|
2. |
点击Control标签。 |
3. |
选择所有受管服务器的勾选框((dizzy1、dizzy2、dizzy3)并点击Start。 |
4. |
当提示是否确认启动这三个服务器时,点击Yes |
5. |
点击刷新图标能周期性的刷新服务器表。 |
6. |
几分钟后,验证每个服务器的状态都为“Running”。
|
Summary
In this tutorial, you learned how to:
- Configure Node Manager communication settings in a domain
- Configure and start a Node Manager
- Enroll a domain with a Node Manager
- Start servers with Node Manager
Resources
- For documentation on Oracle WebLogic Server 12c, visit the Documentation Library.
- For more information on configuring machines, see the Create and configure machines section of the Administration Console Online Help.
- For more information on configuring and using Node Manager, see the Node Manager Administrator's Guide.
- To learn more about Oracle WebLogic Server, refer to additional OBEs in the OLL website.
Credits
- Author: TJ Palazzolo
- Contributor: Bill Bell
译者注:
关于如何配置WebLogic的Node Manager,Oracle WebLogic Library中写的不是很详细,网上一直也没有找到一篇非常完整的文档。今天偶然找到一篇讲12c的,觉得不错,翻译了一下供大家参考学习。
http://www.oracle.com/webfolder/technetwork/tutorials/obe/fmw/wls/12c/10-NodeMgr--4472/nodemgr.htm