文档中心MogDBMogDB StackUqbar

文档:v2.0

支持的版本:

PTK方式安装

本文介绍如何使用PTK安装Uqbar数据库。

PTK (Provisioning Toolkit)是一款针对MogDB数据库开发的软件安装和运维工具,旨在帮助用户更便捷地安装部署MogDB数据库,同样也可用于安装部署Uqbar。

可执行如下命令查看PTK支持安装Uqbar的操作系统。

[root@hostname ~]# ptk candidate os
    ID    |                      OS                      | Installation package |    Deploy tested     | Fully compatibility tested
          |                                              |                      |     (OS Version)     |      (MogDB Version)
----------+----------------------------------------------+----------------------+----------------------+-----------------------------
  1007010 | CentOS Linux 7 (Core) (x86_64)               | CentOS               | 7.6.1810             | all versions
  1008010 | CentOS 8 (x86_64)                            | openEuler            | 8.0.1905             |
  1008020 | CentOS 8 (arm64)                             | openEuler            | 8.0.1905             |
  1120010 | openEuler 20 (x86_64)                        | openEuler            | 20.03                | < 5.0.0 || > 5.0.1
  1120020 | openEuler 20 (arm64)                         | openEuler            | 20.03                | < 5.0.0 || > 5.0.1
  1122010 | openEuler 22 (x86_64)                        | openEuler            | 22.03                |
  1122020 | openEuler 22 (arm64)                         | openEuler            | 22.03                |
  1210010 | Kylin V10 (x86_64)                           | kylin                | V10 (Tercel)         | all versions
  1210020 | Kylin V10 (arm64)                            | kylin                | V10 (Tercel)         | all versions
  1320010 | UOS 20 A (x86_64)                            | openEuler            | 1050a                |
  1320020 | UOS 20 A (arm64)                             | openEuler            | 1050a                |
  1420010 | UOS 20 D/E (x86_64)                          | openEuler            | 1040d/1050d/1050e    |
  1420020 | UOS 20 D/E (arm64)                           | openEuler            | 1040d/1050d          |
  1518010 | Ubuntu 18.04.6 LTS (Bionic Beaver) (x86_64)  | CentOS               | 18.04.6              |
  1518020 | Ubuntu 18.04.6 LTS (Bionic Beaver) (arm64)   | openEuler            | 18.04.6              |
  1520010 | Ubuntu 20 LTS (Focal Fossa) (x86_64)         | CentOS               | 20.04.3              |
  1520020 | Ubuntu 20 LTS (Focal Fossa) (arm64)          | openEuler            | 20.04.5              |
  1522010 | Ubuntu 22 LTS (Jammy Jellyfish) (x86_64)     | CentOS               | 22.04                |
  1522020 | Ubuntu 22 LTS (Jammy Jellyfish) (arm64)      | openEuler            | 22.04.1              |
  1607010 | Red Hat Enterprise Linux 7 (x86_64)          | CentOS               | 7.5 (Maipo)          |
  1608010 | Red Hat Enterprise Linux 8 (Ootpa) (x86_64)  | openEuler            | 8.5                  |
  1608020 | Red Hat Enterprise Linux 8.2 (Ootpa) (arm64) | openEuler            | 8.2                  |
  1609010 | Red Hat Enterprise Linux 9.0 (Plow) (x86_64) | openEuler            | 9.0                  |
  1609020 | Red Hat Enterprise Linux 9.0 (Plow) (arm64)  | openEuler            | 9.0                  |
  1702010 | EulerOS 2 (x86_64)                           | CentOS               | 2.0-SP3              |
  1702020 | EulerOS 2 (arm64)                            | openEuler            | 2.0-SP3              |
  1812010 | SLES 12SP5 (x86_64)                          | CentOS               | 12SP5                |
  1815010 | SUSE Linux Enterprise Server 15 SP4 (x86_64) | CentOS               | 15SP4                |
  1907010 | Oracle Linux 7 (x86_64)                      | CentOS               | 7.9 (Maipo)          |
  1908010 | Oracle Linux 8 (x86_64)                      | openEuler            | 8.6 (Ootpa)          |
  2008010 | Rocky Linux 8 (Green Obsidian) (x86_64)      | openEuler            | 8.5                  |
  2107010 | NeoKylin V7 (x86_64)                         | CentOS               | V7Update6            |
  2222010 | FusionOS 22 (x86_64)                         | openEuler            | 22.0.2               |
  2222020 | FusionOS 22 (arm64)                          | openEuler            | 22.0.2               |
  2310010 | Debian GNU/Linux 10 (buster) (x86_64)        | CentOS               | 10 (buster)          |
  2310020 | Debian GNU/Linux 10 (buster) (arm64)         | openEuler            | 10 (buster)          |
  2311010 | Debian GNU/Linux 11 (bullseye) (x86_64)      | CentOS               | 11 (bullseye)        |
  2311020 | Debian GNU/Linux 11 (bullseye) (arm64)       | openEuler            | 11 (bullseye)        |
  2407010 | Anolis OS Linux 7 (x86_64)                   | CentOS               | 7.9 GA (kernel:RHCK) |
  2408010 | Anolis OS 8 (x86_64)                         | openEuler            | 8.6 GA (kernel:RHCK) |
  2408020 | Anolis OS 8 (arm64)                          | openEuler            | 8.6 GA (kernel:ANCK) |

