核心概念
Module:
Categories:
节点是硬件资源的抽象,它可以是裸机、虚拟机、容器或者是 k8s pods:只要装着操作系统,可以使用 CPU/内存/磁盘/网络 资源就行。
在 Pigsty 中存在不同类型的节点,它们的区别主要在于安装了不同的模块
- 普通节点:被 Pigsty 所管理的普通节点
- ADMIN节点:使用 Ansible 发出管理指令的节点
- INFRA节点:安装
INFRA
模块的节点 - PGSQL节点:安装
PGSQL
模块的节点 - 安装了其他模块的节点……
在单机安装时,当前节点会被同时视作为管理节点、基础设施节点、PGSQL 节点,当然,它也是一个普通的节点。
普通节点
你可以使用 Pigsty 管理节点,并在其上安装模块。node.yml
剧本将调整节点至所需状态。以下服务默认会被添加到所有节点:
组件 | 端口 | 描述 | 状态 |
---|---|---|---|
Node Exporter | 9100 | 节点监控指标导出器 | 默认启用 |
HAProxy Admin | 9101 | HAProxy 管理页面 | 默认启用 |
Promtail | 9080 | 日志收集代理 | 默认启用 |
Docker Daemon | 9323 | 启用容器支持 | 按需启用 |
Keepalived | - | 负责管理主机集群 L2 VIP | 按需启用 |
Keepalived Exporter | 9650 | 负责监控 Keepalived 状态 | 按需启用 |
此外,您可以为节点选装 Docker 与 Keepalived(及其监控 keepalived exporter),这两个组件默认不启用。
ADMIN节点
在一套 Pigsty 部署中会有且只有一个管理节点,由 admin_ip
指定。在单机安装的配置过程中,它会被被设置为该机器的首要IP地址。
该节点将具有对所有其他节点的 ssh/sudo
访问权限:管理节点的安全至关重要,请确保它的访问受到严格控制。
通常管理节点与基础设施节点(infra节点)重合。如果有多个基础设施节点,管理节点通常是所有 infra 节点中的第一个,其他的作为管理节点的备份。
INFRA节点
一套 Pigsty 部署可能有一个或多个 基础设施节点(INFRA节点),在大型生产环境中可能会有 2 ~ 3 个。
配置清单中的 infra
分组列出并指定了哪些节点是INFRA节点,这些节点会安装 INFRA 模块(DNS、Nginx、Prometheus、Grafana 等…)。
管理节点通常是是INFRA节点分组中的第一台,其他INFRA节点可以被用作"备用"的管理节点。
组件 | 端口 | 域名 | 描述 |
---|---|---|---|
Nginx | 80 | h.pigsty |
Web服务门户(也用作yum/atp仓库) |
AlertManager | 9093 | a.pigsty |
告警聚合分发 |
Prometheus | 9090 | p.pigsty |
时间序列数据库(收存监控指标) |
Grafana | 3000 | g.pigsty |
可视化平台 |
Loki | 3100 | - | 日志收集服务器 |
PushGateway | 9091 | - | 接受一次性的任务指标 |
BlackboxExporter | 9115 | - | 黑盒监控探测 |
DNSMASQ | 53 | - | DNS 服务器 |
Chronyd | 123 | - | NTP 时间服务器 |
PostgreSQL | 5432 | - | Pigsty CMDB 和默认数据库 |
Ansible | - | - | 运行剧本 |
PGSQL节点
安装了 PGSQL 模块的节点被称为 PGSQL 节点。节点和 PostgreSQL 实例是1:1部署的。
在这种情况下,PGSQL节点可以从相应的 PostgreSQL 实例上借用身份:node_id_from_pg
参数会控制这一点。
组件 | 端口 | 描述 | 状态 |
---|---|---|---|
Postgres | 5432 | PostgreSQL数据库 | 默认启用 |
Pgbouncer | 6432 | Pgbouncer 连接池服务 | 默认启用 |
Patroni | 8008 | Patroni 高可用组件 | 默认启用 |
Haproxy Primary | 5433 | 主连接池:读/写服务 | 默认启用 |
Haproxy Replica | 5434 | 副本连接池:只读服务 | 默认启用 |
Haproxy Default | 5436 | 主直连服务 | 默认启用 |
Haproxy Offline | 5438 | 离线直连:离线读服务 | 默认启用 |
Haproxy service |
543x | PostgreSQL 定制服务 | 按需定制 |
Haproxy Admin | 9101 | 监控指标和流量管理 | 默认启用 |
PG Exporter | 9630 | PG 监控指标导出器 | 默认启用 |
PGBouncer Exporter | 9631 | PGBouncer 监控指标导出器 | 默认启用 |
Node Exporter | 9100 | 节点监控指标导出器 | 默认启用 |
Promtail | 9080 | 收集数据库组件与主机日志 | 默认启用 |
vip-manager | - | 将 VIP 绑定到主节点 | 按需启用 |
Docker Daemon | 9323 | Docker 守护进程 | 按需启用 |
keepalived | - | 为整个集群绑定 L2 VIP | 按需启用 |
Keepalived Exporter | 9650 | Keepalived 指标导出器 | 按需启用 |