我有一个WLST脚本来设置WorkManager,并将其指向WebLogic域中的所有集群。问题是,我在多个环境中有数百个域,所以不能有多个属性文件。有没有办法编写wlst脚本,从域中提取集群详细信息,并将它们设置为创建的workmanager的目标?
我尝试使用下面的方法获取集群详细信息,但它只列出了一个集群,其中域上配置了3个集群。
cd ('/Clusters')
Clusters = cmo.getClusters()
for clusters in Clusters:
svr = clusters.getName()
print svr下面是我使用的wlst:
import java.lang.Exception
# Connect to ADMIN
##################
userName=sys.argv[1]
userPW=sys.argv[2]
adminURL=sys.argv[3]
WL_DOMAIN=sys.argv[4]
exists = 'no';
connect(userName,userPW,adminURL)
edit()
startEdit()
cd ('/Clusters')
Clusters = cmo.getClusters()
for clusters in Clusters:
svr = clusters.getName()
print svr
cd('/SelfTuning/' + domainName)
cmo.createWorkManager('workManager')
cd('/SelfTuning/' + domainName + '/WorkManagers/workManager')
set('Targets',jarray.array([ObjectName('com.bea:Name='+svr+',Type=Cluster')], ObjectName))
activate()上面的脚本将创建的工作管理器定位到一个集群,其中该域本身有3个集群。我希望将WM目标对域中的所有群集,而不对任何群集名称进行硬编码。请帮帮我!
发布于 2019-01-04 01:47:57
这是一个算法问题。您的代码不正确。
connect(userName,userPW,adminURL)
edit()
startEdit()
cd('/SelfTuning/' + domainName)
cmo.createWorkManager('workManager')
cd ('/Clusters')
Clusters = cmo.getClusters()
cd('/SelfTuning/' + domainName + '/WorkManagers/workManager')
set('Targets',Clusters)
save()
activate()发布于 2020-06-16 19:46:31
这就对了:(去掉svr变量)
cd ('/Clusters')
Clusters = cmo.getClusters()
for clusters in Clusters:
print clusters.getName()https://stackoverflow.com/questions/54024257
复制相似问题