Weblogic Server工具WLST的使用

2023-12-21 16:36:55

1.Weblogic脚本工具WLST介绍

可以用命令行来操作
Weblogic scripting tools

2.Weblogic WLST三种工作模式

2.1 wlst.sh tips:weblogic的T3 协议与HTTP/HTTPS 协议
操作如下:wlst在 common目录下

weblogic14c/wlserver/common/bin/

[weblogic@fysedu32 weblogic]$ cd weblogic14c/wlserver/common/bin/
[weblogic@fysedu32 bin]$ ls
config.sh  pack.sh  unpack.sh  wlscontrol.sh  wlsifconfig.sh  wlst.sh
#然后输入  ./wlst.sh
[weblogic@fysedu32 bin]$ ./wlst.sh 

WARNING: This is a deprecated script. Please invoke the wlst.sh script under oracle_common/common/bin.

Initializing WebLogic Scripting Tool (WLST) ...

Jython scans all the jar files it can find at first startup. Depending on the system, this process may take a few minutes to complete, and WLST may not return a prompt right away.

Welcome to WebLogic Server Administration Scripting Shell

Type help() for help on available commands

然后你可以输入help()帮助去看相关的命令

help('all'): 列出所有可用的 WLST 命令。
help('browse'): 列出用于浏览层次结构的命令。
help('common'): 列出最常用的命令。
help('control'): 列出用于控制域/服务器的命令。
help('deployment'): 列出用于部署应用程序的命令。
help('diagnostics'): 列出用于执行诊断的命令。
help('editing'): 列出用于编辑配置的命令。
help('information'): 列出用于显示信息的命令。
help('lifecycle'): 列出用于管理生命周期的命令。
help('nodemanager'): 列出用于使用 Node Manager 的命令。
help('offline'): 列出所有离线命令。
help('online'): 列出所有在线命令。
help('storeadmin'): 列出所有存储管理命令。
help('trees'): 列出用于导航 MBean 层次结构的命令。
help('variables'): 列出所有全局变量。

然后在输入wls:/offline> connect('weblogic','12345678','t3://192.168.0.32:7003')
具体来说,这行代码的含义如下:

weblogic: 是 WebLogic Server 的用户名。
12345678: 是与用户名相关联的密码。
t3://192.168.0.32:7003: 是 WebLogic Server 实例的 T3 协议连接地址。在这个例子中,服务器位于 IP 地址 192.168.0.32,使用 T3 协议的端口号是 7003。
当你执行这行代码时,它将尝试与指定的 WebLogic Server 实例建立连接。

连接成功以后wls:/offline> 会变成 wls:/tjdomain7003/serverConfig/> 状态成功连接到 WebLogic Server 并进入了 serverConfig 部分。这表示你现在可以在 WLST 中执行与服务器配置相关的操作。
然后可以根据上方的help()帮助命令去操作
不用了输入exit()退出

上面的是第一种方法


2.2 Java weblogic.WLST
嵌入到java程序中()一般是开发人员会使用这种方式进入

[weblogic@fysedu32 bin]$ cd /weblogic/weblogic14c/wlserver/server/bin/
[weblogic@fysedu32 bin]$ ls
eclipse.sh  saveMemory.sh  startNodeManager.sh  stopNodeManager.sh
idlj        setWLSEnv.sh   startRSDaemon.sh     stopRSDaemon.sh

eclipse.sh - 可能是与 Eclipse 集成相关的脚本。
saveMemory.sh - 可能是一个用于保存内存状态的脚本。
startNodeManager.sh - 用于启动 Node Manager 的脚本。
stopNodeManager.sh - 用于停止 Node Manager 的脚本。
idlj - 可能是与 IDL(Interface Definition Language)相关的工具,用于 CORBA(Common Object Request Broker Architecture)。
setWLSEnv.sh - 设置 WebLogic Server 环境的脚本。
startRSDaemon.sh - 启动 RMI(Remote Method Invocation)守护进程的脚本。
stopRSDaemon.sh - 停止 RMI 守护进程的脚本。

