timescaladb时序数据库高可用docker镜像使用

timescaladb时序数据库高可用docker镜像使用

timescaladb时序数据库高可用,基于bitnami/postgresql-repmgr docker镜像制作,实现数据同步和故障自动转移主备切换。

使用示例

参考,附docker compose配置例。

yml 复制代码
pg-0:
    image: wjy2020/timescaledb-repmgr:pg14.15-ts2.17.2
    container_name: "pg0"
    restart: always
    ports:
      - 5432:5432
    volumes:
       # 以下三个挂载必须
       # 挂载数据目录
       - /xxx/pg-data:/bitnami/postgresql
       # 在挂载了数据目录的基础上,将自定义配置文件挂载进去
       - /xxx/pg-data/conf/conf.d/pg_custom.conf:/bitnami/postgresql/conf/conf.d/pg_custom.conf
       - /xxx/pg-log:/opt/bitnami/postgresql/logs
    environment:
       # pg数据库密码
       - POSTGRESQL_PASSWORD=postgres
       # repmgr复制用的用户密码
       - REPMGR_PASSWORD=repmgr
       # 涉及网络的均填写物理机ip
       - REPMGR_PRIMARY_HOST=192.168.89.131
       - REPMGR_PARTNER_NODES=192.168.89.131,192.168.89.133:5432
       # 注意名称不能纯字母数字,要带短划线-等符号
       - REPMGR_NODE_NAME=pg-0
       - REPMGR_NODE_NETWORK_NAME=192.168.89.131

postgresql数据库配置说明

原生bitnami/postgresql-repmgr docker镜像支持添加自定义配置文件,自动合并参数。配置位于容器内的/bitnami/postgresql/postgresql.conf文件,并指定include_dir = 'conf.d'

因此在挂载了数据目录的基础上,将自定义配置文件挂载进去,创建pg_custom.conf文件,配置示例如下

txt 复制代码
## 该配置项必须,添加timescaledb时序数据库扩展
shared_preload_libraries = 'repmgr,timescaledb'

## 其他pg参数按需配置和调整

repmgr使用说明

镜像environment配置参考
原生repmgr使用手册
docker exec进入容器后,默认使用root用户,使用repmgr命令需要先su postgres切换用户。

故障转移模式

environment配置项REPMGR_FAILOVER值

  • automatic 发生故障时自动切换主从。默认
  • manual 手动切换
相关推荐
吴声子夜歌19 分钟前
Docker入门与实战——常见问题总结
运维·docker·容器
DBA_G43 分钟前
GBase 8a MPP集群个人电脑安装环境浅析
数据库
小林ixn43 分钟前
别再 MySQL + Milvus 双写了:PostgreSQL + pgvector 一张表搞定 AI 长期记忆
数据库·postgresql·agent
深盾科技_Virbox1 小时前
换机或重装后软件许可怎么恢复:先核对哪四项
java·服务器·数据库
知行产研1 小时前
亚太工程机械市场:中国制造“换道超车“,价值重心从“卖铁“转向“卖系统“
数据库·制造
云贝贝贝1 小时前
白天稳如狗半夜就抖:OceanBase 合并转储把读写延迟顶了上去
数据库·sql·oceanbase
ss2731 小时前
AI时代首先数据库-PostgreSQL实战笔记 | 24 PostgreSQL WAL日志与崩溃恢复原理
数据库·笔记·postgresql
JavaPub-rodert1 小时前
王仕宇分享:Oxigraph 是什么?用 Rust + RocksDB 搭一个轻量 RDF/SPARQL 知识图谱数据库
数据库·rust·知识图谱
ycydynq1 小时前
django利用不涉及数据库form自定义表单 表单元素验证
数据库·django·sqlite
木白CPP1 小时前
Persistence subsystem 笔记
数据库·笔记