当前位置 博文首页 > A_art_xiang的博客:weblogic从入门到起飞(wlst)(四)

    A_art_xiang的博客:weblogic从入门到起飞(wlst)(四)

    作者:[db:作者] 时间:2021-07-14 15:32

    目录

    介绍wlst

    简单使用

    wlst的主要步骤和命令

    wlst实例1创建domain和管理server生命周期

    创建domain模板:

    使用domain模板(创建domain):

    用wlst启动和管理server(没有nodemanager的情况下,wlst无法启动受管理服务器,可以启动管理服务器):

    wlst导航mbean

    wlst修改已经存在的domain


    weblogic从入门到起飞!(weblogic安装、domain配置、管理控制台)(一)

    weblogic从入门到起飞!(受管服务器、免密启动、备份)(二)

    weblogic从入门到起飞!(域模块、扩展模块)(三)

    weblogic从入门到起飞(wlst)(四)

    weblogic从入门到起飞(nodemanager)(五)

    weblogic从入门到飞起(部署应用、日志)(六)

    介绍wlst

    Jython,无缝对接java语言,与运行期间的Mbean、配置的mbean交互。

    ?

    在线模式、

    离线模式,不建议在离线模式下更改正在运行的domain。

    ?

    wlst有三种模式:

    交互模式:命令行输入命令,可以直接获取响应。

    脚本模式:后缀名为py的,可以同时运行很多命令。

    嵌入模式:嵌入到java代码中。

    ?

    交互模式、脚本模式的主要步骤:

    1.设置相应的环境。

    2.调用脚本工具。

    3.启动wlst客户端。

    4.运行命令。

    5.退出wlst。

    6.将控制台的信息定向到文件里。

    7.获取帮助。

    简单使用

    windows下:(实际上是启用了$weblogic_home$\common\bin\wlst.cmd脚本)

    linux下:

    1.进入到目录:$weblogic_home$/server/bin/

    2.设置环境变量:source setWLSEnv.sh

    3.启动wlst字符界面。

    java weblogic.WLST(这是没有参数的启动)

    简单的命令(调用函数):

    readDomain('/home/weblogic/user_projects/domains/base_domain')

    ls()

    exit()

    java weblogic.WLST -i test.py (这是带脚本的启动,将上面两句放在test.py里面,启动的时候会执行)(-i,执行完不会退出)

    get(Active)

    execfile('test.py') 执行脚本

    java weblogic.WLST -skipWLSModuleScanning(启动时不扫描包,并没有太多的意义)

    ?

    在common/bin下面,的wlst.sh,可以直接启用./wlst.sh,既初始化环境变量,又启动了wlst。

    如果想启用安全的一些东西,在wlst.sh最后,加几个参数:

    wlst的主要步骤和命令

    如果调用方法参数带特殊字符,可以用r来转义:readTemplate(r'c:\mytemplate.jar')

    在离线模式,对象名字是不可以使用这些字符的:.? /? \

    帮助:help('disconnect'):help加上命令名称。

    ?

    保存所敲得所有的命令:

    startRecording(recordFile,[recordAll])? :startRecording('1.py')

    stopRecording()

    ?

    报错之后,使用dumpStack()追踪错误信息。

    ?

    操作mbean:

    cd(mbeanName):切换mbean目录。

    prompt(myPrompt):隐藏目录。

    ls():罗列

    create(name, childMBeanType, [baseProviderType]):创建一个mbean,名称、子类型

    delete(name, childMBeanType):删除一个mbean。

    get(attrName):获取mbean属性。

    set(attrName):设置mbean属性。

    ?

    mbean:读取domain之后,有子目录和属性,树形结构。

    1.读取domain:readDomain('/home/weblogic/Oracle/Middleware/user_projects/domains/base_domain')

    2.ls():上面是目录,下面是属性。

    3.cmo:获取当前管理对象。

    4.get('AdminServerName'):获取属性名。

    5.cd('Server'):切换目录

    6.prompt():隐藏显示目录,再次敲一遍就会显示。

    7.pwd():显示目录。

    wlst实例1创建domain和管理server生命周期

    离线模式创建domain。

    ?

    在/home/weblogic/Oracle/Middleware/wlserver_10.3/common/templates/scripts/wlst目录下,有创建domain的脚本。

    basicWLSDomain.py:创建domain用的。

    basicWLSSDomain.py:安全相关的脚本。

    还有一些其他脚本。

    ?

    创建domain模板:

    create():第一个参数为新建对象的名字,第二个参数为新建对象的类型。

    修改属性有两种方法。

    writeTemplate:创建一个模板。

    使用domain模板(创建domain):

    四个参数:1.模板地址。2.domain创建地址。3.用户名。4.密码。

    用wlst启动和管理server(没有nodemanager的情况下,wlst无法启动受管理服务器,可以启动管理服务器):

    1.startServer('AdminServer','base_domain',t3:localhost:7001'):第一个参数为server名称,第二个参数为所在domain名字,第三个参数为url

    2.启动后可以连接已启动的domain:

    3.cd('Servers')

    4.state('Server-0'):查看状态

    5.suspend('Server-0',block='true'):将Server-0挂起。block='true'就是阻塞当前操作,该命令执行完再执行下一条。

    6.resume('Server-0',block='true'):将server-唤醒。

    7.shutdown(block='true'):停止当前服务器。

    或者:shuntdown([name],[entityType],[ignoreSessions],[timeOut],[force],[block] )

    参数:server名称、Server、忽略session(true/false)、多长时间、是否强制关闭、是否阻塞操作。

    wlst导航mbean

    1.启动AdminServer。

    2.运行/common/bin/wlst.sh。

    3.连接到domain。connect()——输入用户名密码地址。

    4.cmo:打印当前对象名字和类型。

    5.ls():打印子目录和子节点。(前面带d的为目录,不带d的为属性。r可读、w可写、x可执行)

    6.cd('Servers'):进入Servers目录。cd('..')、cd('/')

    7.domainConfig()或者serverConfig()。(在受管理服务器不能用domainConfig())

    8.domainRuntime():展示当前domain当中的一些运行状态。

    9.domainCustom():可写的树,没有根,cmo无法运行。

    10.serverRuntime():当前服务器,信息比domainRuntime()多,只读。

    11.custom():可写的树,没有根,cmo无法运行。

    12.edit():可更改。startEdit()、save(),active()更改、激活。

    13.find('WeblogicPluginEdabled'):找有这个属性的mbean。

    14.bean1=getMBean('/Servers/AdminServer'),bean1.getStuckThreadMaxTime()。

    15.disconnect()

    ?

    mServer

    只能用RuntimeMBeanServer。

    wlst修改已经存在的domain

    在线更改domain步骤:

    链接到管理服务器。

    edit():进入编辑模式,获取锁。

    activate(block='true'):提交更改。

    在save()之前,可以showChanges(),列出你所做的更改。

    undo():将更改回滚。

    cancelEdit():将更改回滚并且退出编辑,释放锁。

    ?

    更改离线状态的domain:

    cs