核心概念
在开始之前,先简单理解几个关键角色,这有助于你选择正确的启动方式:

- 管理服务器:WebLogic 域的“大脑”,它负责配置管理、部署应用、监控所有受管服务器的生命周期。启动受管服务器之前,通常需要先启动管理服务器。
- 受管服务器:实际运行你的 Java 应用(.war, .ear 文件)的服务器实例,它从管理服务器获取配置信息。
- Node Manager:一个轻量级的 Java 进程,它作为 WebLogic Server 和本地操作系统之间的桥梁,你可以通过 Node Manager 在本地或远程启动、停止、重启受管服务器,而无需登录到管理控制台。这是生产环境中最推荐的方式。
通过管理控制台 启动(最直观,适合开发和测试)
这是最简单、最直观的方法,适合在开发或测试环境中手动启动。
前提条件:
- 管理服务器 已经成功启动。
- 你知道管理服务器的访问地址(如
http://localhost:7001/console)和用户名密码(通常是weblogic)。
步骤:
-
登录管理控制台:打开浏览器,输入管理服务器的控制台地址,使用管理员账户登录。
(图片来源网络,侵删) -
导航到受管服务器:
- 在左侧导航栏中,展开
Environment。 - 点击
Servers。 - 你会看到域中定义的所有服务器,包括 Admin Server 和所有 Managed Server。
- 在左侧导航栏中,展开
-
启动目标服务器:
- 在服务器列表中,找到你想要启动的受管服务器(
myManagedServer)。 - 选中该服务器,然后点击右上角的
Start按钮。 - 系统会弹出确认对话框,点击
Yes确认。
- 在服务器列表中,找到你想要启动的受管服务器(
-
查看启动状态:
- 页面会刷新,服务器的
State列会显示为STARTING,然后变为RUNNING。 - 你也可以点击服务器名称,进入其详细状态页面,查看
Messages标签页,这里有详细的启动日志,可以用来排查问题。
- 页面会刷新,服务器的
通过 Node Manager 启动(生产环境首选)
Node Manager 是一个独立于 WebLogic Server 的进程,它负责监控和启动/停止服务器,这种方式更稳定,适合生产环境,因为它允许你从管理控制台或命令行远程管理服务器,而不需要直接登录到服务器主机。

前提条件:
- Node Manager 已启动,你需要在受管服务器所在的主机上,通过命令行启动 Node Manager。
- Windows: 进入
${DOMAIN_HOME}\bin目录,运行startNodeManager.cmd。 - Linux/Unix: 进入
${DOMAIN_HOME}/bin目录,运行startNodeManager.sh。
- Windows: 进入
- 管理服务器 已启动。
- 管理服务器和 Node Manager 之间的网络配置正确(
nodemanager.host和nodemanager.port)。
步骤:
-
确保 Node Manager 运行:
- 在受管服务器所在的主机,检查 Node Manager 的日志文件(通常在
${DOMAIN_HOME}/nodemanager/nodemanager.log),确认没有错误,进程正在运行。
- 在受管服务器所在的主机,检查 Node Manager 的日志文件(通常在
-
登录管理控制台:
和方法一一样,登录到管理控制台。
-
连接到 Node Manager:
- 在左侧导航栏中,展开
Environment->Servers。 - 点击
Control标签页(这个页面通常显示所有服务器及其 Node Manager 的连接状态)。 - 在
Node Manager列下,Node Manager 运行正常,你应该会看到一个绿色的勾或 "Reachable" 状态。
- 在左侧导航栏中,展开
-
通过 Node Manager 启动服务器:
- 切换到
Servers标签页,选择你要启动的受管服务器。 - 点击
Start按钮。 - 此时会弹出一个窗口,让你选择启动模式。请确保选择了 "Start in Running Mode"。
- 点击
Yes。 - 启动请求会发送到 Node Manager,由 Node Manager 在本地操作系统上启动受管服务器进程,你可以通过管理控制台监控启动进度和日志。
- 切换到
使用 startManagedWebLogic.sh 脚本(命令行方式)
这种方式适用于自动化脚本、CI/CD 流程,或者当你无法使用图形界面时。
前提条件:
- 管理服务器 已启动并正在运行。
- 你知道管理服务器的地址和端口。
步骤:
-
定位脚本:
- 脚本位于
${DOMAIN_HOME}/bin目录下,名为startManagedWebLogic.sh(Linux/Unix) 或startManagedWebLogic.cmd(Windows)。
- 脚本位于
-
执行脚本:
- 打开一个终端,进入
${DOMAIN_HOME}/bin目录。 - 执行脚本,并传入管理服务器的地址和端口作为参数。
Linux/Unix 示例:
# ./startManagedWebLogic.sh <ManagedServerName> <AdminURL> ./startManagedWebLogic.sh myManagedServer t3://localhost:7001
Windows 示例:
# startManagedWebLogic.cmd <ManagedServerName> <AdminURL> startManagedWebLogic.cmd myManagedServer t3://localhost:7001
- 打开一个终端,进入
-
输入凭证:
- 脚本执行后,会提示你输入用户名和密码来连接管理服务器,通常是
weblogic/password。
- 脚本执行后,会提示你输入用户名和密码来连接管理服务器,通常是
-
查看启动日志:
- 启动日志会直接输出到你的终端窗口。
- 日志也会写入到受管服务器的日志文件中,路径通常是
${DOMAIN_HOME}/servers/<ManagedServerName>/logs/<ManagedServerName>.log,这是排查启动问题的最佳位置。
使用 WLST (WebLogic Scripting Tool)(高级自动化)
WLST 是一个强大的命令行脚本工具,用于管理 WebLogic 域,它比 startManagedWebLogic.sh 更灵活,可以实现更复杂的自动化逻辑。
步骤:
-
启动 WLST:
- 在
${MW_HOME}/wlserver_10.3/common/bin目录下运行wlst.sh(Linux/Unix) 或wlst.cmd(Windows)。
- 在
-
连接管理服务器:
# connect(<user>, <password>, <AdminURL>) connect('weblogic', 'password', 't3://localhost:7001') -
启动受管服务器:
# start(<ManagedServerName>, <block='true/false'>) # block='true' 表示 WLST 会等待服务器完全启动后再返回控制台 start('myManagedServer', block='true') -
断开连接并退出:
disconnect() exit()
你可以将这些 WLST 命令保存在一个 .py 文件中,然后使用 wlst.sh my_script.py 来执行。
故障排查
如果受管服务器启动失败,请按以下顺序检查:
-
检查日志文件:这是最重要的一步,日志文件是诊断问题的金标准。
- Node Manager 日志:
${DOMAIN_HOME}/nodemanager/nodemanager.log,检查 Node Manager 本身是否正常。 - 受管服务器日志:
${DOMAIN_HOME}/servers/<ManagedServerName>/logs/<ManagedServerName>.log,这里包含了服务器启动过程中的所有信息,如端口冲突、内存不足、应用部署失败等。
- Node Manager 日志:
-
检查管理服务器状态:确保 Admin Server 正在运行,并且受管服务器可以连接到它。
-
检查端口占用:使用
netstat(Linux) 或netstat -ano(Windows) 命令检查受管服务器配置的监听端口(如 8001)是否被其他进程占用。 -
检查配置:登录管理控制台,检查受管服务器的配置是否正确,特别是:
- Listen Address:
0.0.0表示监听所有IP,localhost表示只监听本地,确保配置符合你的网络需求。 - Listen Port: 端口号是否正确且未被占用。
- SSL 配置: 如果启用了 SSL,检查密钥库和信任库路径是否正确。
- Listen Address:
总结与推荐
| 方法 | 优点 | 缺点 | 适用场景 |
|---|---|---|---|
| 管理控制台 | 直观、无需记忆命令 | 依赖图形界面,不适合自动化 | 开发、测试、手动管理 |
| Node Manager | 生产环境首选、远程管理、稳定可靠 | 需要额外启动和维护 Node Manager 进程 | 生产环境、需要远程操作的场景 |
startManagedWebLogic |
简单的命令行操作、易于脚本化 | 需要手动输入密码(可通过配置文件解决) | 自动化部署、CI/CD 流程、快速启动 |
| WLST | 功能最强大、最灵活、适合复杂自动化 | 学习曲线陡峭,配置较复杂 | 高级自动化、大规模环境管理 |
对于大多数用户,特别是运维和开发人员,强烈推荐掌握方法二(Node Manager)和方法三(startManagedWebLogic.sh),前者用于日常管理和监控,后者用于自动化部署流程。
