节点
您可以使用Pigsty管理更多的节点,并使用这些节点部署数据库。
纳入Pigsty管理的节点会被 调整至 配置:NODES 所描述的状态,加装节点监控与日志收集组件,您可以从监控系统中查阅节点状态与日志。被Pigsty管理的节点可以进一步用于部署各种数据库,或您自己的应用。
每个节点都有身份参数,通过在与<cluster>.vars
中的相关参数进行配置。
在Pigsty中,节点有两个重要的身份参数: 与 node_cluster,这两者将在监控系统中用作节点的 实例标识(ins
) 与 集群标识 (cls
)。 与 node_cluster 并不是必选参数,当留白或置空时, 会使用节点当前的主机名,而 node_cluster 则会使用固定的默认值:nodes
。
此外,Pigsty还会使用IP地址作为数据库节点的唯一标识, IP地址即配置清单中主机的inventory_hostname
,体现为<cluster>.hosts
对象中的key
。尽管一个节点可能有多块网卡和多个IP地址,但您必须指定一个首要IP地址作为节点唯一标识。该地址应当为内网地址,即您访问该节点上的数据库时使用那个IP地址。
该IP地址并不一定是管理节点SSH访问使用的IP地址,您可以通过 相关参数,通过SSH隧道或跳板机中转的方式间接操作管理目标节点。
在监控系统中,相关的时序监控数据标签为:
node_load1{cls="pg-meta", ins="pg-meta-1", ip="10.10.10.10", job="nodes"}
node_load1{cls="pg-test", ins="pg-test-2", ip="10.10.10.12", job="nodes"}
node_load1{cls="pg-test", ins="pg-test-3", ip="10.10.10.13", job="nodes"}
PGSQL节点是用于部署PostgreSQL集群的节点, 在标准节点上额外加装了 PGSQL 模块。
在执行默认的PostgreSQL部署时,因为Pigsty默认采用节点独占1:1部署,因此可以通过 参数,将数据库实例的身份参数(pg_cluster 与 pg_instance
)借用至节点的 与 node_cluster 身份参数上。
除了 ) 外,PGSQL节点上运行有下列服务:
以单个 和 单个 节点 构成的环境为例,架构如下图所示:
数据库集群/节点的域名依赖元节点的Nameserver进行解析 (可选)。
数据库节点软件安装需要用到元节点上的Yum Repo。
数据库集群/节点的监控指标会被元节点的Prometheus收集。
Pigsty会从元节点上发起对数据库节点的管理:
- 执行集群创建,扩缩容,实例/集群回收
- 创建业务用户、业务数据库、修改服务、HBA修改;
- 执行日志采集、垃圾清理,备份,巡检等
数据库节点的Consul会向元节点的DCS同步本地注册的服务,并代理状态读写操作。