集群管理
本文档介绍了 MatrixDB 集群的基本运维管理,主要包含两个方面:
- 命令行运维管理:集群基本的管理操作
- 图形化运维管理:集群状态的直观监测
1 命令行运维管理
命令行基本运维管理包括启停集群、查看集群运行状态、修改集群配置等。
这些命令都是通过主节点(Master)控制的,所以必须在 Master 上执行。
1.1 启动集群
gpstart -a
命令可以启动 MatrixDB 集群。
[mxadmin@mdw ~]$ gpstart -a
20210723:16:00:36:002624 gpstart:sdw2:mxadmin-[INFO]:-Starting gpstart with args: -a
20210723:16:00:36:002624 gpstart:sdw2:mxadmin-[INFO]:-Gathering information and validating the environment...
20210723:16:00:36:002624 gpstart:sdw2:mxadmin-[INFO]:-Greenplum Binary Version: 'postgres (MatrixDB) 4.1.0-community (Greenplum Database) 7.0.0+dev.16905.gc6dbf4f14d build commit:c6dbf4f14d4452a414198fd45d507819803fffb2'
......
20210723:16:00:38:002624 gpstart:sdw2:mxadmin-[INFO]:-Database successfully started
注意!
gpstart
的详细使用方法请参考文档。
1.2 停止集群
gpstop -a
命令用来停止一个正在运行的集群。
[mxadmin@mdw ~]$ gpstop -a
20210723:16:08:41:002827 gpstop:sdw2:mxadmin-[INFO]:-Starting gpstop with args: -a
20210723:16:08:41:002827 gpstop:sdw2:mxadmin-[INFO]:-Gathering information and validating the environment...
......
20210723:16:08:43:002827 gpstop:sdw2:mxadmin-[INFO]:-Successfully shutdown 1 of 1 segment instances
20210723:16:08:43:002827 gpstop:sdw2:mxadmin-[INFO]:-Database successfully shutdown with no errors reported
用 gpstop -a
停止集群的前提是当前没有活跃连接,否则将挂起直到其他连接退出。
如果要强行杀掉用户连接并关闭集群,请使用 gpstop -a -M fast
。
1.2.1 重启集群
gpstop -ar
可以重启集群。
1.2.2 重新加载授权配置
当修改 pg_hba.conf
授权配置之后,需要调用 gpstop -u
来重新加载授权配置。
注意!
gpstop
的详细使用方法请参考文档。
1.3 查看集群状态
gpstate
可以查看集群的运行状态,包括:
- Master 和数据节点(Segment)的配置信息
- 镜像配置等
[mxadmin@mdw ~]$ gpstate
20210723:17:00:15:004109 gpstate:sdw2:mxadmin-[INFO]:-Starting gpstate with args:
......
20210723:17:00:15:004109 gpstate:sdw2:mxadmin-[INFO]:-Obtaining Segment details from master...
20210723:17:00:15:004109 gpstate:sdw2:mxadmin-[INFO]:-Gathering data from segments...
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:-Greenplum instance status summary
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:-----------------------------------------------------
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Master instance = Active
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Master standby = No master standby configured
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total segment instance count from metadata = 1
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:-----------------------------------------------------
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Primary Segment Status
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:-----------------------------------------------------
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total primary segments = 1
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total primary segment valid (at master) = 1
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total primary segment failures (at master) = 0
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number of postmaster.pid files missing = 0
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number of postmaster.pid files found = 1
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number of postmaster.pid PIDs missing = 0
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number of postmaster.pid PIDs found = 1
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number of /tmp lock files missing = 0
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number of /tmp lock files found = 1
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number postmaster processes missing = 0
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Total number postmaster processes found = 1
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:-----------------------------------------------------
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Mirror Segment Status
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:-----------------------------------------------------
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:- Mirrors not configured on this array
20210723:17:00:16:004109 gpstate:sdw2:mxadmin-[INFO]:-----------------------------------------------------
1.4 修改集群配置
gpconfig
用于查看或修改配置文件 postgresql.conf
中的配置参数。
1.4.1 查看配置
通过 gpconfig -s
加配置名可以查看配置:
[mxadmin@mdw ~]$ gpconfig -s shared_buffers
Values on all segments are consistent
GUC : shared_buffers
Master value: 1078464kB
Segment value: 1078464kB
1.4.2 修改配置
通过 gpconfig -c <配置名> -v <值>
来修改配置:
[mxadmin@mdw ~]$ gpconfig -c shared_buffers -v 128MB
20210723:17:13:35:004318 gpconfig:sdw2:mxadmin-[INFO]:-completed successfully with parameters '-c shared_buffers -v 128MB'
修改配置后要重启集群才能生效:
[mxadmin@mdw ~]$ gpstop -ar
重启后,查看配置:
[mxadmin@mdw ~]$ gpconfig -s shared_buffers
Values on all segments are consistent
GUC : shared_buffers
Master value: 128MB
Segment value: 128MB
注意!
gpconfig
的详细使用方法请参考文档。
2 图形化运维管理
了解集群运维不仅可以对集群进行基本的管理操作,更有助于清楚的知悉数据库的运行状态,如节点运行压力是否过大,实例运行是否平稳等。
为了实现更好的用户运维体验,YMatrix 提供了核心指标监控视图及数据库拓扑结构视图,周期性采集 CPU 占用率、内存占用率等指标及实例运行状态,并实时展示,使你可以用更加直观的方式观测数据库运行状态。
2.1 准备工作
首先,你需要登录图形化界面。在浏览器里输入图形化界面 MXUI 进程所在机器的 IP(默认是 Master 的 IP)、端口号:
http://<IP>:8240
2.2 集群管理
2.2.1 指标视图
成功登录之后进入“集群管理”页面,默认展示“指标视图”,包含 2 个部分:
- 集群信息:包括集群状态、数据及诶但数量及数据库版本信息。
- 指标信息:数据库连接数资源占用情况、各节点的核心指标信息,YMatrix 每隔 5s 自动收集一次指标信息并展示,包括 CPU 占用率、内存占用率、磁盘 I/O、网络 I/O、连接数等。
2.2.2 实例视图
切换至“实例视图”,各节点信息由指标切换至实例的状态及分布情况。
鼠标悬浮于任意实例,即可得到该实例的详细信息。
2.2.3 列表视图
切换至“列表视图”,列表形式展示各节点的信息如实例的状态、 DBID、端口、存储路径等。