neo4j 3.2.2-1在找不到可用的硬件地址之后不断重启

时间:2017-07-18 03:27:28

标签: neo4j netty lxc

我试图让neo4j在Centos 7.2的最小安装上运行,neo4j通过yum安装。

然而它似乎开始启动,但失败,关闭,然后以连续循环重新启动:

2017-07-18 03:06:34.731+0000 INFO [o.n.k.i.DatabaseHealth] Database health set to OK

017-07-18 03:06:35.140+0000 WARN [io.netty.util.internal.MacAddressUtil] Failed to find a usable hardware address from the network interfaces; using random bytes: be:ac:2d:4b:9d:99:28:41

2017-07-18 03:06:35.226+0000 INFO [o.n.k.i.t.l.c.CheckPointerImpl] Check Pointing triggered by database shutdown [1]:  Starting check pointing...
...
2017-07-18 03:06:35.335+0000 INFO [o.n.k.i.f.GraphDatabaseFacadeFactory] Shutdown started

ifconfig告诉我:

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.240  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::f010:beff:fea8:314d  prefixlen 64  scopeid 0x20<link>
        ether f2:10:be:a8:31:4d  txqueuelen 1000  (Ethernet)
        RX packets 195385  bytes 316555671 (301.8 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 105586  bytes 7261323 (6.9 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1  (Local Loopback)
        RX packets 7  bytes 391 (391.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 7  bytes 391 (391.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

我已经尝试将dbms.connectors.default_listen_address设置为0.0.0.0,即静态IP,并将其注释掉。

我觉得我可能错过了一个依赖或netty用来获取MAC地址的东西,但netty网站声称不需要依赖。

最后一点信息是这是一个lxc容器,但我发誓我过去在lxc中运行过neo4j版本。

此外,这被标记为警告,但它似乎正在停止启动。

任何想法都将不胜感激!

2 个答案:

答案 0 :(得分:0)

经过一番工作,我发现了原因。 MAC地址位被证明是一个红色的鲱鱼。

实际原因是:

neo4j-admin set-initial-password mypass

任何时候我都以这种方式设置初始密码,neo4j无法正常启动。 不幸的是,我确实需要找出一种设置初始密码的方法,因为这是自动部署的一部分。

答案 1 :(得分:0)

最终解决方案是不使用neo4j-admin并使用web api设置密码。

此链接显示了使用curl的一个很好的示例: http://430.io/change-neo4j-default-password-in-command-line/

curl -H "Content-Type: application/json" -X POST -d '{"password":"NEW PASSWORD"}' -u neo4j:neo4j http://localhost:7474/user/neo4j/password