CentOS上部署Arangodb集群
环境:CentOS 7系统
三台虚拟机IP:
192.168.52.132 master
192.168.52.131 slave1
192.168.52.134 slave2
(1)关闭firewalld和selinux
所有机器上执行:
systemctl stop firewalld && systemctl disable firewalld
然后执行:
firewall-cmd –state
显示not running说明firewalld关闭成功。
所有机器执行命令:
vi /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled,设置后系统重启才能生效。
输入:sestatus
显示disabled说明关闭。
(2)安装Arangodb
在每台机器上依次输入以下三条命令:
可以去官网上查看最新版本号,替换3.4.3。执行完成后出现以下信息说明安装成功。
如果之前有安装过或者安装失败的话,再次安装前需要删除旧版本。删除旧版本命令如下,第一条命令是查看安装的版本,第二条是删除命令。
本机Ping不同外网导致第二步无法下载,解决方法如下:
注意上面命令最后的ens33有可能是eth0,按照下面红色方框修改。
修改完后还要重启网络,
尝试ping外网,
不管以上的那种安装方式,在安装过程中都没有提示密码设置。仔细看安装输出日志的话,是有这么一段的:
可以发现,默认用户为 root,同时提供了一个临时密码,以及修改 root 密码的命令:arango-secure-installation,该命令实际上是 arangod 的一个软链接,而 arangod 就是 ArangoDB 的数据库服务器命令了,可以用来启动数据库,修改密码等。
在终端输入:
arango-secure-installation
重新设置密码,只需要输入一次秘密和确认即可,不验证临时密码,很方便。以后修改密码的话还是使用 arango-secure-installation 命令即可。
(3)配置集群
在每台机器上,修改arangod.conf文件,
配置数据路径:
directory = /var/lib/arangodb3
配置日志路径:
file = /var/log/arangodb3/arangod.log
配置访问路径:
endpoint = tcp://127.0.0.1:8529
如果只在本机访问没有问题,但如果要在局域网、外网访问则还必须加上局域网、外网的访问地址:
endpoint = tcp://0.0.0.0:8529
修改完后重启一下数据库就可以在本机以外访问了。
在每台机器上,修改hosts文件,
重启系统生效。(这里的IP地址要改成你自己的)
(4)启动集群
首先在192.168.52.132机器上启动master,默认情况下,ArangoDB 以集群 cluster 方式启动,监听其它从服务的端口为 8528,IP 绑定为 0.0.0.0。这些默认配置都可以在 arangodb -h 帮助选项中得到确认。
在192.168.52.131机器上启动slave1,
在192.168.52.134机器上启动slave2,
Slave1和slave2上显示信息如下:
三台机器全部启动后,可以在master上看到如下信息:
提示可以通过在浏览器访问 http://arango-master:8529,或者使用 arangosh shell 方式访问 arangosh --server.endpoint tcp://arango-master:8529。此时集群已经正式可用。
(5)web interface访问集群
在任一台机器的浏览器上输入地址:http://192.168.52.132:8529,即可通过web interface访问集群。(192.168.52.132要改成你自己master的IP)