Skip to content

This is the multi-page printable view of this section. .

Return to the regular view of this page.

Release

Pigsty release archive using complete x.y.z version numbers.

Every stable numbered Pigsty tag through v4.5.0 has its own x.y.z page, including patch releases. Each record reconciles the long-form Pigsty release article, the historical About / Release Note archive, and the corresponding GitHub release or tag, then links the exact source comparison. Planned versions remain drafts until an actual tag is published.

1 - Pigsty v1.5.1

Grafana security hotfix

Highlights

IMPORTANT: Fixed the issue where CREATE INDEX|REINDEX CONCURRENTLY in PG14.0-14.3 could corrupt index data.

Pigsty v1.5.1 upgrades the default PostgreSQL version to 14.4. Strongly recommend updating ASAP.

Software Upgrades

  • postgres upgraded to 14.4
  • haproxy upgraded to 2.6.0
  • grafana upgraded to 9.0.0
  • prometheus upgraded to 2.36.0
  • patroni upgraded to 2.1.4

Bug Fixes

  • Fixed TYPO in pgsql-migration.yml
  • Removed PID config item from HAProxy configuration
  • Removed i686 packages from default packages
  • Enabled all Systemd Redis Services by default
  • Enabled all Systemd Patroni Services by default

API Changes

  • grafana_database and grafana_pgurl marked as deprecated API, will be removed in future versions

New Applications

  • wiki.js: Build local Wikipedia with Postgres
  • FerretDB: Provide MongoDB API using Postgres

Sources

2 - Pigsty v1.5.0

Docker application support

Highlights

  • Complete Docker support: enabled by default on meta node with many out-of-the-box software templates: bytebase, pgadmin, pgweb, postgrest, minio, etc.
  • Infrastructure self-monitoring: Nginx, ETCD, Consul, Prometheus, Grafana, Loki self-monitoring
  • CMDB upgrade: compatibility improvements, supports Redis cluster/Greenplum cluster metadata, config file visualization
  • Service discovery improvements: Consul can auto-discover all monitoring targets and integrate with Prometheus
  • Better cold backup support: default scheduled backup tasks, pg_probackup backup tool, one-click delayed replica creation
  • ETCD can now be used as PostgreSQL/Patroni DCS service, as an alternative to Consul
  • Redis playbook/role improvements: now allows init and remove operations for individual Redis instances, not just entire Redis nodes

Monitoring System

Dashboards

  • CMDB Overview: visualize Pigsty CMDB Inventory
  • DCS Overview: view Consul and ETCD cluster monitoring metrics
  • Nginx Overview: view Pigsty Web access metrics and logs
  • Grafana Overview: Grafana self-monitoring
  • Prometheus Overview: Prometheus self-monitoring
  • INFRA Dashboard redesigned to reflect overall infrastructure status

Monitoring Architecture

  • Now allows Consul for service discovery (when all services are registered to Consul)
  • All Infra components now enable self-monitoring and register to Prometheus and Consul via infra_register role
  • Metrics collector pg_exporter updated to v0.5.0, new features: scale and default, allowing metric multiplication factors and default values
  • pg_bgwriter, pg_wal, pg_query, pg_db, pgbouncer_stat time-related metrics now uniformly scaled to seconds from milliseconds/microseconds
  • Related counter metrics in pg_table now have default value 0 instead of NaN
  • pg_class metrics collector removed by default, related metrics added to pg_table and pg_index collectors
  • pg_table_size metrics collector now enabled by default with 300-second cache time

Deployment

  • New optional package docker.tgz with common app images: Pgadmin, Pgweb, Postgrest, ByteBase, Kong, Minio, etc.
  • New ETCD role: automatically deploys ETCD service on DCS Server nodes and integrates with monitoring
  • pg_dcs_type specifies DCS service for PG high-availability: Consul (default), ETCD (alternative)
  • node_crontab parameter for configuring node scheduled tasks like database backups, VACUUM, statistics collection
  • New pg_checksum option: when enabled, database cluster enables data checksums (previously only crit template enabled by default)
  • New pg_delay option: when instance is Standby Cluster Leader, this parameter configures a delayed replica
  • New pg_probackup package, default role replicator now has backup-related function permissions
  • Redis deployment split into two parts: Redis node and Redis instance, redis_port parameter controls specific instances
  • Loki and Promtail now installed via fpm-built RPM packages
  • DCS3 config template now uses a 3-node pg-meta cluster with a single-node delayed replica

