SinoDB HDR Docker快速安装部署

1. 引言

  本文档将详细介绍在 CENTOS 7 和 8 环境下,利用 SinoDB Docker容器实现对 SinoDB HDR自动化安装与配置过程。通过本方法,用户能够省去繁琐的SinoDB HDR安装及配置步骤,从而能够迅速体验SinoDB HDR 所提供的高可用功能。以下将详细阐述操作步骤,确保用户能够轻松上手并充分享受SinoDB HDR 高可用解决方案带来的便捷与高效。
  文档说明实际环境不建议使用docker,仅限于内部测试使用。

2 创建SinoDB主备库实例

  在Docker 环境中,快速安装部署SinoDB实例的详细步骤内容,可参考SinoDB单实例Docker快速安装部署 https://forum.sinoregal.cn/t/topic/122
  在Docker 环境中,创建主备SinoDB 实例容器。

  • 创建主库实例容器:

#docker run -it --hostname sinodb --privileged --name sinodb registry.cn-hangzhou.aliyuncs.com/hejunri/sinodb:1.3

  此主库实例的容器ip为172.17.0.4,在备库实例容器执行SetupHDR.sh脚本时候需要用到此ip。

  • 创建备库实例容器

#docker run -it --hostname sinodb_hdr --privileged --name sinodb_hdr registry.cn-hangzhou.aliyuncs.com/hejunri/sinodb:1.3 /bin/bash

  创建备库Docker容器,但不创建SinoDB实例,此备库容器ip为172.17.0.6,在主库实例容器执行SetupHDR.sh脚本时候需要用到此ip。

2. 在主备库实例容器执行SetupHDR.sh

  在informix 家目录下有SetupHDR.sh 用来配置HDR的脚本。
  范例 .

# sh SetupHDR.sh primary 172.17.0.6 sinodb_hdr

  脚本的一个参数为HDR角色(primary|standby),第二参数为HDR 对端的ip,第三参数为HDR对端实例主机名。

  • 在主库实例容器上执行SetupHDR.sh

image

  • 在备库实例容器上执行SetupHDR.sh

3. 主备库hdr 状态查看

4. 数据库同步测试

在主库创建数据库、表,插入数据测试

5. 主备切换测试

  • 原主库切换成secondary

在主备库上执行onstate -g dir ,显示 state 状态值为on,角色、状态正确,说明本次手动切换主备库成功。