用户界面
安装完成后,您在当前节点上将安装有四个模块:
PGSQL、INFRA、NODE 和 ETCD。
| ID | NODE | PGSQL | INFRA | ETCD |
|---|---|---|---|---|
| 1 | 10.10.10.10 | pg-meta-1 | infra-1 | etcd-1 |
其中,INFRA 模块通过浏览器提供了一个图形化管理界面,您可以直接通过这台节点上的 Nginx 80/443 端口访问。
如果您的服务需要面向互联网与办公网共享,我们建议您使用一个 域名,Pigsty 会自动为您签发 SSL 证书。
您可以直接通过以下 端口 访问 WebUI 服务(不推荐用于生产环境)。 或使用本地/公共 域名 通过 Nginx 门户 访问它们。
请注意,SSL 证书 需要与域名一起使用。
| 组件 | 端口 | 域名 | 备注 | 公共演示 |
|---|---|---|---|---|
| Nginx | 80/443 | h.pigsty | 门户、仓库、HAProxy 管理 | home.pigsty.io |
| Grafana | 3000 | g.pigsty | Grafana 仪表盘 | g.pgsty.com |
| Prometheus | 9058 | p.pigsty | Prometheus Web UI | p.pigsty.io |
| AlertManager | 9059 | a.pigsty | 告警管理 | a.pigsty.io |
您可以通过以下数据库用户和相应的 PGURL 访问默认端口 5432 上的默认 PostgreSQL 数据库(meta):
psql postgres://dbuser_dba:DBUser.DBA@10.10.10.10:5432/meta # DBA / 超级用户
psql postgres://dbuser_meta:DBUser.Meta@10.10.10.10:5432/meta # 业务管理员用户
psql postgres://dbuser_view:DBUser.Viewer@10.10.10.10:5432/meta # 只读查看者
PostgreSQL
个人用户开发测试使用时,可以直接使用默认超级用户和 IP:端口来访问 PostgreSQL:
数据库超级用户
默认数据库超级用户是 dbuser_dba,默认密码为 DBUser.DBA,如果修改过请使用您自己的密码。
| 属性 | 值 | 配置参数 |
|---|---|---|
| 用户名 | dbuser_dba | pg_admin_username |
| 密码 | DBUser.DBA | pg_admin_password |
命令行工具
内置的 psql CLI 已经为管理员用户(安装 Pigsty 使用的用户)配置了 .pgpass 和 .pg_service.conf
p # 别名:操作系统管理员用户 @ 当前节点
psql postgres://dbuser_dba:DBUser.DBA@10.10.10.10/postgres # 替换为您的 IP 和密码
图形客户端
您可以使用您喜欢的 GUI 工具来访问数据库,Pigsty 也提供了一些 GUI 工具的内置模板。
| 名称 | 描述 | Pigsty 支持 |
|---|---|---|
| PgAdmin | 官方 PostgreSQL 管理工具 | 内置 Docker 模板,OSS |
| Supabase Studio | 精美的第三方 PostgreSQL 管理 UI | 内置 Docker 模板,OSS |
| PgWeb | 轻量级基于 Web 的 PostgreSQL 客户端 | 内置 Docker 模板,OSS |
| Bytebase | 具有良好 GUI 的模式迁移工具 | 内置 Docker 模板,OSS |
| DataGrip / IntelliJ | 具有强大功能的专业数据库 IDE | 商业 / 社区版 |
| Navicat | 流行的商业数据库管理工具 | 商业版 |
| DBeaver | 开源通用数据库 GUI | OSS |
默认设置
您可以定义业务 数据库 和 用户。配置模板 中有一些预定义的示例供您参考。
例如,默认的 meta 配置模板预定义了一个 meta 数据库:
- 带有 Pigsty CMDB 模式(可选)
- 预装来
timescaledb,postgis,citus,pgvector四个业务扩展 - 它定义了
dbuser_meta作为具有 DDL 权限的业务管理员用户,和一个dbuser_view作为只读查看者用户。
pg-meta:
hosts:
10.10.10.10: { pg_seq: 1, pg_role: primary } # <---- 这个集群中只有一个实例,主库
vars:
pg_cluster: pg-meta # 必选参数,集群名
pg_databases: # 数据库列表
- name: meta
baseline: cmdb.sql
comment: "pigsty meta database"
schemas: [pigsty]
extensions: [ postgis, timescaledb, vector ] # 安装了三个扩展
pg_users: # 数据库用户列表
- { name: dbuser_meta ,password: DBUser.Meta ,pgbouncer: true ,roles: [dbrole_admin ] ,comment: pigsty admin user }
- { name: dbuser_view ,password: DBUser.Viewer ,pgbouncer: true ,roles: [dbrole_readonly] ,comment: read-only viewer }
pg_hba_rules: # example hba rules
- {user: dbuser_view , db: all ,addr: infra ,auth: pwd ,title: 'allow grafana dashboard access cmdb from infra nodes'}
这意味着您也可以使用这两个用户访问 meta 数据库:
psql postgres://dbuser_meta:DBUser.Meta@10.10.10.10:5432/meta
psql postgres://dbuser_view:DBUser.Viewer@10.10.10.10:5432/meta
生产环境
要在生产环境中使用高可用 PostgreSQL 集群,您需要阅读以下文档来继续:
在这种情况下,您的流量在到达数据库之前会通过 haproxy 进行分发,并由 pgbouncer 池化。

