cygwin环境中配置Neo4j HA

cygwin环境中配置Neo4j HA

准备环境

Ø Windows7或xp。

Ø neo4j-enterprise-1.6-windows.zip(注意是windows企业版的)。下载地址:http://neo4j.org/download/

Ø Cygwin 1.7.1。(最好选择安装时安装ssh服务)下载地址:http://www.cygwin.com/

Ø 终端工具xshell或者ssh。

安装Neo4j HA

Cygwin安装目录定义为$CYGWIN_HOME。

解压neo4j-enterprise-1.6-windows.zip到$CYGWIN_HOME /home/

{username}/目录下三份,分别分别该文件夹名为neo4j1,neo4j2,neo4j3。称此三个安装目录分别为$NEO4J_HOME1,$NEO4J_HOME2,$NEO4J_HOME3。此过程可以参考Neo4J HighAvailability 设置向导

安装配置协调器集群(Coordinator cluster)

配置

修改以下文件:

coor.cfg

#$NEO4J_HOME1/conf/coord.cfg

server.1=localhost:2888:3888

server.2=localhost:2889:3889

server.3=localhost:2890:3890

...

clientPort=2181

#$NEO4J_HOME2/conf/coord.cfg

...

server.1=localhost:2888:3888

server.2=localhost:2889:3889

server.3=localhost:2890:3890

...

clientPort=2182

#$NEO4J_HOME2/conf/coord.cfg

...

server.1=localhost:2888:3888

server.2=localhost:2889:3889

server.3=localhost:2890:3890

...

clientPort=2183

Myid

#$NEO4J_HOME1/data/coordinator/myid

1

#$NEO4J_HOME2/data/coordinator/myid

2

#$NEO4J_HOME3/data/coordinator/myid

3

启动

Ø 启动终端

Ø ssh登陆到cygwin

Ø 分别执行

#$NEO4J_HOME1/bin/Neo4jCoordinator.batstart

#$NEO4J_HOME2/bin/Neo4jCoordinator.batstart

#$NEO4J_HOME3/bin/Neo4jCoordinator.batstart

执行结果如下图:

cygwin环境中配置Neo4j HA

每个命令执行时都没有任何日志在控制台打出,除非有异常情况(比如说在cygwin环境中需要的是Windows企业版的neo4j,而错误地使用unix版的neo4j),日志信息可以从各个neo4j安装目录下的data/log目录下查看日志文件获得。

至此,协调器集群安装启动完成。

Neo4j HA集群安装配置启动

修改以下配置文件:

neo4j.properties

#$NEO4J_HOME1/conf/neo4j.properties

ha.server_id = 1

ha.coordinators =localhost:2181,localhost:2182,localhost:2183

ha.server = localhost:6001

#$NEO4J_HOME1/conf/neo4j.properties

ha.server_id = 2

ha.coordinators =localhost:2181,localhost:2182,localhost:2183

ha.server = localhost:6001

#$NEO4J_HOME1/conf/neo4j.properties

ha.server_id = 3

ha.coordinators =localhost:2181,localhost:2182,localhost:2183

ha.server = localhost:6001

neo4j-server.properties

#$NEO4J_HOME1/conf/neo4j-server.properties

org.neo4j.server.webserver.port=7474

org.neo4j.server.database.mode=HA

#$NEO4J_HOME1/conf/neo4j-server.properties

org.neo4j.server.webserver.port=7475

org.neo4j.server.database.mode=HA

#$NEO4J_HOME1/conf/neo4j-server.properties

org.neo4j.server.webserver.port=7476

org.neo4j.server.database.mode=HA

neo4j-wrapper.properties

#$NEO4J_HOME1/conf/neo4j-wrapper.properties

wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=3637

#$NEO4J_HOME1/conf/neo4j-wrapper.properties

wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=3638

#$NEO4J_HOME1/conf/neo4j-wrapper.properties

wrapper.java.additional.4=-Dcom.sun.management.jmxremote.port=3639

启动

neo4j_home1$ ./bin/neo4j start

neo4j_home2$ ./bin/neo4j start

neo4j_home3$ ./bin/neo4j start

出现错误:

找不到口令文件: D:\ProgramFiles\glassfishv3\jdk\jre\lib\management\jmxremote.password。

问题是在windows环境下配置neo4j HA模式运行默认需要访问验证权限,在此设置不需要验证可以修改neo4j-wrapper.properties配置文件,如下:

#$NEO4J_HOME1/conf/neo4j-wrapper.properties

wrapper.java.additional.5=-Dcom.sun.management.jmxremote.authenticate=false

#$NEO4J_HOME1/conf/neo4j-wrapper.properties

wrapper.java.additional.5=-Dcom.sun.management.jmxremote.authenticate=false

#$NEO4J_HOME1/conf/neo4j-wrapper.properties

wrapper.java.additional.5=-Dcom.sun.management.jmxremote.authenticate=false

再次启动会在控制台输出以下信息:

cygwin环境中配置Neo4j HA

验证web:

可以通过访问

http://localhost:7474/webadmin/#/info/org.neo4j/High%20Availability/

http://localhost:7475/webadmin/#/info/org.neo4j/High%20Availability/

http://localhost:7476/webadmin/#/info/org.neo4j/High%20Availability/

下面是neo4j1的web验证页面信息:

cygwin环境中配置Neo4j HA

至此大功告成!