• repmgr+pg12构建高可用集群(1)


    1、概述

    repmgr是第二象限开源的一套流复制集群管理工具,看一下官方的介绍:

    repmgr是一个开源工具套件,用于管理PostgreSQL服务器群集中的复制和故障转移。它通过设置备用服务器,监视复制以及执行管理任务(如故障转移或手动切换操作)的工具,增强了PostgreSQL的内置热备用功能。

    repmgrde 的特点:

    分布式管理集群节点,易扩展,可在线增删集群节点;

    架构如下:

     2、部署

    主节点:

    1. 配置好相关参数
    2. 启动数据库
    3. 利用“repmgr primary register”命令实现对主节点的注册。(该注册的目的是把配置文件的一些主要参数写到元数据表中,以便repmgr系统对集群节点的识别操作等。)
    4. 启动repmgrd守护进程。

    备节点:

    1. 配置好相关参数
    2. 利用“repmgr standby clone”命令对主节点进行物理拷贝。
    3. 启动数据库
    4. 利用“repmgr standby register”命令实现对备节点的注册。
    5. 启动repmgrd守护进程。

    集群每个节点部署成功后都会启动repmgrd守护进程,该守护进程可以处理故障转移和记录监控数据;

    3、实际操作

    操作环境:

    centos7.6

    3.1.安装pg12(见前面的帖子)

    3.2.获取repmgr安装包

    https://yum.postgresql.org/12/redhat/rhel-7-x86_64/repoview/

     3.3.安装repmgr

    rpm -ivh repmgr12-5.1.0-1.rhel7.x86_64.rpm

    3.4.repmgr参数配置

    vim /etc/repmgr/12/repmgr.conf
    ##填写必须配置项
    node_id=1
    node_name=node1
    conninfo='host=192.168.101.9 port=5432 user=postgres  dbname=postgres'
    data_directory='/var/lib/pgsql/12/data'

    3.5.数据库参数配置

    vim /var/lib/pgsql/12/data/postgresql.conf
    #配置参数
    shared_preload_libraries = 'repmgr' 
    listen_addresses = '*'

    vim /var/lib/pgsql/12/data/pg_hba.conf
    #配置参数

      # IPv4 local connections:
      host all all 0.0.0.0/0 trust  #新增

    3.6.重启数据库后连接数据库创建插件(./psql -Upostgres -dpostgres)

    CREATE EXTENSION repmgr;

    3.7.注册主数据库

    [postgres@localhost bin]$ ./repmgr primary register
    INFO: connecting to primary database...
    INFO: "repmgr" extension is already installed
    NOTICE: primary node record (ID: 1) registered

    3.8.集群状态查看

    [postgres@localhost bin]$ ./repmgr cluster show
     ID | Name  | Role    | Status    | Upstream | Location | Priority | Timeline | Connection string
    ----+-------+---------+-----------+----------+----------+----------+----------+-------------------------------------------------------------
     1  | node1 | primary | * running |          | default  | 100      | 1        | host=192.168.101.9 port=5432 user=postgres  dbname=postgres

    注册备数据库在下节进行记录。。

    但行好事,莫问前程
  • 相关阅读:
    组合模式
    备忘录模式
    适配器模式
    状态模式
    观察者模式
    建造者模式
    地图染色-四色定理
    c++传递函数当作对象传递
    位向量实现集合—王晓东数据结构
    动态规划之最大连续子序列
  • 原文地址:https://www.cnblogs.com/mingfan/p/12741231.html
Copyright © 2020-2023  润新知