gpt4 book ai didi

ssh - GridGain - 通过 Grid.startNodes API 使用 SSH 以编程方式打开节点

转载 作者:行者123 更新时间:2023-12-02 14:03:28 26 4
gpt4 key购买 nike

我正在使用 Grid.startNodes(java.util.Collection, java.util.Map, boolean, int, int)
如此处定义:http://gridgain.com/api/javadoc/org/gridgain/grid/Grid.html#startNodes(java.util.Collection , java.util.Map, boolean, int, int)

我正在使用的代码:

GridConfiguration cfg = GridCfgGenerator.GetConfigurations(true);
Grid grid = GridGain.start(cfg);

Collection<Map<String,Object>> coll = new ArrayList<>();

Map<String, Object> host = new HashMap<String, Object>();
//host.put("host", "23.101.201.136");
host.put("host", "10.0.0.4");
host.put("port", 22);
host.put("uname", "username");
host.put("passwd", "password");
host.put("nodes", 7);
//host.put("ggHome", null); /* don't state so that it will use GRIDGAIN_HOME enviroment var */
host.put("cfg", "/config/partitioned.xml");

coll.add(host);

GridFuture f = grid.startNodes(coll, null, false, 3600 * 3600, 4);
System.out.println("before f.get()");
f.get();
  • 我在带有 10.0.0.7
  • 的 vm 上运行上述代码
  • 我将远程桌面连接到主机 IP 为 10.0.0.4 的虚拟机中,并且看不到状态发生任何变化。代码完成并退出。如果我使用 bin/ggstart.bat
  • 启动它,两个 VM 都能够在本地运行 gridgain,并且可以发现彼此的节点。
  • 我可以在 10.0.0.4 上手动启动一个节点(我试图通过这个 API SSH 连接的机器)。我可以通过运行 $GG_HOME/bin/ggstart.bat $GG_HOME/config/partitioned.xml 来启动所述节点,因此配置文件
  • 中没有问题

    我不太确定如何调试它,因为我没有收到错误

    最佳答案

    startNodes(..)返回的 future 成功完成方法意味着您的本地节点已经建立了 SSH session 并为它要启动的每个节点执行了一个命令。但是命令的成功执行并不意味着节点会真正启动,因为它可能由于多种原因而失败(例如,错误的 GRIDGAIN_HOME )。

    您应该检查以下内容:

  • 是否创建了 GridGain 日志 GRIDGAIN_HOME/work/log目录?如果是,请检查它们 - 启动过程中可能存在异常。
  • 如果没有新的日志,则执行的命令有问题。该命令可以在本地节点日志中找到 - 搜索“使用 SSH 命令启动远程节点:...”行。您可以尝试在终端中创建 SSH 连接,运行此命令并查看会发生什么。
  • 此外,您可能需要检查 SSH 日志以查看是否有任何错误。
  • 关于ssh - GridGain - 通过 Grid.startNodes API 使用 SSH 以编程方式打开节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26188446/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com