之前在CSDN 上观看了腾讯大数据开放日对于国产Nosql数据库SequoiaDB 的介绍,很感兴趣,前些天得空,自己也安装尝试了一下,昨天在论坛遇到了其他爱好者对于SequoiaDB安装配置的问题,今天就一步步地详细图解一下安装过程。
一.环境说明
二.环境配置
依照SequoiaDB的官网(http://www.sequoiadb.com/)的信息中心给出的文档检查数据库安装运行的各种条件:硬件条件,操作系统等。
接着按照官方给出的软件条件,配置主机名和IP的映射关系:
sudo vi /etc/hostname
配置主机名,为了避免不必要的麻烦,我们这里按照文档设置成sdbserver1。
Sudo vi /etc/hosts
配置各个主机名和IP的映射关系,因为我们只有一台主机,所以只需添加sdbserver1 和本机IP的映射关系即可。
到这里必要的环境设置配置完了。
三.下载安装
首先,我们从SequoiaDB的官网下载对应版本的最新安装包。我下载的是最新的1.6 sp2版本的Linux X86版本的。 解压缩的到run包:
sudo ./sequoiadb-1.6_sp2-1inux_x86_64-installer.run–mode text
安装数据库,输入1选择英文版本,一路Enter
接受条款,选择安装目录,创建用户密码,设置集群端口,继续完成安装。这里除了用户为了简短我设置成了admin用户外,其他都使用了默认设置。
这样安装就完成了。
四.单机集群模式的配置与启动
为了全面的体验SequoiaDB 的各种功能,高可用部署的多节点集群模式是必要的,因为我只有一台物理机,所以通过改变端口的方式尝试配置了单机环境下的集群模式,这也是比较容易出错和疑惑的地方。
这张图显示了我们将要配置的集群模式架构,三组协调、编目、主数据节点共同组成了一个集群。
使用su admin 切换到我们刚刚在安装数据库时添加的数据库管理用户(默认是用户是sdbadmin)。
步骤一:检查SequoiaDB的服务状态
在每台数据库服务器上检查sequoiadb配置服务状态:service sdbcm status
确认系统提示“ sdbcm is running ”表示服务正在运行,否则请执行如下命令重新配置服务程序:service sdbcm start
步骤二:启动协调节点
确认完成后开始启动第一个协调节点。协调节点的作用是在各个服务器之间进行通讯。
mkdir -p /opt/sequoiadb/conf/local/11810
创建协调节点配置文件的目录。其中11810是选择的协调节点的服务端口,如果被占用,可根据需要配置。
3.拷贝协调节点样例配置文件
cp /opt/sequoiadb/conf/samples/sdb.conf.coord/opt/sequoiadb/conf/local/11810/sdb.conf
将SequoiaDB 提供的协调节点的配置文件模板拷贝到刚刚创建的第一个协调节点配置目录下
vi /opt/sequoiadb/conf/local/11810/sdb.conf
对模板配置进行调整,需要调整的地方是:
# database path
dbpath=/opt/sequoiadb/database/coord
该参数为数据库放置路径,可根据需要修改,这里我选择保留使用默认的路径。
5.创建数据文件存放路径
mkdir -p /opt/sequoiadb/database/coord
路径为上一步骤配置的路径
6.启动协调节点进程
/opt/sequoiadb/bin/sdbstart -c /opt/sequoiadb/conf/local/11810/
步骤三:通过命令配置和启动编目节点
1.启动了协调节点后我们就可以通过SequoiaDB提供的Shell控制台来对数据库进行操作了
/opt/sequoiadb/bin/sdb
启动shell控制台,这个控制台支持javascript命令
2.连接到协调节点
在shell 命令中输入:
>var db = new Sdb("localhost",11810)
这条命令创建了一个新的db变量通过11810端口引用了本地的数据库对象,其中11810为协调节点端口号
3.为本地的数据库创建一个编目节点组
编目节点是用来储存每个服务器所存放的数据的编目信息的节点。
db.createCataRG("sdbserver1",11800,"/opt/sequoiadb/database/cata/11800")
sdbserver1 是我们一开始配置的本机的主机名;
11800 是我们指定的编目节点服务端口,之所以使用11800是因为通常一个SequoiaDB 的节点需要占用5个端口,即配置端口为11810的协调节点需要占用11810到11814的五个端口,这个在后面的节点配置步骤中可以有一个更清楚的理解。所以为了简便安全,每个节点之间最好间隔10个端口。
/opt/sequoiadb/database/cata/11800:为编目节点的数据文件存放路径;
4.给刚刚创建的编目节点组添加另外两个编目节点
>var cataRG =db.getRG("SYSCatalogGroup");
>var node1 =cataRG.createNode("sdbserver1",11830,"/opt/sequoiadb/database/cata/11830")
>var node2 =cataRG.createNode("sdbserver1",11840,"/opt/sequoiadb/database/cata/11840")
另两个编目节点的端口分别为11830和11840,主机名依然是本机名。
5.启动编目节点组
>node1.start()
>node2.start()
步骤四:通过命令配置和启动数据节点
数据节点是用来储存数据的节点,在同一个数据节点组的所有数据节点里的数据保持一致,互为备份。
1.创建数据节点组
>var dataRG =db.createRG("datagroup")
2.添加数据节点
>dataRG.createNode("sdbserver1",11850,"/opt/sequoiadb/database/data/11850")
三个数据节点的配置主机名依然是本机名,端口分别为11850,11870
3.启动数据节点组
>dataRG.start()
4.退出SequoiaDB shell控制台
>quit
步骤五:添加最后两个协调节点
至此,已经为数据库添加了一个协调节点,三个编目节点和三个数据节点。接下来再依照步骤一和二添加最后两个协调节点。
1.创建数据节点的配置目录
mkdir -p /opt/sequoiadb/conf/local/11880
mkdir -p /opt/sequoiadb/conf/local/11890
继续在刚刚使用的端口号后递增10,使用11880、11890做为第二三个协调节点的服务端口
2.拷贝协调节点样例配置文件
cp/opt/sequoiadb/conf/samples/sdb.conf.coord/opt/sequoiadb/conf/local/11880/sdb.conf
cp/opt/sequoiadb/conf/samples/sdb.conf.coord/opt/sequoiadb/conf/local/11890/sdb.conf
vi /opt/sequoiadb/conf/local/11880/sdb.conf
将默认路径和第一个协调节点改为不同的路径,这里我将所有的coord目录改为了coor2,将五个服务端口都设置为11880之后的连续五个端口。
以同样的方式修改第三个协调节点11890 的配置信息,目录为/opt/sequoiadb/database/coord3
4.创建数据文件存放路径
mkdir -p /opt/sequoiadb/database/coord2
mkdir -p /opt/sequoiadb/database/coord3
5.启动协调节点进程
/opt/sequoiadb/bin/sdbstart -c/opt/sequoiadb/conf/local/11880/
/opt/sequoiadb/bin/sdbstart -c/opt/sequoiadb/conf/local/11890/
五.搞定收工!
使用ps –elf | grep sequoiadb 命令检查所有9个节点是否都正常运行
如果是,配置完成~可以在单个物理机内全面体验测试一下SequoiaDB 的全面功能了~