首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在不对群集名称进行硬编码或在属性文件中指定群集名称的情况下将WorkManager定位到多个群集

如何在不对群集名称进行硬编码或在属性文件中指定群集名称的情况下将WorkManager定位到多个群集
EN

Stack Overflow用户
提问于 2019-01-03 22:26:54
回答 2查看 189关注 0票数 1

我有一个WLST脚本来设置WorkManager,并将其指向WebLogic域中的所有集群。问题是,我在多个环境中有数百个域,所以不能有多个属性文件。有没有办法编写wlst脚本,从域中提取集群详细信息,并将它们设置为创建的workmanager的目标?

我尝试使用下面的方法获取集群详细信息,但它只列出了一个集群,其中域上配置了3个集群。

代码语言:javascript
复制
cd ('/Clusters')
Clusters = cmo.getClusters()
for clusters in Clusters:
        svr = clusters.getName()
print svr

下面是我使用的wlst:

代码语言:javascript
复制
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目标对域中的所有群集,而不对任何群集名称进行硬编码。请帮帮我!

EN

回答 2

Stack Overflow用户

发布于 2019-01-04 01:47:57

这是一个算法问题。您的代码不正确。

代码语言:javascript
复制
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()
票数 0
EN

Stack Overflow用户

发布于 2020-06-16 19:46:31

这就对了:(去掉svr变量)

代码语言:javascript
复制
cd ('/Clusters')
Clusters = cmo.getClusters()
for clusters in Clusters:
    print  clusters.getName()
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54024257

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档