首页
产品
CLup:PostgreSQL高可用集群平台 CMiner: PostgreSQL中的CDC CData高性能数据库云一体机 CBackup数据库备份恢复云平台 CPDA高性能双子星数据库机 CSYun超融合虚拟机产品
解决方案
数据库专业技术服务全栈式PostgreSQL解决方案Oracle分布式存储化数据库云
文章
客户及伙伴
中启开源
关于我们
公司简介 联系我们
中启开源
修改标题
往前插入
往后插入
删除

安装clup-server

1. 使用安装包进行安装

您可以在下面的中启乘数科技官方Gitee仓库中获取最新版本的安装包:

https://gitee.com/csudata/clup-community/releases

在CLup管理模块的机器上需要安csumdb模块和clup模块,这两个模块的安装包的文件名称类似如下:

把安装包拷贝到主机上的任意一个目录下,执行安装:

  1. bash clup5.0.3.el7.x86_64.bin

上面的命令会调用yum自动安装一些依赖包,如果你在内网环境,无法用yum安装软件,可以加一个-i的参数,即此时不按照这些依赖包:

  1. bash clup5.0.3.el7.x86_64.bin -i

后续手工安装这些依赖包:

  1. yum install -y libicu psmisc

这个安装包中实际上是包含一tar压缩包文件,可以用下面的命令把此安装文件中的压缩包解压出来:

  1. bash clup5.0.3.el7.x86_64.bin -z

把压缩包从安装包中解压出来的这个功能,通常是用不到的,主要为一些特殊情况下使用。

此安装包产生以下目录:

其中/opt/clup 为链接文件指向“/opt/clupX.Y.Z”目录,为方便运行命令,可以把/opt/clup/bin目录加入PATH环境变量中,如在.bash_profile文件中添加:

  1. PATH=$PATH:/opt/clup/bin
  2. export PATH

安装csumdbX.Y.Z.el7.x86_64.bin:

  1. bash csumdb4.0.0.el7.x86_64.bin

此安装程序会,自动建一个名称未csumdb得用户和组,效果如下:

  1. groupadd -g 570 csumdb
  2. useradd -u 570 -g 570 -d /opt/csumdb -m -s /bin/bash csumdb

同时会产生以下目录:

/opt/csumdb目录包含一个独立的PostgreSQL程序以及一个独立可以马上启动的一个数据库实例。

这个csumdb是保存我们CLup程序的配置的一个元数据库,通常启动CLup主程序时,会自动启动这个数据库。

我们也可以手动启动这个数据库:

  1. su - csumdb
  2. pg_ctl start

运行psql clup登陆此数据库后会看到如下用户:

  1. csumdb=> \du
  2. List of roles
  3. Role name | Attributes | Member of
  4. -----------+------------------------------------------------------------+-----------
  5. csuapp | | {}
  6. csumdb | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
  7. 有如下数据库:
  8. csumdb=> \l
  9. List of databases
  10. Name | Owner | Encoding | Collate | Ctype | Access privileges
  11. -----------+--------+----------+-------------+-------------+-------------------
  12. csumdb | csuapp | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
  13. postgres | csumdb | UTF8 | en_US.UTF-8 | en_US.UTF-8 |
  14. template0 | csumdb | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/csumdb +
  15. | | | | | csumdb=CTc/csumdb
  16. template1 | csumdb | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/csumdb +
  17. | | | | | csumdb=CTc/csumdb
  18. (4 rows)

cLup-server第一次启动时会自动在此数据库建立相应的表和一些存储过程。

2. clup-server的配置