注意

  • PTK工具本身可以在多种操作系统中运行,支持Linux,macOS,Windows,但是由于 Uqbar 目前仅支持在Linux 系统中运行,因此需确保要运行Uqbar 数据库的服务器为 Linux 操作系统。
  • 需要使用PTK v0.5 或以上版本安装Uqbar,否则安装可能失败。

安装准备

有关环境要求和操作系统配置详情,请参见MogDB的环境要求操作系统配置等相关章节。

下载安装 PTK

下面介绍PTK如何快速在线安装。PTK支持在线安装和离线安装。如需了解离线安装详情,请访问安装PTK

  1. 执行以下命令安装PTK:

    curl --proto '=https' --tlsv1.2 -sSf https://cdn-mogdb.enmotech.com/ptk/install.sh | sh

    安装完成后会提示如下信息(根据运行PTK的 SHELL 类型不同,信息会有所差异)

    info: downloading ptk package
    Detected shell: bash
    Shell profile:  /root/.bashrc
    ptk has been added to PATH in /root/.bashrc
    open a new terminal or source /root/.bashrc to active it
    Installed path: /root/.ptk/bin/ptk
  2. 通过提示的 source 指令或打开一个新的终端窗口来使 PTK PATH 环境变量生效。以 bash 为例:

    source $HOME/.bashrc

通过PTK安装Uqbar

准备拓扑配置文件

PTK安装需要用户提供配置文件config.yaml,PTK支持单节点安装以及多节点安装。下面以单节点安装和一主一备节点安装为例。

单节点安装

# config.yaml
global:
    cluster_name: uqbar1
    user: omm
    group: omm
    base_dir: /opt/uqbar
db_servers:
    - host: 127.0.0.1
      db_port: 26000

如果全部使用默认值,则PTK 执行以下操作:

  • 在本机安装数据库;
  • 运行数据库的操作系统用户为omm ,用户组名称也是omm,该用户没有默认密码;
  • 数据库安装在 /opt/uqbar目录下,在该目录下会创建4个目录:app, data, log, tool,分别用于存储数据库软件、数据文件、数据库日志和数据库相关工具;
  • 数据库监听端口为26000;

主备节点安装

# config.yaml
global:
    cluster_name: uqbar_cluster1
    user: omm
    group: omm
    base_dir: /opt/uqbar
db_servers:
    - host: 192.168.0.1
      db_port: 26000
      role: primary
      ssh_option:
        port: 22
        user: root
        password: [此处填写SSH登录密码,密码需要通过 ptk encrypt 加密后填写]
    - host: 192.168.0.2
      db_port: 26000
      role: standby
      ssh_option:
        port: 22
        user: root
        password: [此处填写SSH登录密码,密码需要通过 ptk encrypt 加密后填写]

检查本机系统

ptk checkos -f config.yaml

确保输出的检查结果均为 OK 或者 Warning ,如果有 AbnormalExecuteError出现,需用户根据日志提示先修正系统参数。

如果有 Abnormal 检查项,ptk 会自动生成一个root_fix_***.sh文件,可通过 sh root_fix_***.sh 命令快速修正系统参数;如果有 ExecuteError 检查项,代表 ptk 执行失败,需要用户根据错误信息调整系统环境。

执行安装

PTK 支持自定义安装包,用户需要手工下载安装包,指定安装。例如执行以下命令,将使用当前目录下的该安装包进行数据库安装。安装过程中会提示用户输入数据库初始用户的密码,请用户自行记录并安全保存。PTK 自动完成所有安装操作后,会启动数据库实例。

ptk install -f config.yaml --pkg ./Uqbar-2.0.0-Kylin-x86_64-all.tar.gz

安装成功后,也可以通过 ptk ls 来查看安装的实例信息。

[root@hostname]# ptk ls
  cluster_name |  id  |        addr        |   user   |        data_dir        |            db_version            |     create_time     | comment
---------------+------+--------------------+----------+------------------------+----------------------------------+---------------------+----------
  uqbar1     | 6001 | xxx.xx.x.xxx:26000 | omm | /opt/uqbar/data     | Uqbar 2.0.0 (build xxxxxxxx)     | 2023-11-30T16:29:46 |

访问数据库

su - omm
gsql -r

通过PTK卸载Uqbar

卸载时,PTK会检测集群是否处于运行状态,运行中是不允许被卸载的,需先将集群停止后再进行卸载操作。

注意: 卸载是一个很严肃的行为,请操作卸载数据库集群之前,反复确认当前集群是否确实可以卸载!

数据库集群的卸载仅需在 PTK 所在的服务器上执行 ptk uninstall -n CLUSTER_NAME 指令。

执行卸载时需指定要卸载的集群名称,可以通过 ptk ls 来查看集群名称。

在卸载中,PTK 会和用户确认卸载的内容,以确认要删除的集群拓扑信息,确认是否要连带删除系统用户,以及确认是否要连带删除数据库数据。

请在回答每一个问题时,确认你的回答,避免由于误操作导致不可恢复的数据丢失!

在 PTK 执行数据库卸载操作时,如果用户指定了删除数据目录,PTK 仅会删除数据目录,不会删除数据目录所在的父目录,需用户手动清理父目录

相关页面

有关PTK工具详细使用手册,请访问关于PTK

Copyright © 2011-2024 www.enmotech.com All rights reserved.