我正在尝试用docker设置OrientDB分布式配置。但我在启动第二个节点时出错了-
2015-10-09 17:14:14:066 WARNI node1444321499719->[node1444321392311]请求在本地服务器上部署数据库“testDB”.'/orientdb/databases/../backup/databases/testDB‘2015-10-09 17:14:14:117 INFO node1444321499719<-node1444321392311收到更新状态node1444321499719.testDB=SYNCHRONIZING OHazelcastPlugin 2015-10-09 17:14:119 INFO node1444321499719<-node1444321392311收到更新后的状态node1444321392311.testDB=SYNCHRONIZING OHazelcastPlugin 2015-10-09 17:14:15:935 WARNI node1444321499719移动位于’/orientdb/ database /testDB‘中的现有数据库'testDB’,并从远程节点获得一个新副本.'/orientdb/databases/../backup/databases/testDB'. 2015-10-09 17:14:14:15:936在将位于‘/ OHazelcastPlugin /testDB/testDB’中的现有数据库“testDB”移动到OHazelcastPlugin时出现了严重的node1444321499719错误尝试手动移动数据库目录,并在启动分布式插件时重试com.orientechnologies.orient.server.distributed.ODistributedException:错误,将位于‘/orientdb/testDB/testDB’中的现有数据库“testDB”移动到'/orientdb/databases/../backup/databases/testDB'.尝试手动移动数据库目录,并在com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.backupCurrentDatabase(OHazelcastPlugin.java:1007) at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.requestDatabase(OHazelcastPlugin.java:954) at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.installDatabase(OHazelcastPlugin.java:893) at com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.installNewDatabases(OHazelcastPlugin.java:1426)上重试com.orientechnologies.orient.server.hazelcast.OHazelcastPlugin.startup(OHazelcastPlugin.java:184) at com.orientechnologies.orient.server.OServer.registerPlugins(OServer.java:979) at com.orientechnologies.orient.server.OServer.activate(OServer.java:346) at com.orientechnologies.orient.server.OServerMain.main(OServerMain.java:41)
如果我在没有docker的情况下启动orientdb集群,则不会出现此错误。我也可以把它装在集装箱里
根@64f6cc1eba61 '/orientdb/databases/../backup/databases/testDB‘mv -v / '/orientdb/databases/testDB/distributed-config.json’/-v/testDB数据库/ '/orientdb/databases/testDB/distributed-config.json‘/数据库/testDB’->‘/orientdb/databases/testDB/distributed-config.json’-> '/orientdb/databases/../backup/databases/testDB/distributed-config.json‘删除’/orientdb/databases/testDB/distributed-config.json‘删除目录:'/目录数据库/testDB‘root@64f6cc1eba 61 orientdb# ls -l -l共计4-RW-r-r-。1根根455 Oct 9 11:32 distributed-config.json root @64f6cc1eba 61 orientdb#
我使用的是OrientDB版本2.1.3
发布于 2015-10-09 19:12:09
已报告并修正了:
https://github.com/orientechnologies/orientdb/issues/4891
将“distributed.backupDirectory”变量设置为特定目录,问题就会消失。
顺便说一句,在码头上运行面向对象分发是我们目前的经验:- docker还不支持多播,您可以绕过它,但这是痛苦的。但是主要的问题是:- Docker在重启时不会重用ip地址,所以容器重新启动会给它提供一个新的ip地址,这会给集群带来很大的麻烦。
我们放弃了使用,定向与码头,直到码头是固定在这两个问题(我相信它都在路线图上)。
如果你有不同的经历,我很高兴听到你的想法。
https://stackoverflow.com/questions/33044044
复制相似问题