进到这个目录以后执行./setWLSEnv.sh

#初始化环境
[weblogic@fysedu32 bin]$ ./setWLSEnv.sh 
#要确定这个java是存在于weblogic目录下去用java指定该(WLST)
[weblogic@fysedu32 bin]$ which java
/weblogic/jdk1.8.0_261/bin/java
 [weblogic@fysedu32 bin]$ java -cp /weblogic/weblogic14c/wlserver/server/lib/weblogic.jar weblogic.WLST
 [weblogic@fysedu32 weblogic]$ java -cp weblogic14c/wlserver/server/lib/weblogic.jar weblogic.WLST

Initializing WebLogic Scripting Tool (WLST) ...

Welcome to WebLogic Server Administration Scripting Shell

Type help() for help on available commands

wls:/offline>  

这样子就进来了,然后去连接connect('weblogic','12345678','t3://192.168.0.32:7003')
connect('weblogic','12345678','t3://192.168.0.32:7001')

2.3

3.通过ELST查看与修改WebLogic配置

成功连接到ELST以后怎么修改WebLogic配置
手工去修改

在这里插入图片描述
然后输入ls()去看一下这里文件的相关的权限
dr–这里都是目录,想要找到具体的目录在这里慢慢摸索

在这里插入图片描述
查看域的信息:
这是脚本

connect('weblogic', '12345678', 't3://192.168.0.32:7003')

servers = domainRuntimeService.getServerRuntimes()
print('域中的服务器状态:')
for server in servers:
    serverName = server.getName()
    state = server.getState()
    print(f'Server: {serverName}, State: {state}')

disconnect()

AdminServer 关联的 JVM:

wls:/tjdomain7003/domainRuntime/ServerRuntimes/AdminServer/JVMRuntime/AdminServer> ls()

-r--   HeapFreeCurrent                              264841696
-r--   HeapFreePercent                              70
-r--   HeapSizeCurrent                              406323200
-r--   HeapSizeMax                                  477626368
-r--   JavaVMVendor                                 Oracle Corporation
-r--   JavaVendor                                   Oracle Corporation
-r--   JavaVersion                                  1.8.0_261
-r--   Name                                         AdminServer
-r--   OSName                                       Linux
-r--   OSVersion                                    3.10.0-957.el7.x86_64
-r--   Type                                         JVMRuntime
-r--   Uptime                                       5669045

那如何修改上面那些配置信息
可以输入 edit()

edit()
wls:/tjdomain7003/edit/> cd('Servers')

#ls() 看看你可以编辑修改哪些内容
ls()
dr--   SNMPAgentDeployments
dr--   SecurityConfiguration
dr--   SelfTuning
dr--   ServerTemplates
dr--   Servers
dr--   ShutdownClasses
dr--   SingletonServices
#比如要修改日志:
dr--   JTAMigratableTarget
dr--   Log
dr--   Machine
dr--   NetworkAccessPoints
dr--   OverloadProtection
wls:/tjdomain7003/edit/Servers> ls()
dr--   AdminServer

wls:/tjdomain7003/edit/Servers> cd('AdminServer')
wls:/tjdomain7003/edit/Servers/AdminServer> ls()
dr--   IIOP
dr--   JTAMigratableTarget
dr--   Log
dr--   Machine
dr--   NetworkAccessPoints

wls:/tjdomain7003/edit/Servers/AdminServer> cd('Log')
wls:/tjdomain7003/edit/Servers/AdminServer/Log> ls()
dr--   AdminServer

wls:/tjdomain7003/edit/Servers/AdminServer/Log> cd('AdminServer')
wls:/tjdomain7003/edit/Servers/AdminServer/Log/AdminServer> ls()
r--   DynamicallyCreated                           false
-rw-   FileCount                                    100
-rw-   FileMinSize                                  5000