Grafana
Grafana 是监控和可观测性平台,提供可视化面板能力,默认监听 3000 端口:
- http://10.10.10.10:3000(替换为您的 IP)
| 属性 | 值 | 配置参数 |
|---|---|---|
| 用户名 | admin | grafana_admin_username |
| 密码 | pigsty | grafana_admin_password |
您可以查看我们的公共演示站点来看看它是什么样子: https://g.pgsty.com
域名访问
Pigsty 为 Web 组件提供了静态本地域名,您可以通过 Nginx 访问 http://g.pigsty 来使用 Grafana。
建议使用域名,因为您可以通过域名经由 Nginx 暴露所有服务,并为它们使用 SSL 证书。
配置客户端域名解析
客户端可以通过几种不同的办法来使用域名访问:
- 通过 DNS 服务商解析互联网域名,适用于公网可访问的系统。
- 通过配置内网 DNS 服务器解析记录实现内网域名解析。
- 修改本机的
/etc/hosts文件添加静态解析记录。
我们建议普通用户使用第三种方式,在使用浏览器访问 Web 系统的机器上,修改 /etc/hosts (需要 sudo 权限)或 C:\Windows\System32\drivers\etc\hosts(Windows)文件,添加以下的解析记录:
<your_ip_address> h.pigsty a.pigsty p.pigsty g.pigsty
这里的 IP 地址是安装 Pigsty 服务的 对外 IP 地址。
配置服务端使用的域名
服务器端域名使用 Nginx 进行配置,如果您想要替换默认的域名,在参数 infra_portal 中填入使用的域名即可。
当您使用 http://g.pigsty 访问 Grafana 监控主页时,实际上是通过 Nginx 代理访问了 Grafana 的 WebUI:
http://g.pigsty ️-> http://10.10.10.10:80 (nginx) -> http://10.10.10.10:3000 (grafana)
使用 HTTPS 访问
Pigsty 默认会自动为本地静态域名颁发自签名 SSL 证书,但您必须在浏览器中信任自签名 CA 才不会弹窗报错。
Pigsty 默认使用自动生成的自签名的 CA 证书为 Nginx 启用 SSL,如果您希望使用 HTTPS 访问这些页面,而不弹窗提示"不安全",通常有三个选择:
- 在您的浏览器或操作系统中信任 Pigsty 自签名的 CA 证书:
files/pki/ca/ca.crt - 如果您使用 Chrome,可以在提示不安全的窗口键入
thisisunsafe跳过提示 - 您可以考虑使用 Let’s Encrypt 或其他免费的 CA 证书服务,为 Pigsty Nginx 生成正式的 SSL 证书。
Pigsty 支持使用真实域名和真正的免费 SSL 证书。只需替换 infra_portal 中的 domain 条目为你的真实域名,并使用 make cert 命令即可免费申请真实证书。
