如何在Arangodb中仅用2或3台机器提供HA

lmvvr0a8  于 2023-09-28  发布在  Go
关注(0)|答案(1)|浏览(80)

我正在遵循集群设置的文档https://github.com/arangodb/arangodb/blob/8f79d1c187ec18e803dd095baa0ab0f9b04d38a2/Documentation/Books/Manual/Deployment/README.md,似乎除非我们使用Mesos,DC/OS,否则集群太笨拙(需要手动二进制编译源代码)。我试着用最小的配置来设置Apache Mesos,但是最小的配置非常昂贵!!。它的费用约为每月1300美元(许多xlarge ec2示例)。所以,这是摆脱困境。
是否可以在arangodb设置中只更改配置来设置HA?所有我想要的是运行最少2台机器,复制(同步或同步)数据,并有客户端连接在负载均衡器后面。有没有可能。你有什么推荐的吗?我发现了https://www.arangodb.com/2016/12/starting-arangodb-cluster-easy-way/,但它是实验性的。不想在生产环境中使用实验性的部件。目前,我们在3个arangodb集合中托管了大约4000万个文档。每小时都有4000万份文件被分析。

0aydgbwb

0aydgbwb1#

不只是配置更改。如果你想实现高可用性,你必须在你的2个机器上设置一个集群。但让我在这里提出一个问题,你应该首先记住。
集群配置,即数据库布局、集合、分片复制等需要依赖于复制的状态机; arangodb称之为“机构”。它是通过RAFT共识协议实现的。RAFT和熟悉的复制状态机在概念上要求奇数个示例或机器。所以你可以很好地在你的2个机器上安装arangodb,3个代理,其中2个必须以某种方式重合才能在一个机器上运行,但它有点像删除了任意机器故障的额外安全网。你的2机盒将继续服务数据和foxx应用程序,只要它是与单一代理,这失败的盒子。如果另一个发生故障,系统将停止运行,直到其他2个代理返回。话虽如此,这是你如何在两台机器上做到这一点:
1.重新设计你的收藏与分片的想法。
1.备份数据库。
1.设置新群集。
1.从1开始实施设计。
1.将数据和应用程序恢复到群集中。
步骤3是您最感兴趣的步骤。您将需要3个代理、2个协调器和2个数据库服务器的配置文件。如果你想移动到3个盒子,你显然会相应地增加数据库服务器和协调器的数量。配置文件将指明7项服务的专用数据库目录;一台机器上4个,另一台机器上3个。
您需要在 Boot 时启动一台机器上的所有4个服务和另一台机器上的3个服务。有关配置文件的详细信息,请查看集群arangodb的社区slack通道。

相关问题