修改任何东西都是这么做,学会方法

#要修改之前得登录edit运行模式
wls:/tjdomain7003/edit/Servers/AdminServer/Log/AdminServer> startEdit()
Starting an edit session ...
Started edit session, be sure to save and activate your changes once you are done.
#已开启编辑模式
wls:/tjdomain7003/edit/Servers/AdminServer/Log/AdminServer !> 
就能把文件的个数100改成4,方法set('文件名称','修改的内容')
wls:/tjdomain7003/edit/Servers/AdminServer/Log/AdminServer !> set('FileCount','4')
#保存
wls:/tjdomain7003/edit/Servers/AdminServer/Log/AdminServer !> sava()
#激活
wls:/tjdomain7003/edit/Servers/AdminServer/Log/AdminServer !> activate()

ls()

可以退出来去domain里面看看配置是否更改成了4

[weblogic@fysedu32 tjdomain7003]$ more config/config.xml
找到log

<log>
      <file-count>4</file-count>
    </log>

查看服务器状态:
这将获取服务器的状态并将其打印出来。你可以在执行这个命令后检查输出,看看服务器的状态是什么。

serverRuntime()
cd('ServerRuntimes/AdminServer')
wls:/tjdomain7003/serverRuntime/> state = get('State')
wls:/tjdomain7003/serverRuntime/> print('Server State:', state)
('Server State:', u'RUNNING')

查看数据源信息:

jdbcSystemResources = cmo.getJDBCSystemResources()
for jdbcSystemResource in jdbcSystemResources:
    dsName = jdbcSystemResource.getName()
    print('Data Source:', dsName)

查看部署信息:

appDeployments = cmo.getAppDeployments()
for appDeployment in appDeployments:
    appName = appDeployment.getName()
    print('Application:', appName)

查看日志信息:

domainRuntime()
serverLog()

启动和停止服务器:

nmStart('AdminServer')
nmKill('AdminServer')

部署应用程序:

appPath = '/path/to/your/app.war'
deploy(appName='YourApp', path=appPath, targets='AdminServer', stageMode='nostage')

创建数据源:

edit()
startEdit()
cd('/')
cmo.createJDBCSystemResource('YourDataSource')
cd('/JDBCSystemResources/YourDataSource/JDBCResource/YourDataSource')
cmo.setName('YourDataSource')
cd('/JDBCSystemResources/YourDataSource/JDBCResource/YourDataSource/JDBCConnectionPoolParams/YourDataSource')
cmo.setTestTableName('SQL SELECT 1 FROM DUAL')
save()
activate()

配置JMS队列:

edit()
startEdit()
cd('/')
cmo.createJMSSystemResource('YourJMSModule')
cd('/JMSSystemResources/YourJMSModule/JMSResource/YourJMSModule')
cmo.createQueue('YourQueue')
cd('/JMSSystemResources/YourJMSModule/JMSResource/YourJMSModule/Queues/YourQueue')
cmo.setJNDIName('jms/YourQueue')
save()
activate()

这上面的手工做的太麻烦了,所以我用批处理命令去操作
首先啊,你得创建一个.py文件
比如fysedu.py
把下面的内容写到里面来

connect('weblogic', '12345678', 't3://192.168.0.32:7003')
edit()
cd('Servers')
cd('AdminServer')
cd('Log')
cd('AdminServer')
startEdit()
set('FileCount', '5')
save()
activate()
disconnect()
exit()

在weblogic下写:
vi fysedu.py
写完保存以后用
输入

java -cp /weblogic/weblogic14c/wlserver/server/lib/weblogic.jar weblogic.WLST fysedu.py

成功以后再去查一下
[weblogic@fysedu32 tjdomain7003]$ more config/config.xml
找到log

<log>
      <file-count>5</file-count>
    </log>

文章来源:https://blog.csdn.net/weixin_43798406/article/details/135127427
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。