单个服务器的 Aerospike 心跳配置,错误 "Unable to find any suitable network device for node ID"

Aerospike heartbeat configuration for single server, error "Unable to find any suitable network device for node ID"

我想 运行 Aerospike 服务器处于单服务器模式。 现在我有这个配置:

service {
    paxos-single-replica-limit 1 # Number of nodes where the replica count is automatically reduced to 1.
    service-threads 4
    transaction-queues 4
    transaction-threads-per-queue 4
    proto-fd-max 15000
}

logging {
    console {
        context any info
    }
}

network {
    service {
        address 127.0.0.1
        port 3000
    }

    heartbeat {
        mode multicast
        multicast-group 239.1.99.222
        port 9918

        # To use unicast-mesh heartbeats, remove the 3 lines above, and see
        # aerospike_mesh.conf for alternative.

        interval 150
        timeout 10
    }

    fabric {
        port 3001
    }

    info {
        port 3003
    }
}

namespace test {
    replication-factor 1
    memory-size 20M
    default-ttl 1d # 30 days, use 0 to never expire/evict.

    storage-engine memory
}

当我尝试启动服务器时,日志中出现错误:

"Unable to find any suitable network device for node ID"

我不希望服务器可用于 Internet。 如何实现并解决问题?

节点 ID 是使用主机上接口的 MAC id 生成的。

https://github.com/aerospike/aerospike-server/blob/master/cf/src/socket.c#L2470

如果您没有 aerospike 知道的任何默认接口名称,那么您可能会收到此错误。

要解决此问题,您可以指定接口名称。

http://www.aerospike.com/docs/operations/troubleshoot/startup#problem-with-network-interface

为避免在 Internet 上暴露您的 aerospike 节点,您可以将其仅绑定到本地主机或仅绑定到私有接口,或者使用其他网络 tools/devices 以避免暴露服务器端口,例如防火墙或 ACL。避免在互联网上暴露 aerospike 的最佳方法是确保托管 aerospike 的服务器不暴露在互联网上。如果那不可行,则仅使用防火墙限制您的 aerospike 端口访问您的 aerospike 客户端 IP。此外,您可以使用企业版中提供的数据库凭据。

http://www.aerospike.com/docs/guide/security.html