暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

MogDB一主一备架构部署和mogha安装、切换

原创 巧克力加糖 2023-09-28
617

Mogdb兼容性

支持以下操作系统及CPU架构组合:

Mogdb环境要求

2.1硬件环境要求

下表列出了MogDB服务器应具备的最低硬件要求。在实际产品中,硬件配置的规划需考虑数据规模及所期望的数据库响应速度。请根据实际情况进行规划。

2.2软件环境要求

如果OS检查时,出现Check_CPU_Instruction_Set为Abnormal,则需要关注cpu指令集

2.3操作系统要求

2.4 软件依赖要求

mogdb安装准备

关闭防火墙和禁用selinux

[root@localhost1 ~]# systemctl status firewalld 
firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; disabled; vendor preset: enabled)
   Active: inactive (dead)
     Docs: man:firewalld(1)
[root@localhost1 ~]# cat /etc/selinux/config |grep SELINUX
# SELINUX= can take one of these three values:
SELINUX=disabled
# SELINUXTYPE= can take one of these three values:
SELINUXTYPE=targeted

检查字符集和时区

[root@localhost2 ~]# echo $LANG
en_US.UTF-8


[root@localhost1 ~]# date
Tue Jul  4 15:51:08 CST 2023

关闭transparent hugepage

[root@localhost1 zcloud]# cat /sys/kernel/mm/transparent_hugepage/enabled
always madvise [never]

ptk安装

上传ptk包到/zcloud目录下
[root@localhost1 zcloud]# tar xf ptk_linux_arm64.tar.gz 
[root@localhost1 zcloud]# ls -l
total 226116
drwx------ 2 root root      16384 Jun  9 16:15 lost+found
-rw-r--r-- 1 root root  134460837 Jul  4 16:08 MogDB-3.0.4-openEuler-arm64.tar.gz
-rwxr-xr-x 1  501 games  54788096 Jun 28 18:39 ptk
-rw-r--r-- 1 root root   19272900 Jul  4 16:08 ptk_linux_arm64.tar.gz
-rw-r--r-- 1  501 games       237 Nov 29  2022 README.md

Python版本检查

[root@localhost1 Python-3.6.5]# python3 -V
Python 3.7.9

配置文件修改

生成密码的加密串
[root@localhost1 zcloud]# /zcloud/ptk encrypt Mogdb#123
Mogdb#123: pTk6MmU2OGU1MDI8QzxAPj0/Q1F1U25uSUVBOFlrdHV0Tzl6clNqa1Rxd2FwVWstU0VOclpCQnRIQ0RjVE0=
修改config.yaml文件
[root@localhost1 soft]# cat config.yaml
global:
    cluster_name: mogdb_cluster1
    user: omm
    group: omm
    base_dir: /zcloud/mogdb/mogdb0704
db_servers:
    - host: xx.xxx.xxx.xxx  --需要安装mogdb的主机
      db_port: 26000
      role: primary
      ssh_option:
        port: 22
        user: root
        password: 
    - host: xx.xxx.xxx.xxx  --需要安装mogdb的主机
      db_port: 26000
      role: standby
      ssh_option:
        port: 22
        user: root
        password: 


验证环境

[root@localhost1 soft]# /zcloud/ptk checkos -f config.yaml

并会在当前目录下生成一个root_fix_os.2023.0704.215812.sh文件,执行该脚本,修复问题。该脚本在两个节点上都要运行

安装mogdb

[root@localhost1 soft]# /zcloud/ptk install -f config.yaml --pkg ./MogDB-3.0.4-openEuler-arm64.tar.gz

查看主备状态

[omm@localhost1 ~]$ gs_om -t status --detail

mogha安装

mogha安装前检查

gsql和pg_ctl免密执行

[omm@localhost1 ~]$ gsql

gsql ((MogDB 3.0.4 build cc068866) compiled at 2023-03-03 18:35:11 commit 0 last mr  )

Non-SSL connection (SSL connection is recommended when requiring high-security)

Type "help" for help.

MogDB-# \q

 

[omm@zcloud-dbnode-mogdb1 ~]$ gs_ctl -D $PGDATA query

[2023-07-05 14:25:06.552][229973][][gs_ctl]: gs_ctl query ,datadir is /**/**/mogdb0704/data

 HA state:          

       local_role                     : Primary

       static_connections             : 1

       db_state                       : Normal

       detail_information             : Normal

 

 Senders info:      

       sender_pid                     : 53045

       local_role                     : Primary

       peer_role                      : Standby

       peer_state                     : Normal

       state                          : Streaming

       sender_sent_location           : 0/6AB1000

       sender_write_location          : 0/6AB1000

       sender_flush_location          : 0/6AB1000

       sender_replay_location         : 0/6AB1000

       receiver_received_location     : 0/6AB1000

       receiver_write_location        : 0/6AB1000

       receiver_flush_location        : 0/6AB1000

       receiver_replay_location       : 0/6AB1000

       sync_percent                   : 100%

       sync_state                     : Sync

       sync_priority                  : 1

       sync_most_available            : On

       channel                        : xxx.xxxx.xxx.xxx:26001-->xxx.xxxx.xxx.xxx:56504

 

 Receiver info:     

数据库安装用户omm有sudo权限

在/etc/sudoers添加(两个节点都要执行)

omm     ALL=(ALL)       NOPASSWD: ALL

安装mogha

上传mogha-2.4.11-CentOS-x86_64.tar.gz,并解压,两个节点都要运行

[omm@localhost1 mogha]$ sudo ./install.sh omm $PGDATA

修改node.conf文件

启动mogha服务

[omm@localhost1 mogha]$ sudo systemctl start mogha

备用节点启动mogha

设置开机自启动

[omm@localhost1 mogha]$ sudo systemctl enable mogha

[omm@localhost2 mogha]$ sudo systemctl enable mogha

高可用切换

在备库上执行,先查看备库的状态,在执行gs_ctl switchover -D $PGDATA

同时vip也漂移到新的primary。

最后修改时间:2023-09-28 14:03:23
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论