Software Upgrades

  • PostgreSQL upgraded to 14.3
  • Redis upgraded to 6.2.7
  • PG Exporter upgraded to 0.5.0
  • Consul upgraded to 1.12.0
  • vip-manager upgraded to v1.0.2
  • Grafana upgraded to v8.5.2
  • Loki & Promtail upgraded to v2.5.0, using fpm packaging

Bug Fixes

  • Fixed Loki and Promtail default config filename issues
  • Fixed Loki and Promtail environment variable expansion issues
  • Complete English documentation translation and revision; documentation JS resources now served locally, no internet access required

API Changes

New Parameters

  • node_data_dir: Main data mount path, created if doesn’t exist
  • node_crontab_overwrite: Overwrite /etc/crontab instead of appending
  • node_crontab: Node crontab content to append or overwrite
  • nameserver_enabled: Enable nameserver on this infra node?
  • prometheus_enabled: Enable prometheus on this infra node?
  • grafana_enabled: Enable grafana on this infra node?
  • loki_enabled: Enable loki on this infra node?
  • docker_enable: Enable docker on this infra node?
  • consul_enable: Enable consul server/agent?
  • etcd_enable: Enable etcd server/client?
  • pg_checksum: Enable pg cluster data checksums?
  • pg_delay: Application delay when backup cluster leader replays replication

Parameter Redesign

*_clean is now a boolean parameter for cleaning existing instances during init.

*_safeguard is also a boolean parameter to prevent cleaning running instances during any playbook execution.

  • pg_exists_action -> pg_clean
  • pg_disable_purge -> pg_safeguard
  • dcs_exists_action -> dcs_clean
  • dcs_disable_purge -> dcs_safeguard

Parameter Renames

  • node_ntp_config -> node_ntp_enabled
  • node_admin_setup -> node_admin_enabled
  • node_admin_pks -> node_admin_pk_list
  • node_dns_hosts -> node_etc_hosts_default
  • node_dns_hosts_extra -> node_etc_hosts
  • node_dns_server -> node_dns_method
  • node_local_repo_url -> node_repo_local_urls
  • node_packages -> node_packages_default
  • node_extra_packages -> node_packages
  • node_packages_meta -> node_packages_meta
  • node_meta_pip_install -> node_packages_meta_pip
  • node_sysctl_params -> node_tune_params
  • app_list -> nginx_indexes
  • grafana_plugin -> grafana_plugin_method
  • grafana_cache -> grafana_plugin_cache
  • grafana_plugins -> grafana_plugin_list
  • grafana_git_plugin_git -> grafana_plugin_git
  • haproxy_admin_auth_enabled -> haproxy_auth_enabled
  • pg_shared_libraries -> pg_libs
  • dcs_type -> pg_dcs_type

Sources

3 - Pigsty v1.4.1

Bug fixes & full English documentation translation

Bug fixes / Docker support / English documentation

Docker is now enabled by default on the meta node, allowing you to spin up various software.

Bug Fixes

  • Fixed Promtail & Loki configuration variable issues
  • Fixed Grafana legacy alerts
  • Disabled nameserver by default
  • Renamed pg-alias.sh for Patroni shortcuts
  • Disabled exemplars queries for all dashboards
  • Fixed Loki data directory issue
  • Changed autovacuum_freeze_max_age from 100000000 to 1000000000

Sources

4 - Pigsty v1.4.0

MatrixDB support, separated INFRA/NODES/PGSQL/REDIS modules

Architecture

  • Decoupled system into 4 major categories: INFRA, NODES, PGSQL, REDIS, making Pigsty clearer and more extensible
  • Single-node deployment = INFRA + NODES + PGSQL
  • PGSQL cluster deployment = NODES + PGSQL
  • Redis cluster deployment = NODES + REDIS
  • Other database deployment = NODES + xxx (e.g., MONGO, KAFKA…)

Accessibility

  • CDN for mainland China
  • Use bash -c "$(curl -fsSL http://get.pigsty.cc/latest)" to get latest source
  • New download script to download and extract packages

