【问题标题】:Stop inter-node communication in elasticsearch (without using firewall to block ports)在elasticsearch中停止节点间通信(不使用防火墙阻塞端口)
【发布时间】:2019-08-15 08:08:11
【问题描述】:

我希望停止弹性搜索中的节点间通信,基本上是停止监听端口 9300。 以上应该是在不使用防火墙阻止任何端口的情况下实现的。

我尝试在服务器引导程序中关闭 netty 通道,如果这样做,elasticsearch 将无法启动。

当我运行 elasticsearch 实例时,它不应该监听 9300,

但我得到以下错误, [2019-03-25T10:46:16,344][WARN][o.e.b.ElasticsearchUncaughtExceptionHandler] [node-0] 线程 [main] 中未捕获的异常 [elasticsearch] org.elasticsearch.bootstrap.StartupException:java.lang.IllegalStateException:未设置处理程序 [elasticsearch] 在 org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:163) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] 在 org.elasticsearch.bootstrap.Elasticsearch.execute(Elasticsearch.java:150) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] 在 org.elasticsearch.cli.EnvironmentAwareCommand.execute(EnvironmentAwareCommand.java:86) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] at org.elasticsearch.cli.Command.mainWithoutErrorHandling(Command.java:124) ~[elasticsearch-cli-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] at org.elasticsearch.cli.Command.main(Command.java:90) ~[elasticsearch-cli-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:115) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] at org.elasticsearch.bootstrap.Elasticsearch.main(Elasticsearch.java:92) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] 原因:java.lang.IllegalStateException:未设置处理程序 [elasticsearch] 在 io.netty.bootstrap.Bootstrap.validate(Bootstrap.java:284) ~[?:?] [elasticsearch] 在 io.netty.bootstrap.Bootstrap.connect(Bootstrap.java:113) ~[?:?] [elasticsearch] 在 org.elasticsearch.transport.netty4.Netty4Transport.createClientBootstrap(Netty4Transport.java:189) ~[?:?] [elasticsearch] 在 org.elasticsearch.transport.netty4.Netty4Transport.doStart(Netty4Transport.java:149) ~[?:?] [elasticsearch] at org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:61) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] 在 org.elasticsearch.transport.TransportService.doStart(TransportService.java:228) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] at org.elasticsearch.common.component.AbstractLifecycleComponent.start(AbstractLifecycleComponent.java:61) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] 在 org.elasticsearch.node.Node.start(Node.java:661) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] 在 org.elasticsearch.bootstrap.Bootstrap.start(Bootstrap.java:263) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] 在 org.elasticsearch.bootstrap.Bootstrap.init(Bootstrap.java:334) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT] [elasticsearch] at org.elasticsearch.bootstrap.Elasticsearch.init(Elasticsearch.java:159) ~[elasticsearch-7.0.0-SNAPSHOT.jar:7.0.0-SNAPSHOT]

【问题讨论】:

    标签: elasticsearch netty


    【解决方案1】:

    为什么不试试单节点发现? 单节点(通过将discovery.type设置为single-node进行配置);在这种情况下,节点将选择自己的主节点,并且不会与任何其他节点加入集群。这是更干净的方法

    此外,还可以规避引导检查(通过不将传输绑定到外部接口,或者通过将传输绑定到外部接口并将发现类型设置为单节点)

    【讨论】:

    【解决方案2】:

    将 node.name 设置为 0.0.0.0/0 以外的其他值

    【讨论】:

    • 这如何满足我的要求
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-03-10
    • 1970-01-01
    • 1970-01-01
    • 2019-09-11
    相关资源
    最近更新 更多