博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
weblogic 脚本创建Managed Server (受管服务器)
阅读量:6850 次
发布时间:2019-06-26

本文共 4031 字,大约阅读时间需要 13 分钟。

说明

weblogic安装目录下有一个创建Managed Server的脚本,脚本位于/u01/app/Oracle/Middleware/oracle_common/common/bin/config.sh下,但脚本会启动一个GUI界面程序,在Linux下需要安装图形界面程序,非常不方便。wlst(WebLogic Scripting Tools,WebLogic)是一个用来管理和配置weblogic的CLI命令行工具,可以运行Jython脚本,本文介绍如何通过该工具创建Managed Server。

WLST介绍

wlst位于/u01/app/Oracle/Middleware/wlserver_10.3/common/bin/wlst.sh目录下,其中/u01/app/Oracle/Middleware/wlserver_10.3目录为$WEBLOGIC_HOME,所以严谨的讲,是安装在$WEBLOGIC_HOME/common/bin/wlst.sh下。直接执行该脚本即可运行wlst工具。

$ cd /u01/app/Oracle/Middleware/wlserver_10.3/common/bin/$ ./wlst.shInitializing WebLogic Scripting Tool (WLST) ...Welcome to WebLogic Server Administration Scripting ShellType help() for help on available commandswls:/offline> connect('weblogic','weblogic1','t3://localhost:7001')Connecting to t3://localhost:7001 with userid weblogic ...Successfully connected to Admin Server 'AdminServer' that belongs to domain 'base_domain'.Warning: An insecure protocol was used to connect to theserver. To ensure on-the-wire security, the SSL port orAdmin port should be used instead.wls:/base_domain/serverConfig> cd('/')wls:/base_domain/serverConfig> ls()dr--   AdminConsoledr--   AppDeploymentsdr--   BridgeDestinationsdr--   Clustersdr--   CoherenceClusterSystemResourcesdr--   CoherenceServers....

wlst有offline(离线)online(在线)两种模式,通过connect命令可以从offline进入online,wlst按照Linux目录形式对weblogic资源进行管理,甚至连操作的命令都和Linux高度相似,比如cd是切换到指定资源路径下,ls()是列出该目录下所有资源。如要了解更多关于wlst的内容,可以查看。

wlst脚本

本脚本原作者为,本文这里稍作修改,以下为脚本代码

create_managed_server.py

#!/usr/bin/python# Author : Tim Hall# Modified : Jianfeng.Zheng# Save Script as : create_managed_server.pyimport timeimport getoptimport sysimport re# Get location of the properties file.properties = ''try:   opts, args = getopt.getopt(sys.argv[1:],"p:h::",["properies="])except getopt.GetoptError:   print 'create_managed_server.py -p 
' sys.exit(2)for opt, arg in opts: if opt == '-h': print 'create_managed_server.py -p
' sys.exit() elif opt in ("-p", "--properties"): properties = argprint 'properties=', properties# Load the properties from the properties file.from java.io import FileInputStream propInputStream = FileInputStream(properties)configProps = Properties()configProps.load(propInputStream)# Set all variables from values in properties file.adminUsername=configProps.get("admin.username")adminPassword=configProps.get("admin.password")adminURL=configProps.get("admin.url")msName=configProps.get("ms.name")msAddress=configProps.get("ms.address")msPort=configProps.get("ms.port")msMachine=configProps.get("ms.machine")# Display the variable values.print 'adminUsername=', adminUsernameprint 'adminPassword=', adminPasswordprint 'adminURL=', adminURLprint 'msName=', msNameprint 'msAddress=', msAddressprint 'msPort=', msPortprint 'msMachine=', msMachine# Connect to the AdminServer.connect(adminUsername, adminPassword, adminURL)edit()startEdit()# Create the managed Server.cd('/')cmo.createServer(msName)cd('/Servers/' + msName)cmo.setListenAddress(msAddress)cmo.setListenPort(int(msPort))# Associated with a node manager.cd('/Servers/' + msName)cmo.setMachine(getMBean('/Machines/' + msMachine))save()activate()disconnect()exit()

properties文件

脚本所需参数通过properties文件传入,以下是properties文件

api-api-managed-server.properties

# AdminServer connection details.admin.username=weblogicadmin.password=weblogic1admin.url=t3://10.1.11.71:7001ms.name=api-serverms.address=0.0.0.0ms.port=7002ms.machine=api-server-machine

admin.username: weblogic管理员用户名

admin.password: weblogic管理员密码
admiin.url: weblogic控制台地址需要加上t3协议字段
ms.name: managed server名称,可以自定义
ms.address: managed server监听地址
ms.port: managed server监听端口号
ms.machine: managed server关联的计算机名称

ms.machine需要提前创建好,可以在weblogic控制台页面创建

运行

create_managed_server.pyapi-api-managed-server.properties文件上传到服务器,这里上传到目录~/shell

$ cd /u01/app/Oracle/Middleware/user_projects/domains/base_domain/bin$ . ./setDomainEnv.sh$ java weblogic.WLST ~/shell/create_managed_server.py -p ~/shell/api-managed-server.properties

ps:. ./setDomainEnv.sh第一个点(.)不能省略

执行完毕后登录console查看结果。

参考

转载地址:http://fkgul.baihongyu.com/

你可能感兴趣的文章
Python中的else
查看>>
zend_db连接mysql(附完整代码)(转)
查看>>
五个人二个月为什么不等于十个人一个月
查看>>
matlab 与 VC 混编函数参数传递<2>
查看>>
Silverlight for Windows Phone开发系列课程
查看>>
Ajax经典交互讲解
查看>>
如何让windows更高效?
查看>>
windows 搭建 subversion+TortoiseSVN
查看>>
windows8安装xna4.0不能开发Xbox和PC端游戏的解决办法
查看>>
jQuery.validate errorPlacement
查看>>
转载:linux vi命令详解
查看>>
EM算法原理
查看>>
System.Drawing.Color的颜色对照表
查看>>
一次滚动一屏的滚动条行为实现
查看>>
.NET面试题(三)
查看>>
自定义TreeList单元格 z
查看>>
【百度地图】- 学习.1
查看>>
JS函数重载解决方案
查看>>
Nginx中的rewrite指令
查看>>
CSS系列:CSS3新增选择器
查看>>