Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 当项目';s的新版本部署了Infinispan缓存_Amazon Web Services_Cluster Computing_Wildfly_Infinispan_Wildfly 10 - Fatal编程技术网

Amazon web services 当项目';s的新版本部署了Infinispan缓存

Amazon web services 当项目';s的新版本部署了Infinispan缓存,amazon-web-services,cluster-computing,wildfly,infinispan,wildfly-10,Amazon Web Services,Cluster Computing,Wildfly,Infinispan,Wildfly 10,我在AWS上有一个使用Wildfly 10的集群环境。它由两个节点组成。当两个节点发生完全相同的战争时,环境就完美了。但当项目发生某些更改时,我希望关闭其中一个节点并尝试部署新版本。之后,我想更改其他节点的内容。但我得到以下错误 15:37:51,190 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 72) MSC000001: Failed to start service jboss.infinispan.a

我在AWS上有一个使用Wildfly 10的集群环境。它由两个节点组成。当两个节点发生完全相同的战争时,环境就完美了。但当项目发生某些更改时,我希望关闭其中一个节点并尝试部署新版本。之后,我想更改其他节点的内容。但我得到以下错误

15:37:51,190 ERROR [org.jboss.msc.service.fail] (ServerService Thread Pool -- 72) MSC000001: Failed to start service jboss.infinispan.aero.default: org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
        at org.wildfly.clustering.service.AsynchronousServiceBuilder$1.run(AsynchronousServiceBuilder.java:107)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at java.lang.Thread.run(Thread.java:745)
        at org.jboss.threads.JBossThread.run(JBossThread.java:320)
Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
        at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:172)
        at org.infinispan.factories.AbstractComponentRegistry$PrioritizedMethod.invoke(AbstractComponentRegistry.java:870)
        at org.infinispan.factories.AbstractComponentRegistry.invokeStartMethods(AbstractComponentRegistry.java:639)
        at org.infinispan.factories.AbstractComponentRegistry.internalStart(AbstractComponentRegistry.java:628)
        at org.infinispan.factories.AbstractComponentRegistry.start(AbstractComponentRegistry.java:531)
        at org.infinispan.factories.ComponentRegistry.start(ComponentRegistry.java:222)
        at org.infinispan.cache.impl.CacheImpl.start(CacheImpl.java:849)
        at org.infinispan.manager.DefaultCacheManager.wireAndStartCache(DefaultCacheManager.java:621)
        at org.infinispan.manager.DefaultCacheManager.createCache(DefaultCacheManager.java:572)
        at org.infinispan.manager.DefaultCacheManager.getCache(DefaultCacheManager.java:440)
        at org.jboss.as.clustering.infinispan.DefaultCacheContainer.lambda$getCache$6(DefaultCacheContainer.java:119)
        at org.jboss.as.clustering.infinispan.DefaultCacheContainer.getCache(DefaultCacheContainer.java:120)
        at org.jboss.as.clustering.infinispan.DefaultCacheContainer.getCache(DefaultCacheContainer.java:114)
        at org.wildfly.clustering.infinispan.spi.service.CacheBuilder.start(CacheBuilder.java:80)
        at org.wildfly.clustering.service.AsynchronousServiceBuilder$1.run(AsynchronousServiceBuilder.java:102)
        ... 4 more
Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1
        at org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete(StateTransferManagerImpl.java:224)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:498)
        at org.infinispan.commons.util.ReflectionUtil.invokeAccessibly(ReflectionUtil.java:168)
        ... 18 more

