您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何使安装在docker上不同aws实例上的Hazelcast节点彼此交互?

如何使安装在docker上不同aws实例上的Hazelcast节点彼此交互?

您需要使用--net=host选项运行hazelcast docker映像。我测试了由hazelcast(https://hub.docker.com/r/hazelcast/hazelcast/)发布的Docker镜像,版本3.5.4,在AWS EC2上有两个实例。我的Docker版本是Docker version 1.9.1, build a34a1d5ec2上使用的ami Ubuntu Server 14.04 LTS (HVM), SSD Volume Type - ami-fce3c696,这是我的hazelcast.xml

<?xml version="1.0" encoding="UTF-8"?>
<hazelcast xsi:schemaLocation="http://www.hazelcast.com/schema/config hazelcast-config-3.5.xsd"
           xmlns="http://www.hazelcast.com/schema/config"
           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <group>
        <name>dev</name>
        <password>dev-pass</password>
    </group>
    <management-center enabled="false">http://localhost:8080/mancenter</management-center>
    <network>
        <port auto-increment="true" port-count="100">5701</port>
        <outbound-ports>
            <!--
            Allowed port range when connecting to other nodes.
            0 or * means use system provided port.
            -->
            <ports>0</ports>
        </outbound-ports>
        <join>
            <multicast enabled="false">
                <multicast-group>224.2.2.3</multicast-group>
                <multicast-port>54327</multicast-port>
            </multicast>
            <tcp-ip enabled="false">
                <interface>127.0.0.1</interface>
                <member-list>
                    <member>127.0.0.1</member>
                </member-list>
            </tcp-ip>
            <aws enabled="true">
                <access-key>your-acces-key</access-key>
                <secret-key>your-secret-key</secret-key>
            </aws>
        </join>
        <public-address>private-ip-address-of-ec2-instance</public-address>
    </network>
    <properties>
       <property name="hazelcast.local.localAddress">private-ip-address-of-ec2-instance</property>
   </properties>
</hazelcast>

这是我的docker命令,用于使用自定义配置文件运行hazelcast映像: docker run --net=host -e JAVA_OPTS="-Dhazelcast.config=/configFolder/hazelcast.xml" -v ~/configFolder:/configFolder -ti hazelcast/hazelcast

如果该--net=host选项不起作用,请确保在hazelcast使用的安全组中,配置端口已作为入站端口打开。您还可以启用调试以查看有关通过ec2 Discovery发现的节点的更多详细信息。

请参阅Debugginghazelcast ec2发现部分下的部分:http ://docs.hazelcast.org/docs/latest-dev/manual/html- single/index.html#discovering-members-within- ec2-cloud

其他 2022/1/1 18:17:06 有319人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