SequoiaDB分布式数据库权威指南
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

3.1.5 Docker模式部署

Docker是一个开源的应用容器引擎,允许开发者将应用及依赖包打包到一个可移植的容器中,然后发布到任意一种流行的Linux机器上。不同容器之间不会有任何接口,完全采用沙箱机制。Docker也支持虚拟化,能利用LXC(Linux Container)来实现类似虚拟机(VM)的功能,以通过节省硬件资源为用户提供更多计算资源。

SequoiaDB提供了Docker镜像,可用来快速部署集群,以及进行开发和测试工作。下面讲解如何在Linux系统中安装Docker,并通过拉取镜像进行SequoiaDB的部署,同时也将展示如何在部署后的环境中进行MySQL实例的增查改删操作。

1.集群配置

如表3-7所示,我们将演示在5个容器中部署多节点、高可用的SequoiaDB集群。集群包含协调节点与编目节点各1个,3个三副本数据节点,以及1个MySQL实例节点。

表3-7 SequoiaDB的集群配置

2.在Linux Docker环境中部署SequoiaDB

SequoiaDB在Linux Docker环境中的部署,可参考如下步骤。

(1)下载镜像并上传至docker服务器:

(2)对sequoiadb_docker_image.gz进行解压:

(3)恢复镜像sequoiadb.tar与sequoiasql-mysql.tar:

(4)启动4个SequoiaDB容器:

(5)查看4个容器的容器ID:

(6)查看4个容器对应的IP地址:

(7)部署SequoiaDB集群。根据集群规划及各容器的IP地址,在对应参数处填入地址与端口号。建议存储空间在30GB以上:

(8)启动一个MySQL实例容器,并查看容器的ID:

(9)查看容器的IP地址:

(10)将MySQL实例注册到协调节点:

(11)进入MySQL容器:

(12)查看MySQL实例的状态:

(13)进入coord_catalog容器,查看SequoiaDB存储引擎节点列。

首先查看SequoiaDB容器的名称:

然后进入coord_catalog容器,查看编目节点和协调节点:

再切换为sdbamdin用户,默认用户密码为sdbadmin:

接着查看编目节点和协调节点列表:

最后退出容器:

3.数据库对接开发

具体操作步骤如下。

(1)进入MySQL容器:

如果未启动MySQL,则需要先启动:

(2)登录到MySQL Shell:

(3)创建新数据库company,并切换到company:

(4)在company数据库中创建数据表employee:

(5)在表employee中插入如下数据:

(6)查询employee表中的数据:

(7)退出MySQL容器:

(8)进入coord_catalog容器并进入SequoiaDB Shell交互式界面,使用JavaScript连接协调节点并获取数据库连接:

(9)使用insert()向SequoiaDB集合中写入数据记录:

(10)使用find()从集合中查询数据记录:

(11)使用update()对集合中的数据记录进行修改:

(12)使用find()从集合中查询数据记录,确认数据记录是否已被修改:

(13)使用remove()从集合中删除数据记录:

(14)使用find()从集合中查询数据记录,确认数据记录是否已被删除:

从本节3项任务的实现步骤可以看出,使用基于Docker的SequoiaDB镜像,可快速创建一个数据库集群,并执行SequoiaDB操作。