Vertx:为什么没有聚集的Verticle?

Vertx: Why is there no clustered verticle?

我正在弄乱我的两个 Verticle,我想在集群模式下启动它们。

下面是我的两个verticles的启动方法:

第一个垂直:

public static void main(String[] args) {
    VertxOptions options = new VertxOptions();

    options.setClustered(true);
    options.setClusterManager(new HazelcastClusterManager());

    Vertx.clusteredVertx(options, res -> {
        Vertx vertx = res.result();
        vertx.deployVerticle(new WalzenSchnittBlMock());

    });

}

第二个垂直:

public void start() {
    VertxOptions options = new VertxOptions();

    Vertx.clusteredVertx(options, res -> {
        vertx = res.result();
        vertx.deployVerticle(serviceVerticle, this::completeRegister);
    });
}

这两个 Verticle 驻留在不同的机器上,但它们并不 "see" 彼此,尽管它们处于集群模式中......有什么问题......我错过了什么吗?

我找到了解决方案:

我有两台机器,每台机器都有四个网卡 - vertx 似乎选错了一个。所以我不得不设置 vertx 应该使用的 IP 地址。结果看起来像 Ipadress 是 jar 文件的参数:

VertxOptions options = new VertxOptions();

    Config config = new Config();
    NetworkConfig networkConfig = config.getNetworkConfig();

    networkConfig.getInterfaces().setEnabled(true).addInterface(args[0]);
    options.setClusterManager(new HazelcastClusterManager(config));
    options.setClustered(true);
    options.setClusterHost(args[0]);

    Vertx.clusteredVertx(options, res -> {
        Vertx vertx = res.result();
        vertx.deployVerticle(new Receiver());

    });