【问题标题】:geode: "create region" is not available. Reason: Requires connectiongeode:“创建区域”不可用。原因:需要连接
【发布时间】:2015-09-30 15:44:20
【问题描述】:

我已按照https://cwiki.apache.org/confluence/display/GEODE/Index#Index-Geodein5minutes 上的说明启动了定位器和服务器。当我尝试创建区域时,我收到一条错误消息:“”创建区域“不可用。原因:需要连接。”。

你能帮我解决一下吗?

我在 3 个单独的窗口中运行我的定位器、我的服务器和区域。

  • 操作系统:Windows7-64 位
  • Java:构建 1.8.0_25-b18

locator.log 中的最后一个条目:[info 2015/09/30 17:16:51.703 CEST locator tid=0x51] 集群配置服务启动成功完成,现在正在运行 ....

server.log 中的最后一项:[info 2015/09/30 17:21:28.046 CEST server tid=0x1] CacheServer 配置:port=40404 max-connections=800 max-threads=0 notify-by -subscription=true socket-buffer-size=32768 maximum-time-between-pings=60000 maximum-message-count=230000 message-time-to-live=180 eviction-policy=none capacity=1 溢出目录=。 groups=[] loadProbe=ConnectionCountProbe loadPollInterval=5000 tcpNoDelay=true

【问题讨论】:

    标签: geode


    【解决方案1】:

    您没有看到与Geodein5minutes 中所述相同的结果的原因是您使用了三个单独的窗口。 Geodein5minutes 描述了使用单个窗口。

    下面显示了通过 Geodein5minutes 的几个额外命令,例如“list members”和“list region”。

    C:\geode\gemfire-assembly\build\install\apache-geode>.\bin\gfsh.bat _________________________ __ / _____/ ______/ ______/ /____/ / / / __/ /___ /_____ / _____ / / /__/ / ____/ _____/ / / / / /______/_/ /______/_/ /_/ v1.0.0-incubating-SNAPSHOT 监控和管理 GemFire gfsh>开始定位器--name=定位器 在 C:\geode\gemfire-assembly\build\install\ 中启动 GemFire 定位器 apache-geode\定位器... ................................... C:\geode\gemfire-assembly\build\install\apache-geode\locato 中的定位器 r 在 klund-e6420.vmware.com[10334] 上作为定位器当前在线。 进程号:1800 正常运行时间:16 秒 GemFire 版本:1.0.0-incubating-SNAPSHOT Java版本:1.8.0_45 日志文件:C:\geode\gemfire-assembly\build\install\apache-geode\locator \定位器.log JVM 参数:-Dgemfire.enable-cluster-configuration=true -Dgemfire.load-cluste r-configuration-from-dir=false -Dgemfire.launcher.registerSignalHandlers=true -D java.awt.headless=真-Dsun.rmi.dgc.server.gcInterval=9223372036854775806 类路径:C:\geode\gemfire-assembly\build\install\apache-geode\lib\g emfire-core-1.0.0-incubating-SNAPSHOT.jar;C:\geode\gemfire-assembly\bu ild\install\apache-geode\lib\gemfire-core-dependencies.jar 成功连接到:[host=klund-e6420.vmware.com, port=1099] 集群配置服务已启动并正在运行。 gfsh>列出成员 姓名 | ID -------- | ------------------------------------------ 定位器 | klund-e6420(定位器:1800:定位器):1987 gfsh>启动服务器--名称=服务器 在 C:\geode\gemfire-assembly\build\install\a 中启动 GemFire 服务器 补丁geode\服务器... ………… C:\geode\gemfire-assembly\build\install\apache-geode\server 中的服务器 在 klund-e6420.vmware.com[40404] 上,因为服务器当前在线。 进程 ID:5412 正常运行时间:4 秒 GemFire 版本:1.0.0-incubating-SNAPSHOT Java版本:1.8.0_45 日志文件:C:\geode\gemfire-assembly\build\install\apache-geode\server\ 服务器日志 JVM 参数:-Dgemfire.default.locators=10.118.33.206[10334] -Dgemfire.use-clu ster-configuration=true -XX:OnOutOfMemoryError=taskkill /F /PID %p -Dgemfire.lau ncher.registerSignalHandlers=真-Djava.awt.headless=真-Dsun.rmi.dgc.server。 gcInterval=9223372036854775806 类路径:C:\geode\gemfire-assembly\build\install\apache-geode\lib\g emfire-core-1.0.0-incubating-SNAPSHOT.jar;C:\geode\gemfire-assembly\bu ild\install\apache-geode\lib\gemfire-core-dependencies.jar gfsh>创建区域 --name=region --type=REPLICATE 会员 |地位 ------ | ---------------------------------- 服务器 |在“服务器”上创建的区域“/区域” gfsh>列出成员 姓名 | ID -------- | ------------------------------------------ 定位器 | klund-e6420(定位器:1800:定位器):1987 服务器 | klund-e6420(服务器:5412):65511 gfsh>列出区域 地区列表 --------------- 地区 gfsh>

    在我启动定位器后,我输入了“list members”,这表明 GFSH 自动连接到我刚刚启动的定位器。然后在同一个 GFSH 窗口中,我继续启动服务器。

    如果您想使用单独的 GFSH 窗口,您可以,但您需要在其他窗口中使用 connect 命令。

    【讨论】:

    • 我需要使用单独的窗口,因为在“start locator --name=locator”之后我没有得到我的提示。我所看到的只是“在 .................... 中启动 GemFire 定位器” 。”
    • 这是一个在 GemFire 8.2 和 Apache Geode 中修复的错误。 GFSH 使用已启动进程的 stdout/stderr,但对 BufferedReader.readLine() 的调用将在 Windows 上阻塞,直到进程离开。我们将其更改为非阻塞。在 GemFire 8.2 或 Geode 中尝试,您会看到它正确返回到提示符。
    • 这个问题最近解决了吗,因为我在上周三做了一个 github.com/apache/incubator-geode 的 git 克隆?
    • 我正在使用gfsh>start locator --name=locator1.. 提示没有回来...我在日志文件中也看不到任何进一步的移动。
    【解决方案2】:

    gfsh 启动时,您必须使用connect 命令将其指向正在运行的定位器,以便您可以创建区域等。以下是示例:

    gfsh>connect --locator=localhost[10334]
    

    【讨论】:

    【解决方案3】:

    在 gfsh 中“列出成员”时的输出是什么。 gfsh>connect --locator=localhost[10334] 列出成员

    定位器和服务器是否在同一主机上?

    【讨论】:

    • "list members":我只看到定位器。定位器和服务器确实在同一台主机上运行
    猜你喜欢
    • 2022-12-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-13
    • 2019-06-08
    • 2018-07-11
    • 2015-05-29
    • 1970-01-01
    相关资源
    最近更新 更多