Monitoring Enhancements

  • Split monitoring into 5 categories: INFRA, NODES, REDIS, PGSQL, APP
  • Logging enabled by default
    • loki and promtail now enabled by default, with prebuilt loki-rpm
  • Model and labels
    • Added hidden ds prometheus datasource variable to all dashboards
    • Added ip label to all metrics, used as join key between database and node metrics
  • INFRA Monitoring
    • INFRA main dashboard: INFRA Overview
    • Added Log dashboard: Logs Instance
    • PGLOG Analysis and PGLOG Session now treated as sample Pigsty APPs
  • NODES Monitoring Application
    • Pigsty can be used standalone as host monitoring software
    • Includes 4 core dashboards: Nodes Overview & Nodes Cluster & Nodes Instance & Nodes Alert
    • New identity variables for nodes: node_cluster and nodename
  • PGSQL Monitoring Enhancements
    • New PGSQL Cluster, simplified and focused on what matters in a cluster
    • New dashboard PGSQL Databases for cluster-level object monitoring
    • PGSQL Alert dashboard now focuses solely on PGSQL alerts
    • PGSQL Shard added to PGSQL
  • Redis Monitoring Enhancements
    • Added node monitoring to all Redis dashboards

MatrixDB Support

  • MatrixDB (Greenplum 7) can be deployed via pigsty-matrix.yml playbook
  • MatrixDB monitoring dashboard: PGSQL MatrixDB
  • Added sample configuration: pigsty-mxdb.yml

Software Upgrades

  • PostgreSQL 14.2
  • PostGIS 3.2
  • TimescaleDB 2.6
  • Patroni 2.1.3 (Prometheus metrics + failover slots)
  • HAProxy 2.5.5 (fixed stats errors, more metrics)
  • PG Exporter 0.4.1 (timeout parameters, etc.)
  • Grafana 8.4.4
  • Prometheus 2.33.4
  • Greenplum 6.19.4 / MatrixDB 4.4.0
  • Loki now provided as RPM package instead of ZIP archive

Bug Fixes

  • Removed Patroni’s Consul dependency, making migration to new Consul clusters easier
  • Fixed Prometheus bin/new script default data directory path
  • Added restart seconds in vip-manager systemd service
  • Fixed typos and tasks

API Changes

New Variables

  • node_cluster: Identity variable for node cluster
  • nodename_overwrite: If set, nodename will be set to node’s hostname
  • nodename_exchange: Exchange node hostnames between play hosts (in /etc/hosts)
  • node_dns_hosts_extra: Extra static DNS records easily overridable by single instance/cluster
  • patroni_enabled: If disabled, postgres & patroni bootstrap not executed during postgres role
  • pgbouncer_enabled: If disabled, pgbouncer not started during postgres role
  • pg_exporter_params: Extra URL parameters for pg_exporter when generating monitoring target URL
  • pg_provision: Boolean variable indicating whether to execute provisioning part of postgres role
  • no_cmdb: Used for infra.yml and infra-demo.yml playbooks, won’t create CMDB on meta node

Sources

5 - Pigsty v1.3.1

Dashboard polish, security fixes, and software upgrades

Monitoring

  • PGSQL & PGCAT dashboard improvements
  • Optimized PGCAT Instance & PGCAT Database layout
  • Added key metric panels to PGSQL Instance dashboard (consistent with PGSQL Cluster)
  • Added table/index bloat panels to PGCAT Database, removed PGCAT Bloat dashboard
  • Added index information to PGCAT Database dashboard
  • Fixed broken panels in Grafana 8.3
  • Added Redis index to Nginx homepage

Deployment

  • New infra-demo.yml playbook for one-click bootstrap
  • New infra-jupyter.yml playbook for optional JupyterLab server
  • New infra-pgweb.yml playbook for optional PGWeb server
  • Added pg alias on meta node for starting PostgreSQL cluster from admin user
  • Adjusted max_locks_per_transactions in all Patroni config templates per timescaledb-tune recommendations
  • Added citus.node_conninfo: 'sslmode=prefer' to config templates for SSL-free Citus usage
  • Added all extensions (except pgrouting) from PGDG14 to package list
  • Upgraded node_exporter to v1.3.1
  • Added PostgREST v9.0.0 for generating REST APIs from PostgreSQL schemas

Bug Fixes

  • Grafana security vulnerability fix (upgraded to v8.3.1, details)
  • Fixed pg_instance & pg_service issues in register role when starting playbook mid-run
  • Fixed Nginx homepage rendering on hosts without pg_cluster variable
  • Fixed style issues when upgrading to Grafana 8.3.1

Sources

6 - Pigsty v1.3.0

PGCAT overhaul & PGSQL enhancement & Redis beta support

Redis Support

Feature Description
Redis Deployment Standalone, Sentinel, and Cluster modes
Redis Monitoring Overview, Cluster, and Instance dashboards

PGCAT Overhaul

Dashboard Description
PGCAT Instance New instance-level catalog dashboard
PGCAT Database New database-level catalog dashboard
PGCAT Table Redesigned table-level dashboard

PGSQL Enhancements

Dashboard Improvements
PGSQL Cluster Added 10 key metric panels
PGSQL Instance Added 10 key metric panels
PGSQL Service Simplified and redesigned
Cross-references Navigation links between PGCAT and PGSQL dashboards

Monitor Deployment

  • Grafana datasources auto-register during monitor-only deployment

Software Upgrades

  • PostgreSQL 13 added to default package list
  • PostgreSQL upgraded to 14.1 as default
  • Added Greenplum RPM packages and dependencies
  • Added Redis RPM and source packages
  • Added perf as default package

Sources

7 - Pigsty v1.2.0

Default PGSQL version upgraded to 14

Core Features

  • Default to PostgreSQL 14
  • Default to TimescaleDB 2.5 extension
  • TimescaleDB and PostGIS enabled by default in CMDB

Monitor-Only Mode

  • Monitor existing PostgreSQL instances via connection URL only
  • pg_exporter deployed on local meta node
  • New PGSQL Cluster Monly dashboard for remote clusters

Software Upgrades

  • Grafana upgraded to 8.2.2
  • pev2 upgraded to v0.11.9
  • Promscale upgraded to 0.6.2
  • PgWeb upgraded to 0.11.9
  • New extensions: pglogical, pg_stat_monitor, orafce

Improvements

  • Auto-detect machine specs and use appropriate node_tune and pg_conf templates
  • Reworked bloat-related views, exposing more information
  • Removed TimescaleDB and Citus internal monitoring
  • Added pgsql-audit.yml playbook for creating audit reports
  • All config templates simplified to two: auto and demo

Bug Fixes

  • pgbouncer_exporter resource owner changed to {{ pg_dbsu }} instead of postgres
  • Fixed pg_exporter duplicate metrics on pg_table/pg_index during REINDEX TABLE CONCURRENTLY

Sources

8 - Pigsty v1.1.1

TimescaleDB upgrade and new Patroni templates
  • Replaced TimescaleDB apache version with timescale version
  • Upgraded Prometheus to 2.30
  • Fixed pg_exporter config directory owner issue (changed to {{ pg_dbsu }})

Upgrade Notes

The main change in this version is TimescaleDB — using the official TimescaleDB License (TSL) version to replace the Apache License v2 version from the PGDG repository.


## Sources

- [GitHub release](https://github.com/pgsty/pigsty/releases/tag/v1.1.1)
- [Pigsty v1.1 release article](https://pigsty.io/blog/pigsty/v1.1/)
- [Source comparison: `v1.1...v1.1.1`](https://github.com/pgsty/pigsty/compare/v1.1...v1.1.1)

9 - Pigsty v1.1.0

Homepage, JupyterLab, PGWEB, Pev2 & pgbadger

Feature Enhancements

  • Added pg_dummy_filesize to create filesystem space placeholder
  • Major homepage redesign
  • Added JupyterLab integration
  • Added PGWeb console integration
  • Added PgBadger support
  • Added PEV2 support, execution plan visualization tool
  • Added pglog tooling

Software Upgrades

  • PostgreSQL upgraded to v13.4 (with official PG14 support)
  • pgbouncer upgraded to v1.16 (metric definitions updated)
  • Grafana upgraded to v8.1.4
  • Prometheus upgraded to v2.29
  • node_exporter upgraded to v1.2.2
  • HAProxy upgraded to v2.1.1
  • Consul upgraded to v1.10.2
  • vip-manager upgraded to v1.0.1

API Changes

  • nginx_upstream now has different structure (incompatible)
  • New config entry: app_list, navigation entries rendered to homepage
  • New config entry: docs_enabled, setup local docs on default server
  • New config entry: pev2_enabled, setup local PEV2 tool
  • New config entry: pgbadger_enabled, create log summary/report directory
  • New config entry: jupyter_enabled, enable JupyterLab server on meta node
  • New config entry: jupyter_username, specify user to run JupyterLab
  • New config entry: jupyter_password, specify default password for JupyterLab
  • New config entry: pgweb_enabled, enable PGWeb server on meta node
  • New config entry: pgweb_username, specify user to run PGWeb
  • Renamed internal flag repo_exist to repo_exists
  • repo_address default value changed to pigsty instead of yum.pigsty
  • HAProxy access point changed to http://pigsty instead of http://h.pigsty

Sources

10 - Pigsty v1.0.1

Bug fixes and documentation improvements

2021-09-14

Documentation Update

  • Chinese documentation now available
  • Machine-translated English documentation now available

Bug Fixes

  • pgsql-remove no longer removes primary instances
  • Replaced pg_instance with pg_cluster + pg_seq (Start-At-Task could fail when pg_instance undefined)
  • Removed Citus from default shared preload libraries (Citus forces max_prepared_transaction to non-zero)
  • Added ssh sudo check in configure (now uses ssh -t sudo -n ls for permission check)
  • Fixed pg-backup script typo

Optimizations

  • Removed NTP sanity check alert (duplicate of ClockSkew)
  • Removed collector.systemd to reduce overhead

Sources

11 - Pigsty v1.0.0

v1 GA, Monitoring System Overhaul

Monitoring System Overhaul

  • New dashboards on Grafana 8.0
  • New metric definitions, added PG14 support
  • Simplified labeling system: static label set (job, cls, ins)
  • New alerting rules and derived metrics
  • Monitor multiple databases simultaneously
  • Real-time log search & csvlog analysis
  • Richly-linked dashboards, click through for drill-down/roll-up

Architecture Changes

  • Added Citus and TimescaleDB to default installation
  • Added PostgreSQL 14beta2 support
  • Simplified HAProxy admin page indexing
  • Decoupled infrastructure and PGSQL by adding new role register
  • Added new roles loki and promtail for logging
  • Added new role environ to setup environment for admin user on meta node
  • Default to static service discovery for Prometheus (instead of consul)
  • Added new role remove for graceful cluster and instance removal
  • Upgraded Prometheus and Grafana provisioning logic
  • Upgraded to vip-manager 1.0, node_exporter 1.2, pg_exporter 0.4, Grafana 8.0
  • Every database on every instance auto-registers as a Grafana datasource
  • Moved Consul registration to register role, changed Consul service tags
  • Added cmdb.sql as pg-meta baseline definition (CMDB & PGLOG)

Application Framework

  • Extensible framework for new features
  • Core app: PostgreSQL monitoring system pgsql
  • Core app: PostgreSQL catalog explorer pgcat
  • Core app: PostgreSQL csvlog analyzer pglog
  • Added sample app covid for COVID-19 data visualization
  • Added sample app isd for ISD weather data visualization

Other

  • Added JupyterLab for full Python data science environment
  • Added vonng-echarts-panel to restore ECharts support
  • Added wrapper scripts createpg, createdb, createuser
  • Added CMDB dynamic inventory scripts: load_conf.py, inventory_cmdb, inventory_conf
  • Removed obsolete playbooks: pgsql-monitor, pgsql-service, node-remove, etc.

API Changes

  • New variable: node_meta_pip_install
  • New variable: grafana_admin_username
  • New variable: grafana_database
  • New variable: grafana_pgurl
  • New variable: pg_shared_libraries
  • New variable: pg_exporter_auto_discovery
  • New variable: pg_exporter_exclude_database
  • New variable: pg_exporter_include_database
  • Variable renamed: grafana_urlgrafana_endpoint

Bug Fixes

  • Fixed default timezone Asia/Shanghai (CST) issue
  • Fixed nofile limits for pgbouncer & patroni
  • pgbouncer user list and database list now generated when running tag pgbouncer

Sources

12 - Pigsty v0.9.1

Three-step installer, PostgreSQL 13.3, and Grafana 7.5.6

Update package version:

  • PostgreSQL 13.3
  • Grafana 7.5.6

Add configure support.

Now install pigsty with 3 steps: download, configure and install:

curl -fsSL https://github.com/pgsty/pigsty/releases/download/v0.9.1/pigsty.tgz | gzip -d | tar -xC ~; cd ~/pigsty
./configure
make install

WoW! just like old time!

Sources

13 - Pigsty v0.9.0

Pigsty GUI, CLI, Logging Integration

New Stuff

  • One-liner install: curl -fsSL https://pigsty.cc/install | bash bootstraps everything.
  • pigsty-cli: wraps the common Ansible playbooks so you stop copy-pasting command lines. Still beta but already handy.
  • Loki + Promtail: Postgres, pgbouncer, and Patroni logs stream into Grafana with metrics extracted from log volume. infra-loki.yml and pgsql-promtail.yml wire things up.
  • Binary exporters: grab monitoring binaries with files/get_bin.sh if you don’t want to rely on repos.
  • Flight mode: once the meta node is initialized you can run bin/upgrade to switch into a dynamic inventory using data stored inside pg-meta.

Fixes

  • Cleaned up HAProxy health checks that were flooding PG and Patroni logs with connection reset noise.
  • Patroni logs now carry readable timestamps (no more millisecond fragments) and explicit time zones.
  • Monitoring queries run by dbuser_monitor log only when slower than 1s.
  • Grafana role refactor keeps the API stable, but uses CDN-hosted plugin bundles for faster installs.
  • Pgbouncer user creation now handles md5 passwords properly.
  • Hardened SQL templates for DB/user creation, fixed DNS orchestration edge cases, and tidied Makefile typos.

Knob Changes

  • node_disable_swap defaults to false; Pigsty no longer nukes swap by default.
  • node_sysctl_params stops writing kernel tunables unless you explicitly set them.
  • grafana_plugin: install now means “download from CDN if cache is missing.”
  • repo_url_packages pulls extra RPMs from the Pigsty CDN so installs inside China work out of the box.
  • proxy_env.no_proxy includes the CDN endpoints.
  • grafana_customize defaults to false; flip it on only if you have the Pigsty Pro UI bits.
  • node_admin_pk_current adds your current ~/.ssh/id_rsa.pub to the admin account.
  • Loki/Promtail knobs: loki_clean, loki_data_dir, promtail_enabled, promtail_clean, promtail_port, promtail_status_file, promtail_send_url.

Sources

14 - Pigsty v0.8.0

Service Provision

v0.8 finalizes the provisioning API. Services are completely rebuilt: instead of a hard-coded primary/replica pair you can now declare any number of services, plug in HAProxy, swap in an external load balancer, or hand off to a custom VIP controller. Everything else in the supply chain stabilizes on top of this model.

Service API

The old vip and haproxy knobs moved under the service role. pg_services (plus pg_services_extra) define each exposed endpoint—name, ports, selectors, health checks, weights, and balancer hints. Selectors are JMESPath filters over cluster members, and optional selector_backup pools handle fail-in when replicas are gone. Out of the box we ship primary, replica, default, and offline service definitions; swap dst_port to point at postgres, pgbouncer, or any number.

The HAProxy stanza keeps per-service tuning (maxconn, algorithm, timeouts) while VIP config distinguishes L2/L4 implementations so you can drop Pigsty behind an existing load balancer.

Database Interface Tweaks

Locales can now be split into lc_collate and lc_ctype so extensions like pg_trgm behave with non-C collations. The rest of the pg_databases schema stays the same—owner/template/encoding/connlimit/revokeconn/pgbouncer/comment—just with better defaults and inline comments.

Sources

15 - Pigsty v0.7.0

Monitor only deployment

Pigsty v0.7 focuses on plugging existing fleets into Pigsty’s observability stack. The new monitor-only flow lets you drop Pigsty dashboards onto databases that were provisioned elsewhere, and the declarative APIs for databases and users got a much needed redesign.

Highlights

  • Monitor-only deployment flow (monly) with its own playbook.
  • Split static Prometheus target files by cluster for easier hand-editing.
  • New helper playbooks: pgsql-createuser.yml and pgsql-createdb.yml for live clusters.
  • Database and user schema definitions now cover owner/template/locale knobs plus per-role capabilities.
  • Bug fixes for extension schema typos and pgbouncer reload.

API Changes

New options:

prometheus_sd_target: batch
exporter_install: none
exporter_repo_url: ''
node_exporter_options: '--no-collector.softnet --collector.systemd --collector.ntp --collector.tcpstat --collector.processes'
pg_exporter_url: ''
pgbouncer_exporter_url: ''

Removed option:

exporter_binary_install

Structures affected: pg_default_roles, pg_users, pg_databases. Also fixed the pg_default_privilegs typo → pg_default_privileges.

Monitor-Only Mode

When you just want Pigsty’s observability without touching the way databases were provisioned, run the monly flow. Infra still gets bootstrapped on the meta node via ./infra.yml, but database nodes skip the provisioning playbooks and only run ./pgsql-monitor.yml. Config gets much shorter—most of the time you only keep infra vars and a handful of monitoring knobs.

Database Provisioning Interface

pg_databases now exposes owner/template/encoding/locale/connlimit/allowconn knobs plus revokeconn (strip CONNECT from public) and inline comments. Use ./pgsql-createdb.yml -e pg_database=<name> to create or mutate live databases; the generated SQL lives inside /pg/tmp/pg-db-<name>.sql on the primary.

User Provisioning Interface

pg_users swapped usernamename, groupsroles, and exploded options into discrete flags (login, superuser, createdb, createrole, inherit, replication, bypassrls, connlimit). Users can also get expire_at / expire_in timers plus pgbouncer defaults to false. Apply changes through ./pgsql-createuser.yml -e pg_user=<name> which renders /pg/tmp/pg-user-<name>.sql on the primary.

Sources

16 - Pigsty v0.6.0

Architecture Enhancement

Pigsty v0.6 responds to user feedback with a redesigned provisioning path plus a monitoring stack that can sit beside any managed PG fleet—even a MyBase cluster built elsewhere.

Bug Fixes

  • Patroni no longer resets PG HBA on restart.
  • Fixed copy typos and the default primary for the pg-test sandbox cluster.
  • Patched the dashboard title typo on PG Overview.

Feature Work

  • Monitoring supply chain overhaul: Prometheus can now run fully static, exporters accept service_registry toggles, and exporter_binary_install lets you drop binaries without hitting repos. Each exporter has its own *_enabled flag.
  • Prometheus static discovery is rendered straight from inventory, so you can graft Pigsty dashboards onto any PG-as-a-service footprint.
  • HAProxy provisioning adds a global console at h.pigsty, optional auth, fallback routing to the primary when all replicas die, and per-service weight tuning.
  • ACL defaults now include dbrole_offline for slow-query/ETL workloads plus HBA rules that fence those workloads to marked nodes.
  • Component refresh: PostgreSQL 13.2, Prometheus 2.25, pg_exporter 0.3.2, node_exporter 1.1, Consul 1.9.3, and a faster ZJU PG mirror.

API Changes

New knobs:

service_registry: consul
prometheus_options: '--storage.tsdb.retention=30d'
prometheus_sd_method: consul
prometheus_sd_interval: 2s
pg_offline_query: false
node_exporter_enabled: true
pg_exporter_enabled: true
pgbouncer_exporter_enabled: true
dcs_disable_purge: false
pg_disable_purge: false
haproxy_weight: 100
haproxy_weight_fallback: 1

Removed knobs:

prometheus_metrics_path
prometheus_retention

Sources

17 - Pigsty v0.5.2

Playbook restructuring, VIP/HAProxy controls, and configuration cleanup

[!INFO]

This historical version is represented by its Git tag and source tree because no GitHub Release was published.

Highlights

  • Made pigsty.yml the default configuration and reorganized the standard sandbox.yml, infra.yml, and pgsql.yml workflows.
  • Split VIP management from HAProxy and added administrator authentication, traffic weights, and primary fallback controls.
  • Added the nameserver step to the main playbook and refreshed the accompanying documentation.

v0.5.2 is a tagged maintenance snapshot without a separately authored GitHub Release body.

Sources

18 - Pigsty v0.5.1

Dashboard fixes, the ZJU mirror, and documentation refresh

[!INFO]

This historical version is represented by its Git tag and source tree because no GitHub Release was published.

Highlights

  • Fixed PostgreSQL cluster and instance dashboard issues found after v0.5.0.
  • Switched the default PostgreSQL mirror to Zhejiang University for faster regional installs.
  • Refreshed the README and consolidated the v0.5 documentation snapshot.

v0.5.1 is a tagged maintenance snapshot without a separately authored GitHub Release body.

Sources

19 - Pigsty v0.5.0

Database Customize Template

Outline

  • The official docs site (http://pigsty.cc/) is live.
  • Database templating becomes fully declarative: define users, roles, databases, ACLs, extensions, and schemas in config.
  • The default access model is refined and HBA management now comes straight from Pigsty instead of Patroni.
  • Grafana provisioning switched from shoving a sqlite file to JSON provisioning via API.
  • Added the pg-cluster-replication dashboard to the open bundle.
  • CentOS 7.8 offline bundle: pkg.tgz.

Declarative Database Layouts

Multi-tenant headaches go away once everything is described as code. The new templates let you declare users, passwords, role hierarchies, DB defaults, extensions, schemas, and default privileges in YAML so a single config file replaces piles of runbooks. A stripped example:


## Sources

- [GitHub release](https://github.com/pgsty/pigsty/releases/tag/v0.5.0)
- [Pigsty v0.5 release article](https://pigsty.io/blog/pigsty/v0.5/)
- [Historical About / Release Note](https://pigsty.io/docs/about/release/#v050)
- [Source comparison: `v0.4.0...v0.5.0`](https://github.com/pgsty/pigsty/compare/v0.4.0...v0.5.0)

20 - Pigsty v0.4.0

PostgreSQL 13 Support, Official Documentation

Pigsty v0.4 is our second public beta. The observability stack was rebuilt around Grafana 7.3, and ten curated dashboards became the default open-source payload. pg_exporter 0.3.1 drives metrics, and the alert wiring has been cleaned up for the new Grafana release.

Open-Source Dashboards

The OSS build now exposes ten high-signal Grafana panels: PG Overview, Cluster, Service, Instance, Database, Query, Table, Table Catalog, Table Detail, and Node. Even with a lean set it easily outclasses most “enterprise” PG monitoring suites.

Software Refresh

  • PostgreSQL 13.1 + Patroni 2.0.1-4, with citus added to the repo
  • pg_exporter upgraded to 0.3.1
  • Grafana jumps to 7.3; a ton of compatibility fixes landed
  • Prometheus 2.23 with the new UI enabled
  • Consul 1.9 and related components updated

Other Improvements

  • Updated Prometheus alert rules and Alertmanager info links
  • Fixed a batch of bugs and typos
  • Added a tiny backup script for quick dumps

Offline Bundle

Need an air-gapped install? Grab the CentOS 7.8 package bundle (pkg.tgz) from GitHub and deploy from local media.

Sources

21 - Pigsty v0.3.0

Provisioning Solution GA

Pigsty v0.3.0 is the very first public preview. It packages a lean observability stack plus a reproducible offline bundle so you can spin up a real PostgreSQL lab without touching the public Internet.

Observability Stack

The open build ships eight curated Grafana dashboards: PG Overview, Cluster, Service, Instance, Database, Table Overview, Table Catalog, and a bare-metal Node view. Even with a trimmed set the coverage still crushes most “enterprise” monitoring stories.

Offline Bundle

Shipyard environments can fetch the CentOS 7.8 offline bundle directly from GitHub (pkg.tgz). Drop it on the management node and you have a deterministic install no matter how broken the mirrors are.

Sources

22 - Pigsty v0.0.5

Offline installation, Consul role, and HAProxy fixes

[!INFO]

This historical version is represented by its Git tag and source tree because no GitHub Release was published.

Highlights

  • Added an offline installation mode for environments without Internet access.
  • Introduced a dedicated Consul role and refreshed repository bootstrap behavior.
  • Added psql startup helpers, split PostgreSQL script tasks, and fixed HAProxy connection-reset noise.

This historical record is reconstructed from the v0.0.5 tag and its source comparison with v0.0.4.

Sources

23 - Pigsty v0.0.4

Ansible role split, networking, and repository refactor

[!INFO]

This historical version is represented by its Git tag and source tree because no GitHub Release was published.

Highlights

  • Split the former monolithic automation into dedicated Meta, Grafana, DNS, Nginx, and Prometheus roles.
  • Added static-network handling and revised the local repository upstream policy.
  • Expanded role documentation while keeping service registration templates aligned with the new layout.

This historical record is reconstructed from the v0.0.4 tag and its source comparison with v0.0.3.

Sources

24 - Pigsty v0.0.3

Interface and monitoring-schema improvements

[!INFO]

This historical version is represented by its Git tag and source tree because no GitHub Release was published.

Highlights

  • Improved the early Pigsty configuration interface and added the monitoring schema.
  • Added a Kubernetes playbook and refined the PostgreSQL initialization defaults.
  • Simplified the Vagrant bootstrap path and fixed several HAProxy, Patroni, and exporter registration details.

This historical tag predates the public release series. Its record is reconstructed from the tagged source and the commit history leading to v0.0.3.

Sources

25 - Pigsty v0.2.0

Provisioning refactor, etcd DCS, and HAProxy 2.2 support

[!INFO]

This historical version is represented by its Git tag and source tree because no GitHub Release was published.

Highlights

  • Refactored the infrastructure, node, repository, Patroni, PgBouncer, monitoring, and PostgreSQL initialization roles.
  • Added etcd as a DCS option, production/test inventory layouts, and configurable database superuser support.
  • Added Patroni pause handling, HAProxy 2.2 compatibility, and fixes for older CentOS 7 environments.

v0.2.0 predates curated GitHub Release notes. This record is reconstructed from the tagged source and the comparison with v0.1.0.

Sources

26 - Pigsty v0.1.0

Test-environment validation after the initial role-based restructuring

[!INFO]

This historical version is represented by its Git tag and source tree because no GitHub Release was published.

Highlights

  • Completed the first large-scale conversion from playbooks to reusable Ansible roles.
  • Established the initial PostgreSQL primary/standby, PgBouncer, monitoring, HAProxy, Keepalived, and repository workflows.
  • Validated the reorganized project in a production-like test environment.

v0.1.0 is an early engineering milestone rather than a curated GitHub Release. The notes are reconstructed from the tag and its commit history.

Sources