当前位置: 首页 > 知识库问答 >
问题:

org.apache.ignite:连接集群失败,连接失败,重新连接失败

微生俊健
2023-03-14
import org.apache.ignite.spark._
import org.apache.ignite.configuration._
import org.apache.ignite.Ignite
import org.apache.ignite.IgniteCache
import org.apache.ignite.Ignition
import org.apache.ignite.scalar.scalar
import org.apache.ignite.scalar.scalar._


// val ic = new IgniteContext(sc, () => new IgniteConfiguration())
val ic = new IgniteContext(sc,"/data/dk/jar/config/default-config.xml")

 val recordCache = ic.ignite.cache[String, AttendRecord]("ATTEND_RECORD_TL")
    var retSet : scala.collection.mutable.Buffer[java.sql.Timestamp] = null
    if(operateTimeSite != null) {
       retSet = recordCache.sql("punchSiteId = ? and operateTime <= ? and operateTime >= ? order by operateTime desc limit 1",punchSiteId, compueteTcTime,operateTimeSite).getAll.map(_.getValue.operateTime) 
    }  else {
       retSet = recordCache.sql("punchSiteId = ? and operateTime <= ?  order by operateTime desc limit 1",punchSiteId, compueteTcTime).getAll.map(_.getValue.operateTime) 
    }
    if(retSet == null || retSet.isEmpty) { 
        if(operateTimeSite !=null) 
            retSet = recordCache.sql("punchSiteId = ? and operateTime >= ?  order by operateTime limit 1",punchSiteId, new Timestamp(operateTimeSite.getTime - 4*3600*1000)).getAll.map(_.getValue.operateTime) 
        else null  
    }
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start manager: GridManagerAdapter [enabled=true, name=org.apache.ignite.internal.managers.discovery.GridDiscoveryManager]
        at org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1791)
        at org.apache.ignite.internal.IgniteKernal.start(IgniteKernal.java:978)
        at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start0(IgnitionEx.java:1896)
        at org.apache.ignite.internal.IgnitionEx$IgniteNamedInstance.start(IgnitionEx.java:1648)
        at org.apache.ignite.internal.IgnitionEx.start0(IgnitionEx.java:1076)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:596)
        at org.apache.ignite.internal.IgnitionEx.start(IgnitionEx.java:536)
        at org.apache.ignite.Ignition.getOrStart(Ignition.java:414)
        ... 37 more
Caused by: class org.apache.ignite.IgniteCheckedException: Failed to start SPI: TcpDiscoverySpi [addrRslvr=null, sockTimeout=5000, ackTimeout=5000, marsh=JdkMarshaller [], reconCnt=10, maxAckTimeout=600000, forceSrvMode=false, clientReconnectDisabled=false]
        at org.apache.ignite.internal.managers.GridManagerAdapter.startSpi(GridManagerAdapter.java:300)
        at org.apache.ignite.internal.managers.discovery.GridDiscoveryManager.start(GridDiscoveryManager.java:842)
        at org.apache.ignite.internal.IgniteKernal.startManager(IgniteKernal.java:1786)
        ... 44 more
Caused by: class org.apache.ignite.spi.IgniteSpiException: Failed to connect to cluster, connection failed and failed to reconnect.
        at org.apache.ignite.spi.discovery.tcp.ClientImpl$Reconnector.body(ClientImpl.java:1490)
        at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:62)

共有1个答案

景帅
2023-03-14

您可以在独立模式下为Spark使用Ignite集成。这意味着客户endpoint火节点将在内部启动。它将寻找其他节点,并连接到它们。因此,您需要Ignite集群单独运行,并可由IPs使用,这是您在其IP查找器的igniteContext配置中指定的。

IP查找器应包含服务器节点的地址。因此不需要指定内部具有客户机节点的其他Spark执行器的地址。

“failed to connect to cluster,connection failed and failed to Reconnect”错误表示客户端节点无法通过指定的IP找到任何服务器节点。

val ic = new IgniteContext(sc,"/data/dk/jar/config/default-config.xml", false)

有关更多信息,请参阅以下文档页面:https://apacheignite-fs.readme.io/docs/igniteContext-igniterDD

附注。

您使用一个多播IP查找器,它使Ignite扫描配置的多播组中的所有IP地址。如果您知道服务器节点的所有IP地址,那么就可以使用TCPDiscoveryVMIPFinder。它将让Ignite实例更快地启动。

 类似资料:
  • 错误:无法启动连接:错误:WebSocket无法连接。在服务器上找不到连接,endpoint可能不是信号器endpoint,服务器上不存在连接ID,或者存在阻止WebSocket的代理。如果有多台服务器,请检查是否启用了粘性会话。 WebSocketTransport.js:49WebSocket连接到“ws://xxxxxx/生产/网络服务/集线器/spreadhub”失败: Angular.t

  • 问题内容: 我正在开发一个应用程序,我想做的是从android中的服务器数据库接收数据。因此,我开始运行一些教程。我发现一个正在做我想做的事。但我得到: 本教程的整个代码在这里链接 发生错误: 我检查了一下: 防火墙已禁用 ping正在工作 连接字符串与从服务器管理界面运行servlet时完全相同 --servlet正在运行 我的配置: 服务器:Glass Fish 4.0 Android应用程序

  • 当我运行spring boot应用程序时,我得到以下错误: 应用程序启动失败 描述:

  • 我试图在多台服务器上运行ansible角色,但出现错误: 致命:[192.168.0.10]:无法到达= 我的/etc/ansible/hosts文件如下所示: 我不知道发生了什么-一切看起来都很好-我可以通过SSH登录,但ansible ping返回相同的错误。 详细执行的日志: 你能帮我个忙吗?如果我必须在本地模式(-c local)下使用ansible,那么它是无用的。 我试图删除ansib

  • 我有以下php代码: 警告:mysqli_connect():(28000/1045):第2行/home/u536268762/public_html/index.html中的用户“u536268762_alex”srv19.main hosting.com(使用密码:YES)被拒绝访问MySQL:u536268762_alex@“srv19.main hosting.com”(使用密码:YES)