send_linux 发表于 2013-09-30 16:17

SequoiaDB数据库集群部署

一般在多机环境下部署数据库的集群模式是比较繁琐的,下面我来分享一个如何通过shell脚本的方式简单、方便地部署我们的集群。
首先,我们要给机器配置信任关系,这样我们就无需手动的输入密码来执行ssh和scp操作
假设我们我们有四台机器:
suse1 suse2 suse3 suse4
suse1是部署控制机,suse2 suse3 suse4是需要部署的机器
suse2 suse3 suse4分别执行
ssh-keygen -d
产生秘钥和公钥,再将各自的公钥存储在suse1的authorized_keys文件中
如果suse1也是需要部署的机器,同样也是需要建立相应的信任关系
http://blog.sequoiadb.com/wp-content/uploads/2013/09/pic2.bmp
建立好信任关系后,将四个脚本文件和SequoiaDB安装软件放在同一个文件夹,我们就可以操作部署了
我将部署的脚本分成了四部分:
控制机执行脚本、远程机执行脚本、函数库脚本和部署配置脚本
控制机执行脚本sequoiadb_deploy.sh
主要的工作是分发文件,将数据库软件、远程执行脚本、函数库脚本和配置脚本分发到远程机器的
再通知远程的机器执行远程文件
http://blog.sequoiadb.com/wp-content/uploads/2013/09/pic1.bmp
远程机执行脚本remote_deploy.sh
主要工作
卸载旧版本的SequoiaDB数据库,安装新版本的SequoiaDB数据库,配置SequoiaDB引擎启动文件
启动本机的SequoiaDB引擎
针对部署方案,将磁盘mount到指定的目录,以备之后各个数据节点的数据存放
对系统的配置进行修改
包括
   1            允许产生core文件,并且产生的core文件不做大小限制
   2            不限制数据库进程非配的内存大小
   3            不限制数据库进程所允许寻址的文件大小
   4            不限制数据库所允许的最大resident set大小
   5            不限制数据库进程所允许最大虚拟内存寻址空间
函数库脚本deploy_function.sh
编写了整个部署过程中需要的所有方法,这样做的目的除了让部署的脚本看起来更简洁,也方便部署方案的灵活多变
   1 cleanENV                                              卸载SequoiaDB数据库和清理环境
   2 installSoftware                               安装SequoiaDB数据库和拷贝引擎的配置文件
   3 write_coord_conf                        修改引擎的配置文件
   4 start_deploy                                     启动SequoiaDB数据库引擎
   5 deploy_sequoiadb_env             部署数据库集群模式,包括启动catalog和datanode
   6 cpToMachine                                    scp拷贝函数,方便调用
   7 writeSYSFile                                    修改系统的内核参数
部署配置脚本common.sh
在部署过程中,可以灵活的根据部署方案做出相应的改变
INSTALL_DIR                                          控制机的部署文件所在路径(将四个脚本文件和SequoiaDB安装软件放在同一目录)
SOFTWARE_FILE_DIR                     部署机器临时存放文件路径
SDB_INSTALL_DIR                              SequoiaDB安装路径(不建议修改)
DATABASE_DIR                                    各个节点数据、信息、日志存放路径
INSTALL_SOFTWARE_FILE            SequoiaDB安装软件的名字(注意:不需要填写路径)
SDB_CMD                                                 SequoiaDB客户端路径
GROUP_LIST                                       建立数据节点的列表
HOST?                                                   部署的主机名(hostname)
dataNodeBasePort                        数据节点的开始端口号,如果建立多个,即在此基础上+10
DISKLIST                                                硬盘列表
代码下载链接:http://pan.baidu.com/share/link?shareid=2301605038&uk=1763139216

SequoiaDB下载地址:
Sequoiadb-1.3 for IBM Power Linux 64 Installer 202.60MB
Sequoiadb-1.3 for Linux x86_64 Installer 201.72MB
SequoiaDB Demo VMware 虚机镜像(只能体验功能,不能测试性能和可扩展性)
SequoiaDB教程:SequoiaDB信息中心

页: [1]
查看完整版本: SequoiaDB数据库集群部署