15:37:51,253 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,261 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("component" => "backup-for")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,262 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("component" => "backups")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,264 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("component" => "eviction")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,268 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("component" => "expiration")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,269 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("component" => "locking")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,270 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("component" => "partition-handling")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,270 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("component" => "state-transfer")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
15:37:51,271 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("add") failed - address: ([
    ("subsystem" => "infinispan"),
    ("cache-container" => "aero"),
    ("replicated-cache" => "default"),
    ("store" => "none")
]) - failure description: {"WFLYCTL0080: Failed services" => {"jboss.infinispan.aero.default" => "org.jboss.msc.service.StartException in service jboss.infinispan.aero.default: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Unable to invoke method public void org.infinispan.statetransfer.StateTransferManagerImpl.waitForInitialStateTransferToComplete() throws java.lang.Exception on object of type StateTransferManagerImpl
    Caused by: org.infinispan.commons.CacheException: Initial state transfer timed out for cache default on node1"}}
standalone-ha.xml上的infinispan缓存定义为

<subsystem xmlns="urn:jboss:domain:infinispan:4.0">  
  <cache-container name="aero" default-cache="default">  
    <transport lock-timeout="60000"/>  
    <replicated-cache name="default" mode="SYNC">  
      <transaction mode="BATCH"/>  
    </replicated-cache>  
  </cache-container>  
...  

...  
我在Java上的缓存定义是

public class ApplicationCache {

    @Resource(lookup = "java:jboss/infinispan/cache/aero/default")
    private Cache<String, String> cache; 

    .....
}
公共类应用程序缓存{
@资源(lookup=“java:jboss/infinispan/cache/aero/default”)
专用缓存;
.....
}
我的问题是什么?如何解决

谢谢你的帮助

编辑我的jgroups配置

<subsystem xmlns="urn:jboss:domain:jgroups:4.0">
<channels default="ee">
    <channel name="ee" stack="s3ping"/>
<channels>
<stacks>          
    <stack name="s3ping">
       <transport type="TCP" socket-binding="jgroups-tcp" diagnostics-socket-binding="jgroups-diagnostics"/>
           <protocol type="S3_PING">
               <property name="access_key">
                   <%= @s3_access_key %>
               </property>
               <property name="secret_access_key">
                   <%= @s3_secret_access_key %>
               </property>
               <property name="prefix">
                   <%= @s3_bucket %>
               </property>
               <property name="timeout">
                   60000
               </property>
           </protocol>
           <protocol type="MERGE2"/>
           <protocol type="FD_SOCK" socket-binding="jgroups-tcp-fd"/>              
           <protocol type="FD"/>
           <protocol type="VERIFY_SUSPECT"/>
           <protocol type="BARRIER"/>
           <protocol type="pbcast.NAKACK"/>
           <protocol type="UNICAST2"/>
           <protocol type="pbcast.STABLE"/>
           <protocol type="pbcast.GMS"/>
           <protocol type="UFC"/>
           <protocol type="MFC"/>
           <protocol type="FRAG2"/>
       </stack>
</stacks>
</subsystem>

60000
编辑2其他节点堆栈跟踪


我不得不将此作为图像添加,因为这样限制了我的角色大小。

WildFly为每个部署创建一个模块。为了将应用程序的新版本视为与上一版本相同的模块,您需要确保部署的运行时名称不包含版本号,因为版本号用于生成部署的模块名称。 有两种方法可以做到这一点: 1.只需从存档名称中删除该版本-这将允许您使用基于文件扫描程序的部署而不会出现问题。 2.通过console/CLI部署应用程序,并指定一致的运行时名称。见:


必须注意在部署版本之间保留缓存对象的序列化形式。如果无法保留序列化表单,则应创建一个独立的群集以与新部署版本一起使用,以便分布式缓存中的数据保持隔离。

WildFly为每个部署创建一个模块。为了将应用程序的新版本视为与上一版本相同的模块,您需要确保部署的运行时名称不包含版本号,因为版本号用于生成部署的模块名称。 有两种方法可以做到这一点: 1.只需从存档名称中删除该版本-这将允许您使用基于文件扫描程序的部署而不会出现问题。 2.通过console/CLI部署应用程序,并指定一致的运行时名称。见:


必须注意在部署版本之间保留缓存对象的序列化形式。如果无法保留序列化表单,则应创建一个独立的群集以与新部署版本一起使用,以便分布式缓存中的数据保持隔离。

是否可以发布JGroups配置?我的幸运猜测是,您使用一个带有静态节点列表的发现协议(如tcping),而应该使用一些动态发现协议(如MPING)。A共享了必要的部分。来自其他节点的日志显示了什么?我添加了其他节点的堆栈跟踪。您的web应用程序包括在会话中序列化的新类?在我看来,如果启动更改的节点,缓存i似乎无法同步。可能您在会话中删除了一个类,或者新war使用旧会话未提供的类创建了一个新会话。有趣的是,如果您每次都检查相同的过程是否适用于相同的war(不确定是否使用现有会话多次测试)。此外,您还可以显示war的变化(或减少它以进行测试)您可以发布您的JGroups配置吗?我的幸运猜测是,您使用一个带有静态节点列表的发现协议(如tcping),而应该使用一些动态发现协议(如MPING)。A共享了必要的部分。来自其他节点的日志显示了什么?我添加了其他节点的堆栈跟踪。您的web应用程序包括在会话中序列化的新类?在我看来,如果启动更改的节点,缓存i似乎无法同步。可能您在会话中删除了一个类,或者新war使用旧会话未提供的类创建了一个新会话。有趣的是,如果您每次都检查相同的过程是否适用于相同的war(不确定是否使用现有会话多次测试)。此外,您还可以显示战争的变化是什么(或减少它的测试),我尝试了第一种方法之前,它没有工作。我试试第二条路。我希望它能帮助我想知道方式2和独立运行有什么区别。我以前尝试过第一种方式,但没有成功。我试试第二条路。我希望它能帮助我想知道方式2和运行standalone.sh有什么区别。