clup-server的配置文件为/opt/clup/conf/clup.conf,内容如下:

  1. #格式为 key = value
  2. # ++++++++++++++++++++++++++++++++ 网络 ++++++++++++++++++++++++++++++++
  3. # 网络地址(即IP地址与掩码做and位运算后的值),本cluster软件将运行在此网络中,如果主机有多个IP地址,则使用这个网络内的IP地址做为通信的IP
  4. #network=192.168.56.0
  5. network=10.197.160.0
  6. # 设置用于检查是否是自己变成了孤岛的检查IP,可以为逗号分隔的多个ip,如果这些IP能ping通,说明不是自己不是孤岛,注意最多设置三个IP,多余的被忽略
  7. #probe_island_ip=192.168.56.1,192.168.0.1
  8. probe_island_ip=10.197.160.1
  9. # ++++++++++++++++++++++++++++++++ 容灾三节点CLup配置 ++++++++++++++++++++++++++++++++
  10. # 如果在3台机器上安装CLup做集群,则需要做下面的设置
  11. # clup_host_list = 192.168.56.50,192.168.56.51,192.168.56.52
  12. # ++++++++++++++++++++++++++++++++ RPC连接 ++++++++++++++++++++++++++++++++
  13. #agent与服务器之间通信的密码
  14. internal_rpc_pass = clup_pass_pwd
  15. # 如果是集群模式,要求所有的CLup的server_rpc_port都相等
  16. server_rpc_port = 4242
  17. agent_rpc_port = 4243
  18. # websocket的端口
  19. server_ws_port = 4244
  20. agent_ws_port = 4245
  21. agent_ws_token = cdbmgr
  22. # ++++++++++++++++++++++++++++++++ WEB页面 ++++++++++++++++++++++++++++++++
  23. # 当把http_auth设置为0时,用admin用户登录,输入任何密码都可以登录,当忘记密码时的就可以使用解决方法
  24. http_auth = 1
  25. # WEB界面无操作时的过期时间
  26. # session_expired_secs = 600
  27. # 前端管理界面web监听端口
  28. #http_port = 8080
  29. http_port = 8090
  30. # 如果处于安全考虑,禁止使用webterm,可以把这个参数设置为1
  31. disable_webterm = 0
  32. # ++++++++++++++++++++++++++++++++ CLup数据库连接 ++++++++++++++++++++++++++++++++
  33. # 数据库连接配置
  34. db_host = 127.0.0.1
  35. db_port = 3500
  36. db_user = clupapp
  37. db_pass = clupMgr232
  38. db_name = clup
  39. # 当配置了强制reset机器的命令时,执行完此命令之后,是否检查命令的返回值,如果设置为1,则不管命令执行成功还是失败,都认为成功继续进行HA切换。
  40. # 如果设置为0,则如果reset命令执行失败,则HA切换失败
  41. ignore_reset_cmd_return_code = 0
  42. # psql_cmd的路径:
  43. psql_cmd=/opt/clupmdb/pgsql-12/bin/psql
  44. # ++++++++++++++++++++++++++++++++ 性能采集数据库连接 ++++++++++++++++++++++++++++++++
  45. #collect_db_host = 127.0.0.1
  46. #collect_db_port = 3600
  47. #collect_db_user = clupapp
  48. #collect_db_pass = clupMgr232
  49. #collect_db_name = clup

配置项说明如下:

3. 注册服务

安装程序会自动启动CLup主程序了,同时也会自动把CLup注册成系统服务,以便于开机之后,就能自启动CLup。

我们还可以执行下面的命令把clup服务模块注册为服务:

  1. /opt/clup/bin/clupserver reg_service

执行的过程如下:

  1. [root@CLup0 ~]# /opt/clup/bin/clupserver reg_service
  2. 2022-05-11 07:42:35,843 INFO CLup v2.0.0 Copyright (c) 2018 HangZhou CSTech.Ltd. All rights reserved.
  3. 2022-05-11 07:42:35,843 INFO Start loading configuration ...
  4. 2022-05-11 07:42:35,843 INFO Complete configuration loading.
  5. register service sucessfully.

这通常是在安装程序出错的时候,才需要使用此命令。

4. 启动服务

后续在维护过程中,如果CLup主程序停运行了,我们就可以通过下面的命令启动CLup主程序了:

  1. systemctl start clup

目前只支持注册成systemd类型的的系统服务,Redhat7.X和
CentOS7.X都支持systemd的服务,而Redhat6.X和CentOS6.X不支持systemd的系统服务。

如果无法注册成systemd类型的系统服务,我们可以手工启动CLup的主程序,如下所示:

  1. /opt/clup/bin/clupserver start

实际的运行效果为:

  1. [root@CLup0 ~]# /opt/clup/bin/clupserver start
  2. 2023-05-11 01:42:26,564 INFO CLup v5.0.0 Copyright (c) 2018-2023 CSUDATA.COM All rights reserved.
  3. 2023-05-11 01:42:26,565 INFO Start loading configuration ...
  4. 2025-05-11 01:42:26,566 INFO Complete configuration loading.

运行上面的命令之后,CLup主程序会在后台运行,可以用/opt/clup/bin/clupserver status查看主程序的状态,如下所示:

  1. [root@CLup0 ~]# /opt/clup/bin/clupserver status
  2. 2023-05-11 01:43:09,653 INFO CLup v3.0.0 Copyright (c) 2018-2023 CSUDATA.COM All rights reserved.
  3. 2022-05-11 01:43:09,654 INFO Start loading configuration ...
  4. 2022-05-11 01:43:09,654 INFO Complete configuration loading.Program(933) is running.

看到最后一行Program(933) is running.表明程序正在运行。

5. 查看日志

如果没有成功启动,可以查看日志文件/opt/clup/logs/clupserver.log中查看没有启动的原因。

6. 停止服务

如果注册成了服务,可以使用systemctl stop clup来停止CLup主程序,当然我们也可以使用/opt/clup/bin/clupserver stop停止CLup主程序:

  1. [root@CLup0 ~]# /opt/clup/bin/clupserver stop
  2. 2023-05-11 02:04:52,471 INFO CLup v5.0.3 Copyright (c) 2018-2023 CSUDATA.COM All rights reserved.
  3. 2023-05-11 02:04:52,471 INFO Start loading configuration ...
  4. 2023-05-11 02:04:52,471 INFO Complete configuration loading.
  5. Wait 4 second for program stopped...
  6. Wait 4 second for program stopped...
  7. Program stopped.
目录
img