`
yangzb
  • 浏览: 3473824 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

WebLogic管理指南

    博客分类:
  • Java
阅读更多

创建 WebLogic 配置 /

域是一组逻辑上相关的 WebLogic Server 资源,您可以把它当作单个管理单元进行管理。域将所有的资源和应用程序信息保存在一个基于 XML 的配置库中。为了在 WebLogic Server 上部署并运行应用程序,首先要创建域。
 
推荐使用域配置向导作为创建新域的工具。如果您准备编写脚本来创建域,推荐使用 slient 模式的域配置向导这个工具。也可以从所提供的“开箱即用”的域模板或定制的域模板来创建 WebLogic Server 域。
 
为了创建定制的域模板,请使用配置模板生成器,它是一个单机的 Java 应用程序,能够让您创建定制的配置和扩展。您可以使用这些配置和扩展来创建和更新域。


域配置向导具有以下属性:

·    向导会引导您完成针对目标环境创建或扩展域的过程。

·    向导可以使用 OOB 预定义的域模板或定制域模板创建或扩展域。

·    向导将创建 config.xml 文件,建立基本的安全性,构造启动脚本,等等。

·    可以使用 graphical console silent 模式启动向导。


要以 graphical 模式启动向导,请运行以下命令之一:


域配置模板生成器具有以下属性:  

·    向导会引导您完成创建或扩展配置模板 (JAR file) 的过程。

·    配置向导可以使用已创建的配置(域)模板来创建域。


只能以 graphical 模式启动配置模板生成器。
要启动配置模板生成器,请运行以下命令之一:



技巧

·    如果 WebLogic Domain/Configuration 分布在多台物理机器上,那么应该只能在管理服务器硬件(机器)上运行域配置向导。

·    并不要求一定在托管服务器硬件上运行域配置向导。  

·    WebLogic Server 安装目录之外创建 WebLogic ( 默认情况下,所创建的域位于 %BEA_HOME%Ser_projectsdomains )

·    为管理服务器创建启动脚本时,如果脚本 (startWebLogic.cmd/sh) 没有调用域目录中的 weblogic.Server 类,使用这个命令行选项来指定域的位置: -Dweblogic.RootDirectory=path

·    启动托管服务器 (startManagedWebLogic.cmd/sh) 时,如果进行设置的话, -Dweblogic.RootDirectory 将被设置为服务器根目录,该目录将被用于存储文件,比如日志文件和托管服务器独立( managed-server independence MSI )文件。


服务器启动
 
管理服务器从配置库 (config.xml) 加载所有配置。所有相关的托管服务器必须在启动期间连接到运行中的管理服务器。独立的托管服务器可以从本地库 (msi-config.xml) 加载配置。
 
如果 WebLogic 运行在装有 Unix 操作系统的计算机上,您可以为 WebLogic Server 进程分配一个 UID GID ,以便在计算机执行所有优先的启动操作之后,以 root 用户的身份进行绑定。如果 WebLogic Server 用户想要绑定到更高的端口 (>1024) ,则无需 root 权限。

技巧
编写使服务器启动自动化的脚本时,考虑以下因素:

·    在域中,必须在任何相关托管服务器之前启动管理服务器。

·    当把托管服务器作为相关服务器启动时,它连接到管理服务器,以便下载配置。

·    当把托管服务器作为独立服务器启动时,检查 msi-config.xml 文件是否被存储在服务器根目录中。

·    Unix 中,使用 'nohup' 运行 WebLogic Server 启动脚本,以保证即使您注销以后,服务器依然在后台运行。

·    OS 中,为安装和启动服务器创建一个 WebLogic Server 用户。

·    存储加密后的用户身份,使用 boot.properties 文件来避免启动脚本中出现硬编码的用户身份。

·    当把服务器绑定到较低端口 (<1024) 时(这需要 root 权限),使用 WebLogic UNIX 机器配置来绑定 UID GID

·    为了使 WebLogic 域中的管理服务器在机器重启期间能够自动重启,使用操作系统提供的 daemon 进程功能。

o                Windows 服务

o                UNIX daemon 进程

·    当您使用域配置向导创建域时,域中的管理服务器可以被当成服务。

·    此外,可以使用位于域文件夹中的 installservice.cmd uninstallservice.cmd 脚本在 Windows Service Control Manager (SCM) 中添加或删除服务。

·    如果管理服务器和托管服务器是同一台机器,配置管理服务器进程和托管服务器进程之间的 OS 级服务相关性。

·    配置 rc 脚本,以便在正确的运行级别上添加 WebLogic 启动命令。


启动和关机类
可以把 WebLogic Server 配置为在启动和正常关机过程中调用类。在服务器初始化所有子系统之后和它给客户端访问开放端口之前,加载并执行启动类。类似地,在服务器启动正常关机进程之前加载关机类。和应用程序文件不同,必须手动地使启动和关机类在已部署服务器地本地 classpath 中可用。

技巧

·    在启动期间,使服务器级的启动类在已部署 WebLogic Server 实例的系统 classpath 中可用。

·    域中的管理服务器到托管服务器都不能自动部署出现在系统 classpath 中的类;应用程序级别的类可以分布在域中的管理服务器到目标服务器上。

·    重新部署应用程序时,就会重新加载应用程序级别的启动类。

·    不能动态地重新加载服务器级别的启动类;只能在它们各自的 WebLogic Server 重新启动时重新加载它们。

·    使用应用程序级别的启动类,而不要定义服务器级别的启动类。

节点管理器
使用 WebLogic Server 提供的节点管理器功能自动启动托管服务器,或者重新启动出现故障的托管服务器。节点管理器使管理员可以从管理服务器或命令行 (weblogic.Admin START…) 远程启动托管服务器。这可以通过与管理服务器通信来实现,而不用依赖 OS 特定的远程登录功能。
 
此外,除了启动和关闭托管服务器之外,节点管理器还能够监控它所启动的服务器的健康状况。如果进行恰当的配置,在出现故障时,节点管理器能够自动重新启动托管服务器。


技巧

·    使用节点管理器时,显式地配置所托管服务器的有远程启动属性,而不要依靠节点管理器为托管服务器的配置提供的环境。

·    节点管理器只接收来自管理服务器的请求。管理服务器不可用时,想要通过节点管理器远程地重新启动托管服务器是不可能的。

·    把节点管理器配置为一个服务 / daemon

·    启用托管服务器的自动重启。

·    配置机器在出现故障时自动关闭,以便在节点管理器尝试重新启动一个出现故障的实例之前关闭它。

·    运行在一台机器上的节点管理器可以被运行在该机器上的多台托管服务器所共享。

·    节点管理器还可以被运行在同一台机器上的多个域中的托管服务器所共享。


WebLogic Server
关闭过程
异常的 JVM 终止可以导致套接字或程序段这样的资源被锁定。在操作系统中关闭或终止 WebLogic Server 进程被认为是异常终止。
可以通过以下方式正常关闭 WebLogic Server

·    使用管理控制台 'Graceful Shutdown" 超链接。

·    使用 weblogic.Admin SHUTDOWN… 命令。

·    使用 JMX ,具体是调用 ServerMBean 类的 stop 方法。


技巧

·    为了正常关闭生产服务器,需要使用 WebLogic 管理控制台或者 weblogic.Admin 实用程序。

·    正常关机不会异常终止用户会话;它等待 HTTP 会话完成或超时。

·    也可以把 WebLogic Server 配置为不等待(忽略 Session During Shutdown 选项)。

·    正常关机超时是可配置的;默认情况下,服务器将会无限期地等待关机过程完成。

·    如果服务器没有响应正常关机请求,或者当服务器等待正在进行的会话时(处于待机状态)关闭服务器,使用 'Force Shutdown' 选项。

·    如果被配置为 daemon ,确保将 rc 脚本中的 stop 方法配置为在机器重启和停止时正常关闭服务器。

·    如果对节点管理器进行配置,终止节点管理器将不会停止由它们启动的相应服务器。必须单独地停止各台托管服务器。


备份和恢复
为了在出现故障时迁移或恢复 WebLogic 域,定期备份管理服务器机器上的整个域目录树。这样,您就可以从硬件或系统故障中恢复,而要做的不过是还原域目录并重新启动管理服务器。
 
如果管理服务器崩溃,管理服务器将会把所有正在运行的托管服务器的相关信息保留在 running-managed-servers.xml 文件中。重新启动时,管理服务器将会读取这个文件,并尝试联系所有以前运行的托管服务器。如果没有托管服务器正在运行的话, discovery 模式可能会增加管理服务器的启动时间,但是始终要使用 discovery 模式(默认情况下它是打开的),这样才能保证有托管服务器已经运行的情况下,管理服务器重新与所有托管服务器连接。

一些需要引起注意 / 定期从管理服务器机器上进行备份的重要文件有:

·    config.xml
域配置库。

·    config.xml.booted
成功启动时对域配置库的良好备份。

·    boot.properties
启动管理服务器时需要的加密后的用户名和密码。

·    running-managed-servers.xml
这是当前正在运行的相关托管服务器的一个列表。这个文件用于当管理服务器重新启动后,而且有托管服务器正在运行时,发现托管服务器。

·    domain/configArchive/
包含域配置库文件的拷贝。使用管理工具进行更新时,管理服务器把旧的 config.xml 文件复制到这个目录。

·    domaindminserverdapdapfiles
当前被域的管理服务器使用的内嵌 LDAP 数据文件。

·    *.ldift 文件
这些文件可以用于把 WebLogic Domain Embedded LDAP 服务器初始化为刚刚创建域时的样子。

·    domain/adminserver/ldap/backup/EmbeddedLDAPBackup.zip
WebLogic Domain Embedded LDAP
服务器的备份。内嵌的 LDAP 被用于存储用户、组、角色、默认的安全领域使用的策略、 myrealm 的安全提供程序。

·    Batch/Shell 脚本
setEnv.cmd/sh, startWebLogic.cmd/sh, startManagedWebLogic.cmd/sh


 
为管理任务编写脚本
为了创建用于管理域配置的脚本:

·    使用 weblogic.Admin 实用程序命令 BATCHUPDATE ,它运行一个批处理文件中指定的一系列命令。这个命令使用一个 JVM 运行所有列出的命令。

·    -Dweblogic.system.BootIdentityFile 选项让您可以避免把用户名和密码硬编码在您的文本脚本中。

·    为了在操作系统脚本中构建逻辑分支,使用下面的命令求出 weblogic.Admin 命令的返回代码:

o                %ERRORLEVEL% (Windows)

o                0 (bash shell)

·     weblogic.Admin -adminurl 选项从管理服务器检索托管服务器的配置 Mbean 和运行时 Mbean

·    不推荐直接修改 config.xml 文件。

·   

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics