当我运行此命令asadmin list-instances
时,我得到了这个结果,有人有一个想法是什么意思?
[glassfish@mydas]$ asadmin list-instances
I1 not running [pending config changes are: _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/admin-ear/admin-ear-13308077918078249404.0.ear; _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/comptabilite-ear/comptabilite-ear-12940026351961817647.0.ear; _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/comptabilite-ear/comptabilite-ear-11974752653489746292.0.ear; ]
I2 not running [pending config changes are: _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/admin-ear/admin-ear-13308077918078249404.0.ear; _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/comptabilite-ear/comptabilite-ear-12940026351961817647.0.ear; _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/comptabilite-ear/comptabilite-ear-11974752653489746292.0.ear; ]
Command list-instances executed successfully.
我知道我有两个我的群集实例而没有运行,但我的意思是这一行:
[挂起的配置更改为:_deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/admin-ear/admin-ear-13308077918078249404.0.ear; _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/comptabilite-ear/comptabilite-ear-12940026351961817647.0.ear; _deploy /opt/glassfish3/glassfish/domains/D/applications/__internal/comptabilite-ear/comptabilite-ear-11974752653489746292.0.ear; ]
我检查了这个文件 / opt / glassfish3 / glassfish / domains / D / applications / __ internal ,我删除了所有文件但是得到了相同的结果。
我怎样才能清除所有这些以获得这样的明确信息:
I1 not running
I2 not running
谢谢。
答案 0 :(得分:2)
该消息表示您通过域管理服务器(DAS)对实例进行了一些配置更改,但此后实例尚未启动。这意味着远程实例不知道这些配置更改,并将从DAS触发同步以在启动时应用更改。在他们可以连接到DAS之前,这些更改将不会应用。
在您的情况下,您似乎已部署了3个EAR,并且您指定要在所有目标上部署它们,或者部署目标包括2个实例。因此,一旦配置同步(在启动实例之后),EAR将部署到两个实例。
applications/__internal
中的文件是EAR应用程序的文件,删除它们只会破坏应用程序,但不会取消部署它们。仅当您通过删除到autodeploy目录来部署应用程序时才会触发取消部署,但是如果使用asadmin或管理控制台进行部署则不会触发。如果您打开config/domain.xml
文件,即使删除了应用程序文件,您仍然可以在某处看到对所有3个应用程序的引用。
为了隐藏list-instances
中的消息,您应该正确地取消部署所有3个应用程序以将其从配置中删除,或者至少从其部署目标中删除这两个实例,他们只是部署在DAS上(但这可能不是你想要的)。
如果要在实例上部署应用程序,则需要启动实例以使配置与DAS同步。
答案 1 :(得分:1)
尝试以下方法:
asadmin start-instance --sync full I1
asadmin start-instance --sync full I2
这应该使您的实例与DAS重新同步。
如果这没有帮助,您可以尝试以下方法:
asadmin list-instances --long=true
这应详细列出失败的命令。您可以通过SSH连接到特定实例并手动执行命令,这应该应用挂起的更改。您可能必须在事后重新启动实例,以使它们与DAS同步状态。
另见: