如何从wsadmin终止websphere app服务器实例?

时间:2014-05-03 07:46:44

标签: websphere websphere-7 ibm-was

我有一个jython脚本,用于停止和启动websphere应用程序服务器v7实例。我通常使用AdminControl.stopServer命令来停止,但有时实例会挂起,请求线程超时。然后我必须从Web控制台终止实例。有没有办法让实例"终止"马上,而不是等待优雅的停止?我基本上想要wsadmn中的web控制台终止按钮功能。

2 个答案:

答案 0 :(得分:0)

指挥协助说:

AdminControl.invoke('的WebSphere:名称=节点代理,过程=节点代理,平台=常见的,节点=节点1,diagnosticProvider =真,版本= 8.5.5.2,类型=节点代理,mbeanIdentifier =节点代理,细胞= ndcell ,spec = 1.0','终止',' [server1]',' [java.lang.String]')

答案 1 :(得分:0)

def getNodeNameForServer(serverName):
    nodes = AdminConfig.list("Node").split("\n")
    for node in nodes:
        nodeServers = AdminConfig.list("Server", node).split("\n")
        for nodeServer in nodeServers:
            sname = AdminConfig.showAttribute(nodeServer, "name")
            if sname == serverName:
                nname = AdminConfig.showAttribute(node, "name")
                return nname
    return 'NONE'

def terminateServer(serverName):
    nodeName=getNodeNameForServer(serverName)
    if (nodeName != "NONE"): 
        print '\nTerminating server: %s\n' % (serverName)
        nodeAgentObj=AdminControl.completeObjectName('type=NodeAgent,node='+nodeName+',*')
        print AdminControl.invoke(nodeAgentObj, 'terminate', '['+serverName+']', '[java.lang.String]')