跳转到主要内容

文档 v2.7.0 版本已不再积极维护,你当前浏览的是一份归档快照。 最新文档请参阅 最新版本

分类: Admin

  • SchemaSPY:PG模式可视化

    发布于 软件镜像模板

    AdminSOFTWARE

    使用以下docker生成数据库模式报表,以CMDB为例: docker run -v /www/schema/pg-meta/meta/pigsty:/output andrewjones/schemaspy-postgres:latest -host 10.10.10.10 -port 5432 -u dbuser_dba -p DBUser.DBA -db meta -s pigsty 然后访问 http://h.pigsty/schema/pg-meta/meta/pigsty 即可访问 …

    使用以下docker生成数据库模式报表,以CMDB为例: docker run -v /www/schema/pg-meta/meta/pigsty:/output andrewjones/schemaspy-postgres:latest -host 10.10.10.10 -port 5432 -u dbuser_dba -p DBUser.DBA -db meta -s pigsty 然后访问 http://h.pigsty/schema/pg-meta/meta/pigsty 即可访问 …

  • ByteBase:PG模式迁移工具

    发布于 软件镜像模板

    AdminSOFTWARE

    ByteBase ByteBase是一个进行数据库模式变更的工具,以下命令将在元节点 8887 端口启动一个ByteBase。 mkdir -p /data/bytebase/data; docker run --init --name bytebase --restart always --detach --publish 8887:8887 --volume /data/bytebase/data:/var/opt/bytebase \ bytebase/bytebase:latest …

    ByteBase ByteBase是一个进行数据库模式变更的工具,以下命令将在元节点 8887 端口启动一个ByteBase。 mkdir -p /data/bytebase/data; docker run --init --name bytebase --restart always --detach --publish 8887:8887 --volume /data/bytebase/data:/var/opt/bytebase \ bytebase/bytebase:latest …

  • PGAdmin4:用GUI管理PG数据库

    发布于 软件镜像模板

    AdminSOFTWARE

    PgAdmin4 是一个实用的PostgreSQL管理工具,执行以下命令可在管理节点拉起 pgadmin服务: cd ~/pigsty/app/pgadmin ; docker compose up -d 默认分配 8885 端口,使用域名: http://adm.pigsty 访问, Demo:http://adm.pigsty.cc。 默认用户名:[email protected],密码:pigsty。 Demo 公开Demo地址:http://adm.pigsty.cc 默认用户名与密码: …

    PgAdmin4 是一个实用的PostgreSQL管理工具,执行以下命令可在管理节点拉起 pgadmin服务: cd ~/pigsty/app/pgadmin ; docker compose up -d 默认分配 8885 端口,使用域名: http://adm.pigsty 访问, Demo:http://adm.pigsty.cc。 默认用户名:[email protected],密码:pigsty。 Demo 公开Demo地址:http://adm.pigsty.cc 默认用户名与密码: …

  • 任务与教程

    发布于 任务与教程

    AdminSectionPIGSTY

  • Docker:启用容器支持与配置

    发布于 任务与教程

    AdminDOCKER

    Pigsty 提供了 DOCKER 模块,但默认并不安装。您可以使用 docker.yml 剧本在指定节点上安装并启用 Docker。 ./docker.yml -l <ip|group|cls> # 在指定的节点、分组、集群上安装并启用 Docker 如何建配置代理服务器? 本文不会介绍如何“翻墙”,而是假设你已经有了一个可用的 HTTP(s) 代理服务器,应该如何配置,让 Docker 可以通过代理服务器,访问 docker hub 或 quay.io 等镜像站点: 你的代理服务器软件应该会 …

    Pigsty 提供了 DOCKER 模块,但默认并不安装。您可以使用 docker.yml 剧本在指定节点上安装并启用 Docker。 ./docker.yml -l <ip|group|cls> # 在指定的节点、分组、集群上安装并启用 Docker 如何建配置代理服务器? 本文不会介绍如何“翻墙”,而是假设你已经有了一个可用的 HTTP(s) 代理服务器,应该如何配置,让 Docker 可以通过代理服务器,访问 docker hub 或 quay.io 等镜像站点: 你的代理服务器软件应该会 …

  • Nginx:向外代理暴露Web服务

    发布于 任务与教程

    AdminINFRA

    Pigsty 在 INFRA节点上默认会安装 Nginx 作为 Web 服务代理。(单机安装时,本机默认也是一个 INFRA节点 ) Nginx 是 Pigsty 所有 WebUI 类服务的访问入口,默认使用管理节点 80/443 端口。 Pigsty 提供了一个全局配置变量 infra_portal,用于配置 Nginx 的代理规则,以及对应的上游服务。 如果您直接通过端口访问 Nginx,默认访问的是 h.pigsty,即 Pigsty 文件系统首页。(/www/ 目录)。 因为 Nginx …

    Pigsty 在 INFRA节点上默认会安装 Nginx 作为 Web 服务代理。(单机安装时,本机默认也是一个 INFRA节点 ) Nginx 是 Pigsty 所有 WebUI 类服务的访问入口,默认使用管理节点 80/443 端口。 Pigsty 提供了一个全局配置变量 infra_portal,用于配置 Nginx 的代理规则,以及对应的上游服务。 如果您直接通过端口访问 Nginx,默认访问的是 h.pigsty,即 Pigsty 文件系统首页。(/www/ 目录)。 因为 Nginx …

  • PGWeb:从浏览器访问PostgreSQL

    发布于 软件镜像模板

    AdminSOFTWARE

    PGWeb客户端工具 PGWeb是一款基于浏览器的PG客户端工具,使用以下命令,在元节点上拉起PGWEB服务,默认为主机8886端口。可使用域名: http://cli.pigsty 访问,公开Demo:http://cli.pigsty.cc。 # docker stop pgweb; docker rm pgweb docker run --init --name pgweb --restart always --detach --publish 8886:8081 …

    PGWeb客户端工具 PGWeb是一款基于浏览器的PG客户端工具,使用以下命令,在元节点上拉起PGWEB服务,默认为主机8886端口。可使用域名: http://cli.pigsty 访问,公开Demo:http://cli.pigsty.cc。 # docker stop pgweb; docker rm pgweb docker run --init --name pgweb --restart always --detach --publish 8886:8081 …

  • 使用 PostgreSQL 作为 Grafana 后端数据库

    发布于 任务与教程

    AdminPGSQLINFRA

    Grafana 默认使用 SQLite 存储元数据。Pigsty v2.7 可以为 Grafana 置备 PostgreSQL 用户与数据库,随后再手工将 Grafana 指向该数据库。 v2.7 范围 grafana_database 与 grafana_pgurl 参数在 v2.7.0 中已经废弃。该版本的 grafana.ini.j2 不会管理 PostgreSQL 后端连接串,因此重新执行 grafana_config 任务可能 覆盖手工修改;请将此变更纳入您自己的配置管理。 置备数据库 …

    Grafana 默认使用 SQLite 存储元数据。Pigsty v2.7 可以为 Grafana 置备 PostgreSQL 用户与数据库,随后再手工将 Grafana 指向该数据库。 v2.7 范围 grafana_database 与 grafana_pgurl 参数在 v2.7.0 中已经废弃。该版本的 grafana.ini.j2 不会管理 PostgreSQL 后端连接串,因此重新执行 grafana_config 任务可能 覆盖手工修改;请将此变更纳入您自己的配置管理。 置备数据库 …

  • 服务接入

    发布于 概念

    AdminPGSQLService

    单机用户 “服务” 的概念是给生产环境用的,个人用户/单机集群可以不折腾,直接拿实例名/IP地址访问数据库。 例如,Pigsty 默认的单节点 pg-meta.meta 数据库,就可以直接用下面三个不同的用户连接上去。 psql postgres://dbuser_dba:[email protected]/meta # 直接用 DBA 超级用户连上去 psql postgres://dbuser_meta:[email protected]/meta # 用默认的业务管理 …

    单机用户 “服务” 的概念是给生产环境用的,个人用户/单机集群可以不折腾,直接拿实例名/IP地址访问数据库。 例如,Pigsty 默认的单节点 pg-meta.meta 数据库,就可以直接用下面三个不同的用户连接上去。 psql postgres://dbuser_dba:[email protected]/meta # 直接用 DBA 超级用户连上去 psql postgres://dbuser_meta:[email protected]/meta # 用默认的业务管理 …

  • 置备机器

    发布于 入门

    SetupAdminPIGSTYProvision

    Pigsty 在节点上运行,这些节点可以是裸机或虚拟机。您可以手工置备它们,或使用 terraform 和 vagrant 这样的工具在云端或本地进行自动配置。 沙箱环境 Pigsty 带有一个演示沙箱,所谓沙箱,就是专门用来演示/测试的环境:IP地址和其他标识符都预先固定配置好,便于复现各种演示用例。 默认的沙箱环境由4个节点组成,配置文件请参考 demo.yml。 沙箱的 4 个节点有着固定的 IP 地址 …

    Pigsty 在节点上运行,这些节点可以是裸机或虚拟机。您可以手工置备它们,或使用 terraform 和 vagrant 这样的工具在云端或本地进行自动配置。 沙箱环境 Pigsty 带有一个演示沙箱,所谓沙箱,就是专门用来演示/测试的环境:IP地址和其他标识符都预先固定配置好,便于复现各种演示用例。 默认的沙箱环境由4个节点组成,配置文件请参考 demo.yml。 沙箱的 4 个节点有着固定的 IP 地址 …

  • 时间点恢复

    发布于 概念

    AdminPGSQLPITR

    概览 您可以将集群恢复回滚至过去任意时刻,避免软件缺陷与人为失误导致的数据损失。 Pigsty 的 PostgreSQL 集群带有自动配置的时间点恢复(PITR)方案,基于备份组件 pgBackRest 与可选的对象存储仓库 MinIO 提供。 高可用方案 可以解决硬件故障,但却对软件缺陷与人为失误导致的数据删除/覆盖写入/删库等问题却无能为力。 对于这种情况,Pigsty 提供了开箱即用的 时间点恢复(Point in Time Recovery, PITR)能力,无需额外配置即默认启用。 …

    概览 您可以将集群恢复回滚至过去任意时刻,避免软件缺陷与人为失误导致的数据损失。 Pigsty 的 PostgreSQL 集群带有自动配置的时间点恢复(PITR)方案,基于备份组件 pgBackRest 与可选的对象存储仓库 MinIO 提供。 高可用方案 可以解决硬件故障,但却对软件缺陷与人为失误导致的数据删除/覆盖写入/删库等问题却无能为力。 对于这种情况,Pigsty 提供了开箱即用的 时间点恢复(Point in Time Recovery, PITR)能力,无需额外配置即默认启用。 …

  • 迁移

    发布于 模块:PGSQL

    AdminPGSQLMigration

    Pigsty 内置了一个剧本 pgsql-migration.yml ,基于逻辑复制来实现在线数据库迁移。 通过预生成的自动化脚本,应用停机时间可以缩减到几秒内。但请注意,逻辑复制需要 PostgreSQL 10 以上的版本才能工作。 当然如果您有充足的停机时间预算,那么总是可以使用 pg_dump | psql 的方式进行停机迁移。 定义迁移任务 想要使用Pigsty提供的在线迁移剧本,您需要创建一个定义文件,来描述迁移任务的细节。 请查看任务定义文件示例作为参考: …

    Pigsty 内置了一个剧本 pgsql-migration.yml ,基于逻辑复制来实现在线数据库迁移。 通过预生成的自动化脚本,应用停机时间可以缩减到几秒内。但请注意,逻辑复制需要 PostgreSQL 10 以上的版本才能工作。 当然如果您有充足的停机时间预算,那么总是可以使用 pg_dump | psql 的方式进行停机迁移。 定义迁移任务 想要使用Pigsty提供的在线迁移剧本,您需要创建一个定义文件,来描述迁移任务的细节。 请查看任务定义文件示例作为参考: …

  • 备份与PITR

    发布于 模块:PGSQL

    AdminPGSQLPITR

    Pigsty 使用 pgBackRest 进行 PITR 备份和恢复。 对于硬件故障来说,基于物理复制的高可用故障切换可能会是最佳选择。而对于数据损坏(无论是机器还是人为错误),时间点恢复(PITR)则更为合适:它提供了对最坏情况的兜底。 备份 使用以下命令备份 PostgreSQL 数据库集群: # stanza 是 pgbackrest 在同一个存储库中区别不同的集群的标识,默认 stanza 名称 = {{ pg_cluster }} pgbackrest …

    Pigsty 使用 pgBackRest 进行 PITR 备份和恢复。 对于硬件故障来说,基于物理复制的高可用故障切换可能会是最佳选择。而对于数据损坏(无论是机器还是人为错误),时间点恢复(PITR)则更为合适:它提供了对最坏情况的兜底。 备份 使用以下命令备份 PostgreSQL 数据库集群: # stanza 是 pgbackrest 在同一个存储库中区别不同的集群的标识,默认 stanza 名称 = {{ pg_cluster }} pgbackrest …

  • 管理预案

    发布于 模块:PGSQL

    AdminPGSQLSOP

    本文整理了 Pigsty 中常用的 PostgreSQL 管理预案,用于维护生产环境中的数据库集群。 这里是一些常见 PostgreSQL 管理任务的 SOP 预案: 案例1: 创建集群 案例2: 创建用户 案例3: 创建数据库 案例4: 重载服务 案例5: 重载HBA 案例6: 配置集群 案例7: 添加实例 案例8: 移除实例 案例9: 下线集群 案例10: 主动切换 案例11: 备份集群 案例12: 恢复集群 案例13: 添加软件 案例14: 安装扩展 案例15: 小版本升级 案例16: …

    本文整理了 Pigsty 中常用的 PostgreSQL 管理预案,用于维护生产环境中的数据库集群。 这里是一些常见 PostgreSQL 管理任务的 SOP 预案: 案例1: 创建集群 案例2: 创建用户 案例3: 创建数据库 案例4: 重载服务 案例5: 重载HBA 案例6: 配置集群 案例7: 添加实例 案例8: 移除实例 案例9: 下线集群 案例10: 主动切换 案例11: 备份集群 案例12: 恢复集群 案例13: 添加软件 案例14: 安装扩展 案例15: 小版本升级 案例16: …

  • 使用 VIP-Manager 为 PostgreSQL 集群配置二层 VIP

    发布于 任务与教程

    AdminPGSQL

    您可以在 PostgreSQL 集群上绑定一个可选的 L2 VIP —— 前提条件是:集群中的所有节点都在一个二层网络中。 这个 L2 VIP 强制使用 Master - Backup 模式,Master 始终指向在数据库集群主库实例所在的节点。 这个 VIP 由 VIP-Manager 组件管理,它会从 DCS (etcd) 中直接读取由 Patroni 写入的 Leader Key,从而判断自己是否是 Master。 启用VIP 在 PostgreSQL 集群上定义 …

    您可以在 PostgreSQL 集群上绑定一个可选的 L2 VIP —— 前提条件是:集群中的所有节点都在一个二层网络中。 这个 L2 VIP 强制使用 Master - Backup 模式,Master 始终指向在数据库集群主库实例所在的节点。 这个 VIP 由 VIP-Manager 组件管理,它会从 DCS (etcd) 中直接读取由 Patroni 写入的 Leader Key,从而判断自己是否是 Master。 启用VIP 在 PostgreSQL 集群上定义 …

  • 使用 Keepalived 为 Pigsty 节点集群配置二层 VIP

    发布于 任务与教程

    AdminNODE

    您可以在节点集群上绑定一个可选的 L2 VIP —— 前提条件是:集群中的所有节点都在一个二层网络中。 在节点集群(任何一个 Ansible Group,包括数据库集群定义都可以视作一个节点集群)上,启用 vip_enabled 参数,即可在节点集群上启用 Keepalived ,绑定一个2层 VIP。 proxy: hosts: 10.10.10.29: { nodename: proxy-1 } # 您可以显式指定初始的 VIP 角色:MASTER / BACKUP 10.10.10.30: …

    您可以在节点集群上绑定一个可选的 L2 VIP —— 前提条件是:集群中的所有节点都在一个二层网络中。 在节点集群(任何一个 Ansible Group,包括数据库集群定义都可以视作一个节点集群)上,启用 vip_enabled 参数,即可在节点集群上启用 Keepalived ,绑定一个2层 VIP。 proxy: hosts: 10.10.10.29: { nodename: proxy-1 } # 您可以显式指定初始的 VIP 角色:MASTER / BACKUP 10.10.10.30: …

  • 资源规划

    发布于 入门

    SetupAdminPIGSTY

    Pigsty v2.7 的资源规划从选择部署拓扑开始,并据此准备主机、操作系统、网络与管理员访问权限。 规划清单 从资源置备与配置示例中选择单节点、仅监控或高可用拓扑。 根据资源准备与兼容性矩阵核对 CPU 架构、操作系统版本、存储与网络要求。 安装前预留稳定的节点地址、主机名和所需端口,并准备具备免密 SSH 与 sudo 权限的管理员账号。 在在线安装与离线安装之间做出选择,准备相应软件源或离线安装包。 执行剧本前检查配置清单与安全检查项。 集群、用户、数据库、服务与备份的准确参数仍以链接到 …

    Pigsty v2.7 的资源规划从选择部署拓扑开始,并据此准备主机、操作系统、网络与管理员访问权限。 规划清单 从资源置备与配置示例中选择单节点、仅监控或高可用拓扑。 根据资源准备与兼容性矩阵核对 CPU 架构、操作系统版本、存储与网络要求。 安装前预留稳定的节点地址、主机名和所需端口,并准备具备免密 SSH 与 sudo 权限的管理员账号。 在在线安装与离线安装之间做出选择,准备相应软件源或离线安装包。 执行剧本前检查配置清单与安全检查项。 集群、用户、数据库、服务与备份的准确参数仍以链接到 …

  • 使用 PostgreSQL 作为 Ansible 配置清单 CMDB

    发布于 任务与教程

    AdminPGSQLINFRA

    Pigsty v2.7 默认从 pigsty.yml 读取 Ansible 配置清单。该版本同时提供了 三个脚本,可以将清单载入 meta 数据库的 pigsty 模式,并让 Ansible 改用动态生成的清单。 本文严格对应 v2.7.0 标签中的 bin/inventory_load、 bin/inventory_cmdb 与 bin/inventory_conf。 前置条件 默认 pg-meta 集群会通过 files/cmdb.sql 创建 CMDB 模式。请先完成 infra.yml …

    Pigsty v2.7 默认从 pigsty.yml 读取 Ansible 配置清单。该版本同时提供了 三个脚本,可以将清单载入 meta 数据库的 pigsty 模式,并让 Ansible 改用动态生成的清单。 本文严格对应 v2.7.0 标签中的 bin/inventory_load、 bin/inventory_cmdb 与 bin/inventory_conf。 前置条件 默认 pg-meta 集群会通过 files/cmdb.sql 创建 CMDB 模式。请先完成 infra.yml …

  • 准备工作

    发布于 入门

    SetupAdminPIGSTY

    与 Pigsty 部署有关的 101 入门知识。 节点准备 Pigsty 支持 Linux 内核与 x86_64/amd64 架构,适用于任意节点。 所谓节点(node),指 ssh 可达并提供裸操作系统环境的资源,例如物理机,虚拟机,或者启用了 systemd 与 sshd 的操作系统容器。 部署 Pigsty 最少需要一个节点。最低配置要求为 1C1G,推荐至少使用 2C4G 以上的机型,适用配置上不封顶,参数会自动优化适配。 作为 Demo,个人站点,或者开发环境时,可以使用单个节点。 作 …

    与 Pigsty 部署有关的 101 入门知识。 节点准备 Pigsty 支持 Linux 内核与 x86_64/amd64 架构,适用于任意节点。 所谓节点(node),指 ssh 可达并提供裸操作系统环境的资源,例如物理机,虚拟机,或者启用了 systemd 与 sshd 的操作系统容器。 部署 Pigsty 最少需要一个节点。最低配置要求为 1C1G,推荐至少使用 2C4G 以上的机型,适用配置上不封顶,参数会自动优化适配。 作为 Demo,个人站点,或者开发环境时,可以使用单个节点。 作 …

  • 兼容性

    发布于 参考

    AdminNODEOS

    概述 Pigsty 建议使用 Linux 内核,amd64 架构的节点,使用 RockyLinux 8.9,Debian 12 或 Ubuntu 22.04 操作系统。 内核架构兼容性:Linux 内核,amd64 架构(x86_64) EL发行版支持: EL7,EL8,EL9 ;(RHEL, Rocky, CentOS, Alma, Oracle, Anolis,…) Debian系发行版支持:Ubuntu 22.04 jammy,20.04 focal;Debian 12 bookworm …

    概述 Pigsty 建议使用 Linux 内核,amd64 架构的节点,使用 RockyLinux 8.9,Debian 12 或 Ubuntu 22.04 操作系统。 内核架构兼容性:Linux 内核,amd64 架构(x86_64) EL发行版支持: EL7,EL8,EL9 ;(RHEL, Rocky, CentOS, Alma, Oracle, Anolis,…) Debian系发行版支持:Ubuntu 22.04 jammy,20.04 focal;Debian 12 bookworm …