Pigsty is a local, open-source alternative to PostgreSQL RDS:
Battery-Included RDS: From kernel to RDS distribution, providing production-grade PG database services for versions 14-18 on EL/Debian/Ubuntu.
Rich Extensions: 600 extensions provide distributed, time-series, geospatial, graph, vector, and multi-model capabilities.
Flexible Modular Architecture: Compose Redis, Etcd, and Silo object-storage modules with PostgreSQL modes such as Mongo; monitor existing RDS, hosts, and databases independently.
Stunning Observability: Monitor databases with the Prometheus/Grafana observability stack.
Battle-Tested Reliability: Self-healing high-availability architecture: automatic failover on hardware failure, seamless traffic switching. With auto-configured PITR as safety net for accidental data deletion!
Easy to Use and Maintain: Declarative APIs, GitOps, Database/Infra-as-Code, and management SOPs simplify operations.
Solid Security Practices: HBA, ACL, TLS, backup, logging, and host-firewall foundations, with explicit default boundaries and production hardening requirements.
Broad Application Scenarios: Low-code data application development, or use preset Docker Compose templates to spin up massive software using PostgreSQL with one click!
Open-Source Free Software: Own better database services at less than 1/10 the cost of cloud databases! Truly “own” your data and achieve autonomy!
PostgreSQL integrates ecosystem tools and best practices:
Out-of-the-box PostgreSQL distribution, deeply integrating 600 packaged extensions for geospatial, time-series, distributed, graph, vector, search, and AI!
Runs on bare operating systems without container support, supporting mainstream operating systems: EL 8/9/10, Ubuntu 22.04/24.04/26.04, and Debian 12/13.
Based on patroni, haproxy, and etcd, creating a self-healing high-availability architecture: automatic failover on hardware failure, seamless traffic switching.
Combines pgBackRest with optional Silo object storage to provide out-of-the-box point-in-time recovery (PITR), protecting against software defects and accidental data deletion.
Based on Ansible providing declarative APIs to abstract complexity, greatly simplifying daily operations management in a Database-as-Code manner.
Pigsty has broad applications, can be used as complete application runtime, develop demo data/visualization applications, and massive software using PG can be spun up with Docker templates.
Provides Vagrant-based local development and testing sandbox environment, and Terraform-based cloud auto-deployment solutions, keeping development, testing, and production environments consistent.
Run production PostgreSQL services on your own infrastructure.
PostgreSQL provides the database kernel. A database service also needs operational tools, which Pigsty integrates. These include extension installation, connection pooling, load balancing, service access, high availability, failover, logs, metrics, and alerts. Pigsty also provides backups, recovery, PITR, access control, tuning, encryption, certificates, NTP, and DNS. Configuration management, CMDB, and management playbooks complete the service infrastructure.
Pigsty supports PostgreSQL 14 ~ 18 and compatible forks on EL, Debian, Ubuntu, and compatible distributions. It supports x86_64 and ARM64 without requiring containers. Alongside kernels and extensions, it supplies database infrastructure and runtime services. It includes automatic deployment for local sandboxes, production environments, and cloud IaaS.
Pigsty can initialize an environment from bare metal with one command. Developers and operations engineers can use it to manage production databases without dedicated database experts.
Rich Extensions
Combine multiple data models and database workloads in PostgreSQL.
Pigsty integrates 600 extensions from the PostgreSQL extension ecosystem. These provide ready-to-use support for multiple data models.
Extensions can work together to provide combined capabilities. Use PostGIS for geospatial data and TimescaleDB for time-series and event analysis. Add Citus for a distributed geospatial and temporal database. Use PGVector for embeddings and ParadeDB for ElasticSearch-level full-text search. Combine SQL, full-text, and approximate vector search for hybrid queries. pg_duckdb, pg_mooncake, and other extensions provide dedicated OLAP and data lakehouse analytical performance.
Using PostgreSQL in place of separate MySQL, Kafka, ElasticSearch, MongoDB, and big data analysis systems can simplify architecture. This approach improves development efficiency and agility. It can reduce software, hardware, development, and operations costs.
Pigsty components are independently deployable modules. Combine them for your requirements. INFRA provides monitoring; NODE configures and manages nodes. PGSQL on multiple nodes forms a primary-replica HA cluster. ETCD provides its consensus and metadata storage.
Optional modules extend the four core modules. MINIO deploys Silo for local object storage and centralized database backups. REDIS provides standalone primary-replica, sentinel, and native cluster modes. DOCKER runs stateless applications.
Pigsty supports compatible PostgreSQL kernels and derivatives. Babelfish provides MS SQL Server compatibility; IvorySQL provides Oracle compatibility. OpenHaloDB provides MySQL compatibility. OrioleDB targets high OLTP performance.
Furthermore, you can use PostgreSQL Mongo mode for MongoDB compatibility, Supabase for Firebase compatibility, and PolarDB to meet domestic compliance requirements.
Message queues are covered by the KAFKA module, which deploys Kafka 4.x dynamic KRaft clusters.
More professional/pilot modules will be continuously introduced to Pigsty, such as GPSQL, DUCKDB, TIGERBEETLE, KUBERNETES, CONSUL, GREENPLUM, CLOUDBERRY, MYSQL, …
Stunning Observability
Monitor PostgreSQL with an integrated open-source observability stack.
Pigsty monitoring uses Grafana for visualization, VictoriaMetrics for metrics, and VictoriaLogs for log collection and queries. Alertmanager sends alerts, and Blackbox Exporter checks service availability. The INFRA module deploys this Grafana / Prometheus-compatible stack with one command.
Pigsty automatically monitors every managed component: host nodes, HAProxy load balancers, PostgreSQL databases, PgBouncer connection pools, Etcd metadata stores, Redis-compatible caches, Silo object storage, and the monitoring infrastructure itself. Grafana dashboards and preset alert rules provide immediate operational visibility. The same stack can also monitor applications, existing database instances, and cloud RDS services.
Monitoring supports failure analysis, slow query optimization, capacity assessment, and resource planning. More than three thousand metric types describe the system. Pigsty processes, aggregates, and presents them in dashboards. Views range from global summaries to CRUD details for tables, indexes, and functions. Navigate between levels and objects to examine current state and history and estimate future trends.
The monitoring module can be used independently for existing hosts, database instances, and cloud RDS. One connection string and one command configure PostgreSQL monitoring.
High availability and point-in-time recovery are included.
For table/database drops caused by software defects or human error, Pigsty provides out-of-the-box PITR point-in-time recovery capability, enabled by default without additional configuration. As long as storage space allows, base backups and WAL archiving based on pgBackRest let you quickly return to any point within the recovery window. You can use local directories/disks, Silo deployed by the MINIO module, or external S3-compatible object-storage services to retain longer recovery windows, according to your budget.
Pigsty provides a high-availability self-healing architecture based on Patroni, etcd, and HAProxy. When the node, network, quorum, and synchronous-replica assumptions hold, it can fail over the primary automatically. Actual RTO and RPO depend on replication mode, failure type, timeout settings, and client reconnection behavior.
HAProxy switches traffic automatically and supports client access through DNS, VIP, LVS, and other methods. Failover and switchover cause brief interruptions without requiring new connection strings or application restarts. Small maintenance windows support rolling cluster maintenance and upgrades without application coordination. Hardware repair can wait while redundant nodes provide service. Production users include large organizations and core institutions.
The largest deployment has 25K CPU cores and 200+ large PostgreSQL instances. It maintained availability above 99.999% over six to seven years despite dozens of hardware failures, other incidents, and several DBA changes.
Easy to Use and Maintain
Infra as Code, Database as Code, declarative APIs encapsulate database management complexity.
Pigsty uses declarative inventories to describe the required database cluster. Its playbooks implement that state. This resembles Kubernetes CRDs and Operators, but applies to databases and infrastructure on containers, virtual machines, or physical machines.
To create or remove clusters, replicas, databases, users, services, extensions, or whitelist rules, edit the inventory and run the idempotent playbooks. Pigsty adjusts the system to the declared state. It tunes settings for the hardware. Users specify cluster names, instances, hosts, and a transaction, analytics, critical, or tiny template. Developers can manage these tasks themselves. Detailed parameters also support custom DBA requirements.
Pigsty can install with one command and prepackaged dependencies, without internet access. Vagrant or Terraform templates can provision the required machines. A complete local laptop or cloud VM deployment takes about ten minutes. A 1-core 2GB sandbox VM simulates production features for development, testing, demonstrations, and learning.
Solid Security Practices
Pigsty provides the security foundations required for database deployment. Access controls include layered HBA, built-in roles and default privileges, and SCRAM-SHA-256. Other mechanisms include page checksums, a local CA, component certificates, backup, PITR, centralized logs, and firewall configuration.
The defaults target development, testing, and demonstrations on a trusted intranet. Production deployments must replace public credentials, review network boundaries, enforce TLS where required, configure server-certificate verification, and establish backup recovery, privilege review, and incident-response processes.
Security and Compliance documents each mechanism’s default state and boundary. Security Considerations provides production hardening guidance, and Compliance maps relevant controls to MLPS and SOC 2. Whether a deployment meets a specific requirement depends on scope, organizational process, continuous evidence, and the auditor’s conclusion.
Broad Application Scenarios
Deploy PostgreSQL applications with preset Docker templates.
The database is often the most complex part of a data application. For example, a core difference between GitLab Enterprise and Community Edition is PostgreSQL monitoring and high availability. A local PostgreSQL RDS can replace paid application-specific database management components.
Pigsty supplies the Docker module and ready-to-use Compose templates. Use managed HA PostgreSQL, Redis, and Silo as backend storage for stateless applications. Examples include GitLab, Gitea, Wiki.js, NocoDB, Odoo, Jira, Confluence, Harbor, Mastodon, Discourse, KeyCloak, and Mattermost. Pigsty can simplify deployment when applications require reliable PostgreSQL.
Pigsty includes PGAdmin4, PGWeb, ByteBase, PostgREST, and Kong development tools. It also supports PostgreSQL-backed systems such as EdgeDB, FerretDB, and Supabase. Use built-in Grafana and PostgreSQL to create interactive data applications with little code. ECharts panels provide additional interactive visualizations.
Pigsty provides a runtime for AI applications. Agents can use PostgreSQL and observability services to build data-driven applications.
Open-Source Free Software
PostgreSQL community members develop Pigsty as free software under Apache-2.0.
Pigsty is open-source and free. It provides enterprise PostgreSQL services near hardware cost without requiring database experts. Vendor enterprise services and public cloud RDS charge premiums of several to over ten times hardware cost.
Many users choose cloud databases because they cannot manage databases themselves or lack alternatives. Pigsty aims to provide a cloud-neutral, better open-source RDS alternative. It follows upstream PostgreSQL without vendor lock-in, license fees, node limits, or data collection. Users retain control of their data.
Pigsty automates manual database operations, but rare cases still need expert help. Subscription services provide this support for enterprise users. Consulting fees of tens of thousands are less than one-thirtieth of a top DBA’s annual salary. For community users, we contribute support through free assistance and daily Q&A.
The origin and motivation of the Pigsty project, its development history, and future goals and vision.
Historical Origins
Pigsty began in 2018-2019 at Tantan. Tantan is a dating app similar to Tinder in China, later acquired by Momo. Its founding engineering team was Swedish, and its startup culture followed a Nordic model.
Tantan used PostgreSQL and Go as its core stack. Its architecture followed Instagram and centered on PostgreSQL. It served several million daily active users, millions of TPS, and hundreds of TB of data. The data layer used only PostgreSQL. PG stored procedures implemented almost all business logic, including 100ms recommendation algorithms. This was arguably one of China’s most complex large-scale PostgreSQL deployments at the time.
This extensive use of PostgreSQL features required strong engineering and DBA skills. Pigsty grew from operating these large database clusters with demanding requirements. It incorporates the team’s PostgreSQL experience and operational practices.
Development Process
Pigsty started as an internal PostgreSQL monitoring system, with a smaller scope than today. We evaluated open-source, commercial, and cloud tools, including datadog and pgwatch. None met our observability requirements. I built a Grafana and Prometheus solution that became the Pigsty prototype. This monitoring system helped resolve many management problems.
Developers then requested the same monitoring on local machines. We wrote Ansible provisioning playbooks to make deployment repeatable. Later versions used Vagrant and Terraform for Infrastructure as Code. Users could create local DevBox machines or production servers with PostgreSQL and monitoring deployed automatically.
We then redesigned production PostgreSQL architecture around Patroni and pgBackRest. They provided high availability and point-in-time recovery. We developed a zero-downtime migration method with logical replication and blue-green deployment. We used it to upgrade two hundred production database clusters to the latest major version. These capabilities became part of Pigsty.
We built Pigsty for our own use. As both developers and users, we understood the requirements and avoided shortcuts. We used automation without concern that it would replace our jobs.
We added each operational solution to Pigsty. It grew from a monitoring system into a ready-to-use PostgreSQL distribution. We released it as open source and shared technical material. Users from other industries adopted it and provided feedback.
Full-Time Entrepreneurship
In 2022, the Pigsty project received seed funding from Miracle Plus, initiated by Dr. Qi Lu, allowing me to work on this full-time.
During full-time development, GitHub stars grew from a few hundred to 5,213 as of 2026-07-11. Pigsty appeared on the HN front page, and adoption accelerated. In November 2025, it won the Magneto Award at the PostgreSQL Ecosystem Conference. In 2026, its PGEXT.CLOUD subproject was selected for a PGCon.Dev 2026 talk. Pigsty became the first Chinese open-source project represented at this core PostgreSQL ecosystem conference.
Pigsty initially supported only CentOS 7. It now supports EL, Debian, and Ubuntu across 16 operating system platforms, with PostgreSQL major versions 14-18. We integrate 600 PostgreSQL extensions. I personally maintain more than half (360+), with ready-to-use RPM/DEB packages. These packages and Pigsty itself are our contributions back to the open-source PostgreSQL ecosystem.
Pigsty has evolved from a PostgreSQL distribution into an open-source cloud database. It aims to match the full database service offerings of cloud vendors.
Rebel Against Public Clouds
AWS, Azure, GCP, and Aliyun make infrastructure convenient for startups. However, their services are closed-source and require ongoing rental fees that we consider excessive.
We believe high-quality database services should be as accessible as database kernels. Users should not have to rent them at high prices.
Cloud computing provides agility and elasticity. We believe these benefits should also be free, open-source, inclusive, and local-first. An open-source alternative should return infrastructure control to users while retaining cloud benefits.
I want everyone to have practical freedom to use high-quality services. Access should not depend on renting from a few large public cloud vendors.
Pigsty aims to provide a better, free and open-source RDS alternative. Its goal is one-click database deployment anywhere, including cloud servers, with capabilities beyond cloud RDS.
Pigsty complements PostgreSQL and challenges cloud database services. Its name means “pigsty” and abbreviates Postgres In Great STYle: “PostgreSQL in its full glory.”
Pigsty is free and open-source software. Its aim is to provide a strong PostgreSQL service without requiring database experts. Premium consulting services fund development and provide further improvements, warranty, answers, and expert support.
A well-built system can run for years without expert intervention. However, database failures can have serious consequences. Expert help can resolve difficult incidents. We believe paid consulting supports a fair and sustainable open-source model.
About the Team
I am Feng Ruohang, the author of Pigsty. Almost all of Pigsty’s code is developed by me alone.
Individual developers can create distinctive software. I hope Pigsty becomes such a project.
If you’re interested in me, here’s my personal homepage: https://vonng.com/
Highlights: Kafka KRaft and MySQL 8.4 pilot modules, Valkey in REDIS, Silo as the MINIO backend, 575 total extensions, cluster-identity-aware orchestration, and offline packages for all seven recommended OS versions.
2026-07-10: Pigsty v4.4.0 officially released: PG19 beta support and 531 extensions
PG High Availability & Disaster Recovery Best Practices
2023-03-23
Live Stream
Bytebase x Pigsty
Best Practices for Managing PostgreSQL: Bytebase x Pigsty
2023-03-04
Tech Summit
PostgreSQL China Conference
Challenging RDS, Pigsty v2.0 Release
2023-02-01
Tech Summit
DTCC 2022
Open Source RDS Alternative: Battery-Included, Self-Driving Database Distro Pigsty
2022-07-21
Live Debate
Cloud Swallows Open Source
Can Open Source Strike Back Against Cloud?
2022-07-04
Interview
Creator’s Story
Post-90s Developer Quits to Start Up, Aiming to Challenge Cloud Databases
2022-06-28
Live Stream
Bass’s Roundtable
DBA’s Gospel: SQL Audit Best Practices
2022-06-12
Demo Day
MiraclePlus S22 Demo Day
User-Friendly Cost-Effective Database Distribution Pigsty
2022-06-05
Live Stream
PG Chinese Community Sharing
Pigsty v1.5 Quick Start, New Features & Production Cluster Setup
4 - Roadmap
Future feature planning, new feature release schedule, and todo list.
Release Strategy
Pigsty uses semantic versioning: <major>.<minor>.<patch>. Alpha/Beta/RC versions will have suffixes like -a1, -b1, -c1 appended to the version number.
Major versions introduce incompatible foundational changes and major features. Minor versions usually add features and small API changes. Patch versions provide bug fixes and package updates.
Pigsty plans one major release per year and usually 4-6 minor releases. Minor releases generally follow PostgreSQL minor releases within one month. See Release Notes for the full history.
Deploy with Specific Version Numbers
Pigsty develops using the main trunk branch. Please always use Releases with version numbers.
Unless you know what you’re doing, do not use GitHub’s main branch. Always check out and use a specific version.
Chinese users mainly use WeChat groups. There are seven active groups. Groups 1-4 are full. Add the assistant on WeChat for an invitation to another group.
To join, search for “Pigsty小助手” on WeChat (ID: pigsty-cc). Include or send “加群” (join group). The assistant will send an invitation.
For problems with Pigsty, ask the community for help. More diagnostic information improves the chance of a useful response.
Follow the Community Help Guide and provide enough information to diagnose the problem. Use this request template:
What happened? (Required)
Pigsty version and OS version (Required)
$ grep version pigsty.yml
$ cat /etc/os-release
$ uname -a
Some cloud providers customize operating system images. Identify the provider and image that you use. Describe any changes made after OS installation and any relevant LAN security or firewall rules.
Pigsty configuration file
Please don’t forget to redact any sensitive information: passwords, internal keys, sensitive configurations, etc.
cat ~/pigsty/pigsty.yml
What did you expect to happen?
Please describe what should happen under normal circumstances, and how the actual situation differs from expectations.
How to reproduce this issue?
Please tell us in as much detail as possible how to reproduce this issue.
Monitoring screenshots
If you are using the monitoring system provided by Pigsty, you can provide relevant screenshots.
Error logs
Provide logs that explain the error. A message such as “Failed to start xxx service” alone does not identify the cause.
You can query logs from Grafana / VictoriaLogs, or get logs from the following locations:
Syslog: /var/log/messages (rhel) or /var/log/syslog (debian)
The more information and context you provide, the more likely we can help you solve the problem.
6 - Privacy Policy
What user data does Pigsty software and website collect, and how will we process your data and protect your privacy?
Pigsty Software
For offline installation in a network-isolated environment, we receive no data about you.
During online installation, our servers or cloud provider servers log the requesting machine’s IP address and/or hostname and downloaded package names.
We will not share this information with other organizations unless required by law.
Pigsty’s primary domain is: pigsty.io. For mainland China, please use the registered mirror site pigsty.cc.
Pigsty Website
When you visit our website, our servers will automatically log your IP address and/or hostname in Nginx logs.
We store your email address, name, location, and similar information only when you submit it through a survey or website registration.
We collect this information to help us improve website content, customize web page layouts, and contact people for technical and support purposes. We will not share your email address with other organizations unless required by law.
This website uses Google Analytics, a web analytics service provided by Google, Inc. (“Google”). Google Analytics uses “cookies,” which are text files placed on your computer to help the website analyze how users use the site.
The information generated by the cookie about your use of the website (including your IP address) will be transmitted to and stored by Google on servers in the United States. Google will use this information to evaluate your use of the website, compile reports on website activity for website operators, and provide other services related to website activity and internet usage.
Google may also transfer this information to third parties if required by law or where such third parties process the information on Google’s behalf. Google will not associate your IP address with any other data held by Google.
You may refuse the use of cookies by selecting the appropriate settings on your browser, however, please note that if you do this, you may not be able to use the full functionality of this website. By using this website, you consent to the processing of data about you by Google in the manner and for the purposes set out above.
For questions, comments, or requests to delete personal data, email [email protected].
7 - License
Pigsty’s open-source licenses — Apache-2.0 and CC BY 4.0
License Summary
Pigsty core uses Apache-2.0; documentation uses CC BY 4.0.
Apache-2.0 is a permissive open-source license. You may freely use, modify, and distribute the software for commercial purposes. You do not need to open your own source code or adopt the same license.
What This License Grants
What This License Does NOT Grant
License Conditions
Commercial use
Trademark use
Include license and copyright notice
Modification
Liability & warranty
State changes
Distribution
Patent grant
Private use
Pigsty Documentation
Pigsty documentation sites (pigsty.cc, pigsty.io, pgsty.com) use Creative Commons Attribution 4.0 International (CC BY 4.0).
Required: Core capabilities that you cannot disable.
Recommended: Enabled by default. You can disable these through configuration.
Optional: Disabled by default. You can enable these through configuration.
Apache-2.0 License Text
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright (C) 2018-2026 Ruohang Feng, @Vonng ([email protected])
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
8 - Sponsor Us
Pigsty sponsors and investors list - thank you for your support of this project!
Sponsor Us
PostgreSQL community members develop Pigsty as free and open-source software. It integrates the PostgreSQL ecosystem and promotes PostgreSQL adoption. If it helps you, consider these ways to support the project:
Share your Pigsty use cases and experiences through articles, talks, and videos.
Allow us to mention your organization in “Users of Pigsty.”
Recommend/refer our project and services to friends, colleagues, and clients in need.
Follow our WeChat Official Account and share relevant technical articles to groups and your social media.
Angel Investors
Pigsty received investment through Miracle Plus S22, formerly YC China. We thank Miracle Plus and Dr. Qi Lu for their support.
Sponsors
Special thanks to Vercel for sponsoring pigsty and hosting the Pigsty website.
Special thanks to JetBrains for sponsoring Pigsty with JetBrains Open Source License
9 - User Cases
Pigsty customer and application cases across various domains and industries
Google Analytics page views and download statistics indicate approximately 100,000 Pigsty users. About half are in mainland China and half in other regions. They work in internet services, cloud computing, finance, autonomous driving, manufacturing, technology, ISV, and defense. Contact us to share your use case and logo. We offer one free consultation session in return.
Internet
Tantan: 200+ physical machines for PostgreSQL and Redis services
Bilibili: Supporting PostgreSQL innovative business
Cloud Vendors
Bitdeer: Providing PG DBaaS
Oracle OCI: Using Pigsty to deliver PostgreSQL clusters
Pigsty Professional/Enterprise subscription service - When you encounter difficulties related to PostgreSQL and Pigsty, our subscription service provides you with comprehensive support.
Pigsty combines tools from the PostgreSQL ecosystem with automated database management. It helps users use PostgreSQL, the world’s most popular database.
Pigsty resolves many PostgreSQL operational issues. Enterprise service quality also requires expert support and full coverage from the original provider. Pigsty Enterprise Edition adds these commercial services to the open-source edition. Choose services that meet your needs.
Consider a Pigsty subscription if you have any of these needs:
Run critical databases with strict SLA guarantees and full support coverage.
Get support for complex Pigsty and PostgreSQL issues.
Get guidance on PostgreSQL/Pigsty production practices.
Get expert help to interpret monitoring dashboards, identify performance bottlenecks and fault causes, and recommend actions.
Plan database architectures for security, disaster recovery, and compliance. Use your existing resources and business requirements.
Migrate other databases to PostgreSQL, or migrate and transform legacy instances.
Build observability systems, data dashboards, and visualization applications with Victoria/Grafana.
Move off the cloud to open-source RDS for PostgreSQL alternatives. Use solutions that are cloud-neutral and avoid vendor lock-in.
Get professional support for Redis/ETCD/Silo and extensions such as TimescaleDB/Citus.
Develop customized products and OEM branding with explicit commercial authorization.
Sell Pigsty as SaaS/PaaS/DBaaS, or provide technical services, consulting, and cloud services based on this distribution.
Note on /price: The /price page gives simplified global pricing in USD. It includes the Standard tier and preset node limits. This page gives detailed CNY pricing, delivery scope, and the OS/PG compatibility matrix. For technical compatibility, use this page and Supported Linux.
Pigsty Open Source Edition (OSS)Free and Open Source
Pigsty Open Source Edition uses the Apache-2.0 license. It includes all core features at no cost and provides no warranty. To report a defect, submit an Issue on GitHub.
Pigsty Open Source supports seven validated OS baselines on both x86_64 and aarch64. These are EL 9.8 / 10.2, Debian 12.15 / 13.6, and Ubuntu 22.04.5 / 24.04.4 / 26.04.0.
v4.5.0 provides offline bundles for both architectures on each baseline. All fourteen artifacts are free to download. See the offline installation guide.
The open-source edition gives junior development and operations engineers 70%+ of professional DBA capabilities. They can build highly available, high-performance PostgreSQL clusters without database experts. These clusters are secure, reliable, and easy to maintain.
Code
OS Distribution Version
x86_64
aarch64
PG18
PG17
PG16
PG15
PG14
EL10
RHEL 10 / Rocky10 / Alma10
el10.x86_64
el10.aarch64
EL9
RHEL 9 / Rocky9 / Alma9
el9.x86_64
el9.aarch64
U26
Ubuntu 26.04 (resolute)
u26.x86_64
u26.aarch64
U24
Ubuntu 24.04 (noble)
u24.x86_64
u24.aarch64
U22
Ubuntu 22.04 (jammy)
u22.x86_64
u22.aarch64
D13
Debian 13 (trixie)
d13.x86_64
d13.aarch64
D12
Debian 12 (bookworm)
d12.x86_64
d12.aarch64
= Primary support, = Optional support
Pigsty Professional Edition (PRO)
Professional Edition Subscription: Starting Price ¥150,000 / year
Pigsty Professional Edition includes all functional modules and a warranty for Pigsty. For PostgreSQL and extension defects, we make our best efforts to report issues and provide fixes through the global PostgreSQL developer community.
Professional Edition builds on the open-source edition and supports all its features. It adds modules and more database and OS options. We provide builds for all minor versions of eight Linux releases: EL8/9/10, Debian 12/13, and Ubuntu 22/24/26.
Professional Edition supports PostgreSQL 14 - 18 and continuously follows upstream minor updates. Active major versions typically receive updates on the release day or shortly after. This supports smooth rolling upgrades to newer major and minor versions.
Professional Edition includes China mainland software repository mirrors that work without a VPN or proxy. We also customize offline installation packages for your exact OS major and minor version. These packages support installation and delivery in air-gapped environments under your control.
Professional Edition includes standard expert consulting, such as complex issue analysis, DBA Q&A, and backup compliance advice. We respond during business hours (5x8). The subscription includes 1 person-day of support per year. You can buy additional person-days.
Professional Edition uses a commercial license. It includes additional modules, technical support, and warranty services.
Professional Edition starts at ¥150,000 / year. This is equivalent to the annual fee for 9 vCPU AWS high-availability RDS PostgreSQL. It is also comparable to a junior operations engineer with a monthly salary of 10,000 yuan.
Code
OS Distribution Version
x86_64
aarch64
PG18
PG17
PG16
PG15
PG14
EL10
RHEL 10 / Rocky10 / Alma10
el10.x86_64
el10.aarch64
EL9
RHEL 9 / Rocky9 / Alma9
el9.x86_64
el9.aarch64
EL8
RHEL 8 / Rocky8 / Alma8 / Anolis8
el8.x86_64
el8.aarch64
U26
Ubuntu 26.04 (resolute)
u26.x86_64
u26.aarch64
U24
Ubuntu 24.04 (noble)
u24.x86_64
u24.aarch64
U22
Ubuntu 22.04 (jammy)
u22.x86_64
u22.aarch64
D13
Debian 13 (trixie)
d13.x86_64
d13.aarch64
D12
Debian 12 (bookworm)
d12.x86_64
d12.aarch64
Pigsty Enterprise Edition
Enterprise Edition Subscription: Starting Price ¥400,000 / year
Enterprise Edition includes all Professional Edition services and the following additional services:
Enterprise Edition provides the widest range of database and OS version support. It extends support to EOL systems (EL7, D11), domestic operating systems, and cloud vendor operating systems. It also supports legacy PostgreSQL major versions (PG12+ on request) and fully supports Arm64 chips.
Enterprise Edition provides domestic innovation and localization solutions. You can replace native PostgreSQL with the PolarDB v2.0 kernel to meet local compliance requirements. You must purchase this kernel license separately.
Enterprise Edition provides consulting with a 7x24, (< 1h) response SLA. It also supports version upgrades, performance bottleneck analysis, annual architecture reviews, extension integration, and other tasks.
Enterprise Edition includes 2 person-days of support per year for complex tasks that need more time. You can buy additional person-days.
Enterprise Edition permits DBaaS use. You can build cloud database services for external sales.
Enterprise Edition starts at ¥400,000 / year. This is equivalent to the annual fee for 24 vCPU AWS high-availability RDS. It is also comparable to an operations expert with a monthly salary of 30,000 yuan.
Code
OS Distribution Version
x86_64
aarch64
PG18
PG17
PG16
PG15
PG14
PG13
PG12
EL10
RHEL 10 / Rocky10 / Alma10
el10.x86_64
el10.aarch64
EL9
RHEL 9 / Rocky9 / Alma9
el9.x86_64
el9.aarch64
EL8
RHEL 8 / Rocky8 / Alma8 / Anolis8
el8.x86_64
el8.aarch64
U26
Ubuntu 26.04 (resolute)
u26.x86_64
u26.aarch64
U24
Ubuntu 24.04 (noble)
u24.x86_64
u24.aarch64
U22
Ubuntu 22.04 (jammy)
u22.x86_64
u22.aarch64
D13
Debian 13 (trixie)
d13.x86_64
d13.aarch64
D12
Debian 12 (bookworm)
d12.x86_64
d12.aarch64
D11
Debian 11 (bullseye)
d11.x86_64
d11.aarch64
EL7
RHEL7 / CentOS7 / UOS …
el7.x86_64
-
Pigsty Subscription Notes
Feature Differences
Professional and Enterprise Editions add the following features to the open-source edition:
Command Line Management Tool: Unlock the full functionality of the Pigsty command line tool (pig)
System Customization Capability: Use offline installation packages built for exact major and minor versions of mainstream Linux distributions.
Offline Installation Capability: Complete Pigsty installation in environments without Internet access (air-gapped environments)
Multi-version PG Kernel: Choose and install a supported PostgreSQL major version (14 - 18).
Kernel Replacement Capability: Replace native PostgreSQL with a compatible kernel. You can also install these kernels offline.
Babelfish: Provides Microsoft SQL Server wire protocol-level compatibility
IvorySQL: Based on PG, provides Oracle syntax/type/stored procedure compatibility
PolarDB PG: Provides support for open-source PolarDB for PostgreSQL kernel
PolarDB O: Domestic innovation database with Oracle-compatible kernel for local compliance requirements (Enterprise Edition subscription only)
Extension Support Capability: Install 600 available PG extensions for PG 14-18 on mainstream operating systems.
Complete Functional Modules: Provides all functional modules:
Silo: Enterprise PB-level object storage planning and self-hosting
DuckDB: Provides comprehensive DuckDB support, and PostgreSQL + DuckDB OLAP extension plugin support
Kafka: Provides high-availability Kafka cluster deployment and monitoring
Kubernetes, VictoriaMetrics & VictoriaLogs
Domestic Operating System Support: Provides domestic innovation OS support options (Enterprise Edition subscription only)
Domestic ARM Architecture Support: Provides domestic ARM64 architecture support options (Enterprise Edition subscription only)
China Mainland Mirror Repository: Install without a VPN. Use domestic YUM/APT mirrors and a DockerHub access proxy.
Chinese Interface Support: Monitoring system Chinese interface support (Beta)
Payment Model
Pigsty subscriptions use annual payments. The one-year term starts on the contract date. Payment before the contract expires counts as automatic renewal.
Consecutive subscriptions receive discounts. The first renewal (second year) receives a 95% discount. The second and subsequent renewals receive a 90% discount on subscription fees. A single subscription for three years or more receives an overall 85% discount.
You can choose not to renew when the annual contract ends. Software updates, technical support, and consulting services then stop. You can continue to use the installed Professional Edition software.
If you later subscribe again, you do not need to pay subscription fees for the interruption period. All discounts and benefits reset.
Pigsty subscriptions include expert database architecture plans, management practices, consulting, and support coverage. The price is competitive with full-time database experts and cloud databases. The following references show enterprise database professional service pricing:
Oracle Annual Service Fee: (Enterprise $47,500 + Rac $23,000) * 22% per year, equivalent to 28K/year (per vCPU)
The reference price for professional database services is 10,000 ~ 20,000 yuan / year per vCPU. A vCPU is one CPU thread (1 Intel core = 2 vCPU threads).
Pigsty provides PostgreSQL expert services in China with per-node billing. This model reduces costs and improves efficiency on servers with many cores.
Pigsty Expert Services
Pigsty also provides on-demand PostgreSQL and Pigsty expert services:
Expert Advisor: ¥300,000 / three years
Includes 10 complex PostgreSQL and Pigsty case sessions over three years, plus unlimited Q&A.
Expert Support: ¥30,000 / person·day
Get on-site expert support for architecture, fault analysis, troubleshooting, database health checks, and monitoring interpretation. Support also covers migration assessment, training, cloud migration, cloud exit, and other tasks that need continuous expert time.
Expert Consultation: ¥3,000 / case
Ask experts about Pigsty, PostgreSQL, databases, cloud computing, AI, and related topics. Get their analysis and advice.
Quick Consultation: ¥300 / question
Get a diagnostic opinion or response about PostgreSQL, Pigsty, or databases. Each consultation lasts no more than 5 minutes.
Contact Information
Send an email to [email protected]. Users in mainland China can add WeChat ID RuohangFeng.
11 - FAQ
Answers to frequently asked questions about the Pigsty project itself.
What is Pigsty, and what is it not?
Pigsty is a PostgreSQL distribution and a local-first, open-source RDS solution. It provides tools and operational practices for managing a DBMS. It is not itself a Database Management System (DBMS).
For comparison, a database is a car, a DBA is its driver, and RDS is a taxi service. Pigsty provides software to automate driving.
What problem does Pigsty solve?
Database operational expertise is scarce. Users can hire experts, rent managed RDS, or use Pigsty to automate database management. Pigsty helps users build efficient, high-quality local database services without a DBA, at less than 1/10 the cost of RDS.
Who are Pigsty’s target users?
Pigsty serves two main groups. Medium and large companies use it to build large production PostgreSQL RDS / DBaaS services. Extensive customization supports demanding management requirements, with enterprise support and service guarantees.
Individual developers, smaller companies without DBAs, and open-source communities can use its ready-to-use PostgreSQL RDS solution.
Why can Pigsty help you use databases well?
Pigsty packages expert experience from large, complex PostgreSQL deployments into repeatable software. It handles extension installation, high availability, connection pooling, monitoring, backups, recovery, parameter tuning, IaC management, and automated installation and operations. These established methods help prevent common mistakes.
Why is Pigsty better than RDS?
Pigsty provides features and infrastructure beyond RDS, including 600 extensions and 12+ kernels. It includes a professional monitoring system and architecture developed in complex production environments.
Its design incorporates experience from Tantan, Apple, and Alibaba. This supports deeper customization than a uniform RDS offering.
Why is Pigsty cheaper than RDS?
Pigsty can run services equivalent to 400¥-1400¥/core·month RDS on hardware costing 10 ¥/core·month, while avoiding a dedicated DBA salary. Large deployments can typically reduce total cost of ownership (TCO) by more than 90% compared with RDS.
Pigsty reduces software licensing, service, and labor costs. Self-hosting does not require additional staff.
How does Pigsty help developers?
Pigsty integrates 600 PostgreSQL extensions for an All-in-PG architecture. PostgreSQL can replace separate Redis, Kafka, MySQL, ES, vector database, OLAP, and big data analysis components.
This reduces system complexity and improves development efficiency. Developers can manage databases and perform DevOps tasks themselves without a DBA.
How does Pigsty help operations?
Self-healing high availability reduces the need for immediate hardware repair. Monitoring supports diagnosis and performance tuning. IaC automates management of large clusters.
Operations engineers can perform DBA tasks with Pigsty. DBAs can skip infrastructure construction and use that time for higher-value work, learning PostgreSQL, or rest.
Who is the author of Pigsty?
Feng Ruohang is Pigsty’s primary developer. He is an open-source contributor and database expert with 10 years of PostgreSQL experience, formerly at Alibaba, Tantan, and Apple. He now operates a one-person consulting company.
He writes the WeChat database account “非法加冯” (Illegally Add Feng) and has 60,000+ followers across platforms.
What is Pigsty’s ecosystem position and influence?
Pigsty is an influential Chinese project in the global PostgreSQL ecosystem, with about 100,000 users, half outside China. It is active in extension distribution and monitoring.
PGEXT.Cloud is Pigsty’s PostgreSQL extension repository. It distributes the largest collection of PostgreSQL extensions and supplies packages to several international PostgreSQL vendors.
Pigsty is a major PostgreSQL distribution and competes with cloud vendor RDS. It is widely used in defense, government, healthcare, internet, finance, manufacturing, and other industries.
What scale of customers is Pigsty suitable for?
Pigsty began with automated management of large PostgreSQL deployments. It also provides a simplified workflow for individual developers and smaller companies without professional DBAs.
The largest deployment has 25K vCPU and 4.5 million QPS, with 6+ years of operation. Demo or Devbox deployments can run on a 1c1g VM.
What capabilities does Pigsty provide?
Pigsty focuses on integrating the PostgreSQL ecosystem and providing PostgreSQL best practices, but also supports a series of open-source software that works well with PostgreSQL. For example:
Etcd, Redis, Silo, DuckDB, Prometheus
FerretDB, Babelfish, IvorySQL, PolarDB, OrioleDB
OpenHalo, Supabase, Greenplum, Dify, Odoo, …
What scenarios is Pigsty suitable for?
Running large-scale PostgreSQL clusters for business
Self-building RDS, object storage, cache, data warehouse, Supabase, …
Self-building enterprise applications like Odoo, Dify, Wiki, GitLab
Running monitoring infrastructure, monitoring existing databases and hosts
Using multiple PG extensions in combination
Dashboard development and interactive data application demos, data visualization, web building
Is Pigsty open source and free?
Pigsty is 100% open-source and free software. You can use it, including for commercial purposes, under its license terms.
We value software freedom. Pigsty uses the Apache-2.0 license. Please see the license for details.
Does Pigsty provide commercial support?
Pigsty is free and open-source. Commercial subscriptions provide quality assurance for Pigsty and PostgreSQL at different budgets. They extend OS, PostgreSQL, and chip architecture support and provide expert consulting. This support transfers management experience, saves time, and helps manage difficult incidents and risks.
Does Pigsty support domestic innovation (信创)?
Pigsty is not itself a database and is not subject to domestic innovation catalog restrictions. It has several military use cases. The open-source edition provides no domestic innovation support. Commercial subscriptions provide solutions with Alibaba Cloud, using qualified PolarDB-O as the RDS kernel. PolarDB-O requires a separate purchase and can run on domestic innovation operating systems and chips.
Can Pigsty run as a multi-tenant DBaaS?
Pigsty uses the Apache-2.0 license. You may use it for DBaaS purposes under the license terms.
For explicit commercial authorization, consider the Pigsty Enterprise subscription.
Can Pigsty’s Logo be rebranded as your own product?
When redistributing Pigsty, retain the original copyright, patent, trademark, and attribution notices. Preserve LICENSE content and add prominent change notices to modified files. Under these conditions, you can replace the PIGSTY logo and trademark, but cannot claim the original work as your own. The enterprise edition provides commercial licensing support for OEM and rebranding.
Pigsty’s Business Entity
Pigsty is a project invested by Miracle Plus S22. The original entity Panji Cloud Data (Beijing) Technology Co., Ltd. has been liquidated and divested of the Pigsty business.
Pigsty is currently independently operated and maintained by author Feng Ruohang. The business entities are:
Hainan Zhuxia Cloud Data Co., Ltd. / 91460000MAE6L87B94
Haikou Longhua Piji Data Center / 92460000MAG0XJ569B
Haikou Longhua Yuehang Technology Center / 92460000MACCYGBQ1N
PIGSTY® and PGSTY® are registered trademarks of Haikou Longhua Yuehang Technology Center.
Pigsty v4.5.0 adds pilot modules, replaceable data services, and orchestration based on cluster identity. It also improves observability and the software supply chain. The release adds Kafka KRaft, MySQL 8.4, and Valkey support, and makes Silo the MINIO backend. The packaged extension catalog grows from 531 to 575 extensions. Released on 2026-08-15. See the GitHub release and full source comparison at v4.4.0...v4.5.0.
Highlights
575 extensions: Adds 46 entries and removes 2 from the 531 entries in v4.4.0, for a net increase of 44. The catalog now contains 575 extensions across 406 non-contrib package families. It tracks RPM/DEB coverage for each platform.
Kafka KRaft module: Adds native Pigsty orchestration for Kafka and supports multiple clusters. It includes dynamic member enrollment and retirement, SCRAM/TLS, secure credential rotation, monitoring metrics, and Grafana dashboards.
MySQL 8.4 module: Adds standalone and three-node InnoDB Cluster deployments. It includes MySQL Router, XtraBackup, user and database provisioning, monitoring, alerting, and idempotent reconciliation.
Valkey and Silo: REDIS adds redis_type: valkey; the final MINIO source accepts only minio_type: silo. The RustFS integration developed during this cycle was fully withdrawn before the candidate baseline.
51 standalone configuration templates: Adds demo/kafka, demo/mysql, and the eight-node ha/octo simulation template to the 48 standalone templates in v4.4.0. The compatibility symlink conf/app/supa.yml → ../supabase.yml remains available.
Safer cluster-identity orchestration: PGSQL, REDIS, MINIO, KAFKA, and MYSQL initialization playbooks skip unrelated hosts by explicit cluster identity. Their removal playbooks do the same, except mysql-rm.yml. That playbook stops with an error for any incorrectly selected host. etcd delegation and DBSU key exchange now use actual cluster members.
Observability and supply chain: Re-exports Grafana dashboards to Dashboard API v2 and moves MinIO/Silo collection to Metrics V3. Generates local repositories atomically with SOW and removes synthetic ModuleMD metadata.
Kernel and toolchain updates: Completes pgBackRest support for PostgreSQL 19 beta2 and enables cluster mode for Percona PostgreSQL TDE. Fixes IvorySQL initialization and WAL compression. Updates extension package maps, exporters, and build tooling.
New Modules and Data Services
The Kafka module uses node state as the source of truth for dynamic KRaft orchestration. It manages one or more clusters in one inventory. It supports a kafka.yml run without a limit and rejects partial --limit selections.
The destructive kafka-rm.yml requires a non-empty -l/--limit. Before partial retirement can stop services, it validates a safe absolute data path and surviving broker/controller anchors.
Nodes retain authoritative manifests and secrets. Supported operations include dynamic controller joins, broker admission, member retirement, and three-step dead-node replacement. The module supports SCRAM-SHA-512/TLS, credential and certificate rotation, and self-tested partition health checks.
The MySQL pilot module uses a fixed MySQL 8.4 LTS platform. It accepts a standalone node or a three-node InnoDB Cluster. It includes MySQL Shell and Router, scheduled full XtraBackup backups, TLS, and account and database provisioning. It also includes primary-key policy checks, conservative member removal, and idempotent reconciliation.
The REDIS module retains redis as its default engine and supports Valkey through redis_type: valkey. Service units now use Type=notify with a 1,800-second startup timeout. This release also improves topology validation, password handling, tag-scoped removal behavior, and rebuild protection.
The MINIO module now deploys only Silo. minio_type remains an extension point, but this release accepts only silo. At startup, the module checks the systemd Invocation ID and ActiveState=active for the current restart. It waits about 600 seconds by default, then runs the Silo cluster health check.
Infra packages add silo and mcli. They preserve the S3/Admin APIs, /minio/* routes, MINIO_* environment variables, and disk format.
minio_cluster groups the object-storage topology. Its inventory group name can differ, and one inventory can contain multiple object-storage clusters. Use distinct minio_alias, minio_domain, and minio_endpoint values for each cluster. This prevents shared client aliases on INFRA nodes from being overwritten. demo/minio now selects Silo explicitly and limits its local repository to the infra,node modules.
The standalone FERRET module is replaced by PostgreSQL Mongo mode and the FerretDB Docker APP. PostgreSQL provides the DocumentDB data layer, while Docker Compose provides the FerretDB protocol layer.
Orchestration, Security, and Tooling
deploy.yml, slim.yml, and PGSQL, REDIS, MINIO, KAFKA, and MYSQL initialization playbooks now skip unrelated hosts by their *_cluster identity. PGSQL, REDIS, MINIO, and KAFKA removal playbooks do the same. mysql-rm.yml does not skip hosts without identity. It stops with an error in mysql_rm_check. Every host that enters a role still receives an internal identity check.
PGSQL configuration, PITR, and removal workflows delegate only if the canonical etcd group exists and has at least one member. They no longer silently fall back to localhost when no etcd target exists. DBSU SSH key exchange uses the actual pg_cluster_members. This supports topologies that cross inventory groups, such as Citus.
PGSQL PITR and removal now delete only the etcd subtree bounded by /<cluster>/. This protects adjacent clusters whose names share a prefix. Pigsty writes the initial pgBackRest marker /etc/pgbackrest/initial.done only after the backup command succeeds.
HAProxy uses the fixed /etc/haproxy/haproxy.cfg and /etc/haproxy/conf.d layout, upstream master-worker mode, a master socket, and Type=notify. dnsmasq now binds dynamically, answers private reverse lookups locally, and handles node addresses added after INFRA initialization.
Pigsty places its rendered systemd units under /etc/systemd/system. This release further restricts permissions on sensitive configuration and privileged files. Removal workflows stop services before data cleanup.
REPO and CACHE now use sow create --pigsty to generate RPM/APT metadata and the SHA-256 repo_complete marker atomically. They no longer generate synthetic ModuleMD metadata. pg_id also compares cluster size as an explicit integer for older Ansible releases.
RPM exporter package names move from underscores to hyphens, for example node_exporter → node-exporter. Debian repository naming and PGDG YUM extension package mappings are corrected as well.
Tuned profiles use /etc/tuned/profiles on EL 10, Debian 13, and Ubuntu 26. They use /etc/tuned on EL 8/9, Debian 12, and Ubuntu 22/24. Debian/Ubuntu package installation also prevents premature starts of Silo, Redis/Valkey, and legacy log services.
This release updates China-region repository routing. OS, Docker, Grafana, Percona, supported MongoDB APT, and uv/PyPI paths prefer Tencent Cloud. EL and Docker entries retain Huawei Cloud and Aliyun fallbacks where appropriate. MySQL and Kubernetes use USTC mirrors, and ClickHouse uses Huawei Cloud. MongoDB RPM no longer advertises an unavailable China-region alternative. roles/node_id/vars/<os>.<arch>.yml defines the final choices for each platform.
The Docker image moves to Debian 13.6 and Pigsty v4.5.0. Vagrant enforces a 32 GiB root disk, accepts pinned box versions, and adds the eight-node ha/octo lab. docker/Makefile fixes its data directory at ./data, and make purge deletes that directory directly.
GitHub Actions for checkout, CodeQL, Docker build/login, and Cosign are upgraded in one batch. Release, bootstrap, install, and validation scripts also tighten file and argument handling. Release archives now derive top-level pigsty.yml from conf/meta.yml, include the Kafka/MySQL playbooks, and drop the legacy Mongo playbook.
Run the release-signing workflow from main. It signs only the pigsty-<tag>.tgz source archive and excludes multi-gigabyte offline bundles. The package-build bootstrap matrix now matches conf/build/oss.yml: EL 9/10, Debian 12/13, and Ubuntu 22/24/26.
Observability
Re-exports the dashboard set through the Pig/Grafana tooling to Dashboard API v2. Adds four Kafka and five MySQL dashboards, and refreshes links, variables, and layouts across Node, PostgreSQL, Redis, and Infra dashboards.
Migrates the MinIO/Silo Overview and Instance dashboards to Metrics V3. Victoria scrapes the /minio/metrics/v3 root endpoint and drops high-cardinality samples carrying a non-empty bucket label.
Updates the pg_exporter configuration to 1.4.0. Fixes duplicate time series from the 1.4.1 pg_subrel query. PG19 gains pg_sub_19, pg_recovery_state, pg_wal_19, pg_lock_stat, and pg_vacuum_score. PG10+ gains the pg_xact_age transaction-age histogram. The update also covers replication-slot idle_timeout and WAL Receiver connecting state encoding. Kafka JMX/protocol exporters and the MySQL exporter join the standard target and alert pipelines.
PostgreSQL Kernels and Extension Packages
PostgreSQL 19 beta3 templates now include pgBackRest packages and backup support.
All four standard Patroni templates add the PostgreSQL 18.6 logical-decoding allowlist output_plugin_libraries: 'pgoutput, test_decoding, wal2json'. Patroni filters it on older PostgreSQL versions that do not support this setting.
Percona PostgreSQL 18 TDE now uses cluster mode and retains Pigsty-prefixed packages to avoid conflicts with native PostgreSQL packages.
IvorySQL now initializes its default database correctly and enables compatible WAL compression in workload templates.
Updates the PostgreSQL fact loader, per-platform package_map, and default extension groups. These changes fill package gaps and correct PGDG/YUM naming. Compared with the v4.4.0 PIG v1.5.1 catalog, the current catalog adds 46 names and removes 2:
13 child extensions from those package families: hstore_plruby, jsonb_plruby, ltree_plruby, pg_extension_base, pg_extension_updater, pg_lake_copy, pg_lake_engine, pg_lake_iceberg, pg_lake_table, pg_map, pgcontext_pgvector, pgfr_analyze, and qdgc_postgis.
One new PGDG extension, pg_statviz. Its package is hidden from the default install group, but the extension remains in the online catalog.
Two catalog removals: pg_analytics and spat. The total therefore rises from 531 to 575, a net gain of 44.
Cumulative notable upgrades include citus 14.2.0, pg_search 0.25.2, timescaledb 2.29.1, vector 0.8.6, documentdb 0.114, pg_partman 5.5.0, pgmnemo 0.16.1, plpgsql_check 2.10.4, provsql 1.12.0, and pgbson 2.1.0, plus a broad pgrx 0.19.1 rebuild.
The merged table below and the original RPM changelog and DEB changelog give full build records and platform differences. New catalog entries include pg_local_cache and pg_policy. Changelog dates identify package batches. They do not necessarily match the current CSV mtime for each entry.
pg_statviz is excluded only from the default install group in db/reload.sql; its detail page, platform coverage, and package-name differences remain in the online catalog.
Extension Package Update Log
The table below merges the RPM changelog and DEB changelog after v4.4.0. It has 231 rows aligned by batch and extension name. Identical RPM and DEB records share a row. Version or note differences appear separately. An unchanged version still indicates a rebuild, package-name change, license-metadata change, or platform-coverage change.
The first extension batch after July 10 is July 24. The original batch covers July 7–24 without dates for individual items. The full batch appears here to retain post-release pgrx rebuilds and package-matrix fixes. “RPM only” or “DEB only” means the other changelog has no row for that extension in the same batch.
The following table contains all 144 Infra log records after v4.4.0, from 2026-07-16 through the latest batch on 2026-08-12. It also includes the ferretdb2 rebuild and RPM exporter package-name migration from the changelog prose. Consecutive upgrades of the same package remain separate batch entries.
Build, download, and verification status uses the original log wording. It does not confirm repository indexing, signing, synchronization, or offline-bundle acceptance. For full context, see the Infra changelog.
Batch
Package
Old Version
New Version
Notes
2026-08-12
claude
2.1.226
2.1.227
Official manifest verified via proxy; dual-arch RPM/DEB built
2026-08-12
code-server
4.131.0
4.132.0
Official dual-architecture RPM/DEB downloaded and verified
2026-08-12
grafana-infinity-ds
3.11.2
3.11.3
Built as dual-architecture RPM/DEB
2026-08-12
mtail
3.4.6
3.4.7
Built as dual-architecture RPM/DEB
2026-08-12
opencode
1.18.15
1.18.16
Built as dual-architecture RPM/DEB
2026-08-12
pg-hardstorage
1.1.1
1.2.1
Official dual-architecture RPM/DEB downloaded and verified
2026-08-12
pig
1.6.1
1.8.0
Official dual-architecture RPM/DEB downloaded and verified
Exact-match dual-architecture airgap images; built
2026-08-07
mcli
20260804000000
20260806000000
Official pgsty fork dual-architecture RPM/DEB verified
2026-08-07
opencode
1.18.13
1.18.14
Built as dual-architecture RPM/DEB
2026-08-07
pgschema
1.12.1
1.12.2
Official dual-architecture RPM/DEB verified
2026-08-07
seaweedfs
4.40
4.41
Built as dual-architecture RPM/DEB
2026-08-07
silo
minio 20260804000000
20260806000000
Official replacement; dual-architecture RPM/DEB verified
2026-08-07
uv
0.12.1
0.12.2
Built as dual-architecture RPM/DEB
2026-08-07
victoria-metrics
1.148.0
1.149.0
Main, cluster, and vmutils packages built for both arches
2026-08-07
ferretdb2
2.7.0
2.7.0
Rebuilt at the current version for dual-architecture RPM/DEB
2026-08-05
agentsview
0.39.0
0.40.1
Built as dual-architecture RPM/DEB
2026-08-05
claude
2.1.220
2.1.222
Official manifest verified via proxy; built
2026-08-05
code-server
4.130.0
4.131.0
Official artifacts downloaded and verified
2026-08-05
crush
0.87.0
0.88.0
Official links only; redistribution blocked
2026-08-05
grafana
13.1.1
13.1.2
Official artifacts verified; security fix
2026-08-05
juicefs
1.4.0
1.4.1
Built as dual-architecture RPM/DEB
2026-08-05
mcli
20260417000000
20260804000000
pgsty fork artifacts downloaded and verified
2026-08-05
minio
20260618000000
20260804000000
pgsty fork artifacts downloaded and verified
2026-08-05
mongodb-exporter
0.51.0
0.52.0
Built as dual-architecture RPM/DEB
2026-08-05
mtail
3.0.8
3.4.6
Built as dual-architecture RPM/DEB
2026-08-05
nodejs
24.18.1
24.19.0
Node.js 24.x LTS; built
2026-08-05
opencode
1.18.9
1.18.13
Built as dual-architecture RPM/DEB
2026-08-05
pg-hardstorage
1.0.17
1.1.1
Official artifacts downloaded and verified
2026-08-05
pgbackrest-exporter
0.23.0
0.24.0
Built as dual-architecture RPM/DEB
2026-08-05
pgstream
1.2.5
1.3.1
Built as dual-architecture RPM/DEB
2026-08-05
rclone
1.74.4
1.75.0
Official artifacts downloaded and verified
2026-08-05
rustfs
1.0.0-b11
1.0.0-b12
Beta line; built as dual-architecture RPM/DEB
2026-08-05
stalwart
0.16.15
0.16.16
Built as dual-architecture RPM/DEB
2026-08-05
uv
0.12.0
0.12.1
Built as dual-architecture RPM/DEB
2026-08-05
vray
5.51.2
5.52.0
Latest stable; built as dual-architecture RPM/DEB
2026-08-05
xray
26.3.27
26.7.28
Latest dated release; built as dual-architecture RPM/DEB
2026-08-05
prometheus
3.13.1
3.13.2
Security and stability release
2026-08-05
pig
1.6.0
1.6.1
Refreshed extension catalog
2026-07-30
agentsview
0.38.1
0.39.0
2026-07-30
claude
2.1.218
2.1.220
2026-07-30
cloudflared
2026.7.2
2026.7.3
2026-07-30
code
1.130.0
1.131.0
2026-07-30
code-server
4.129.0
4.130.0
2026-07-30
codex
0.145.0
0.146.0
Release tag rust-v0.146.0
2026-07-30
crush
0.86.0
0.87.0
2026-07-30
dblab
0.46.0
0.47.2
2026-07-30
etcd
3.7.0
3.7.1
2026-07-30
genai-toolbox
1.7.0
1.8.0
Source build; Rocky 8/9 and Debian 12 verified
2026-07-30
headscale
0.29.2
0.29.3
2026-07-30
nodejs
24.18.0
24.18.1
Security release
2026-07-30
opencode
1.18.4
1.18.9
2026-07-30
pg-exporter
1.4.0
1.4.1
Official release artifacts
2026-07-30
pg-hardstorage
1.0.13
1.0.17
2026-07-30
pgschema
1.12.0
1.12.1
2026-07-30
pgstream
1.2.2
1.2.5
2026-07-30
pig
1.5.1
1.6.0
2026-07-30
postgrest
14.15
14.16
2026-07-30
rainfrog
0.3.20
0.4.2
2026-07-30
redis-exporter
1.87.0
1.88.0
2026-07-30
rustfs
1.0.0-beta.10
1.0.0-beta.11
Preview releases excluded
2026-07-30
stalwart
0.16.14
0.16.15
2026-07-30
uv
0.11.31
0.12.0
2026-07-30
victoria-traces
0.9.4
0.10.0
2026-07-23
claude
2.1.215
2.1.218
Verified against the official manifest via proxy
2026-07-23
codex
0.144.6
0.145.0
Release tag rust-v0.145.0
2026-07-23
dblab
0.44.1
0.46.0
2026-07-23
duckdb
1.5.4
1.5.5
2026-07-23
grafana-infinity-ds
3.8.0
3.11.1
2026-07-23
grafana-victorialogs-ds
0.30.0
0.30.1
2026-07-23
opencode
1.18.3
1.18.4
2026-07-23
pg-timetable
6.3.0
7.0.0
Major release
2026-07-23
pgstream
1.2.0
1.2.2
2026-07-23
stalwart
0.16.13
0.16.14
2026-07-23
uv
0.11.29
0.11.31
2026-07-23
grafana
13.1.0
13.1.1
Direct-download artifacts
2026-07-23
pg-hardstorage
1.0.12
1.0.13
Direct-download artifacts
2026-07-23
crush
0.85.0
0.86.0
Direct-download artifacts
2026-07-23
code
1.129.1
1.130.0
Direct-download artifacts
2026-07-20
RPM exporter package names
xxx_exporter
xxx-exporter
Renamed underscore-style RPM packages to hyphenated names to match DEB naming
2026-07-20
pg-exporter
1.3.0
1.4.0
Repackaged from the upstream Linux tarball
2026-07-20
victoria-metrics
1.147.0
1.148.0
VictoriaMetrics main package
2026-07-20
victoria-metrics-cluster
1.147.0
1.148.0
VictoriaMetrics companion package
2026-07-20
vmutils
1.147.0
1.148.0
VictoriaMetrics companion package
2026-07-20
victoria-logs
1.51.0
1.52.0
VictoriaLogs main package
2026-07-20
vlogscli
1.51.0
1.52.0
VictoriaLogs companion package
2026-07-20
vlagent
1.51.0
1.52.0
VictoriaLogs companion package
2026-07-20
grafana-victorialogs-ds
0.29.0
0.30.0
2026-07-20
seaweedfs
4.39
4.40
2026-07-20
rustfs
1.0.0-b9
1.0.0-b10
Prerelease line; preview releases excluded
2026-07-20
sabiql
1.14.0
1.15.1
2026-07-20
timescaledb-tools
0.19.0-1
0.19.0-2
Bundles timescaledb-parallel-copy 0.13.0
2026-07-20
claude
2.1.211
2.1.215
Downloaded through the 8118 proxy and verified
2026-07-20
codex
0.144.4
0.144.6
Release tag rust-v0.144.6
2026-07-20
genai-toolbox
1.6.0
1.7.0
External build from official GCS binary and arm64 container artifact
2026-07-20
opencode
1.18.2
1.18.3
2026-07-20
pg-hardstorage
1.0.10
1.0.12
Direct-download artifacts
2026-07-20
code
1.129.0
1.129.1
Direct-download artifacts
2026-07-20
code-server
4.128.0
4.129.0
Direct-download artifacts
2026-07-20
pev2
1.22.0
1.23.0
Noarch package
2026-07-20
k3s
-
1.36.2
Upstream v1.36.2+k3s1; amd64 and arm64
2026-07-20
k3s-images
-
1.36.2
Exact-match system image package for both architectures
2026-07-16
jmx-exporter
-
1.6.0
New noarch package
2026-07-16
node_exporter
1.11.1
1.12.1
2026-07-16
redis_exporter
1.86.0
1.87.0
2026-07-16
etcd
3.6.13
3.7.0
2026-07-16
dblab
0.43.0
0.44.1
2026-07-16
pgstream
1.1.1
1.2.0
2026-07-16
rainfrog
0.3.19
0.3.20
2026-07-16
rustfs
1.0.0-b8
1.0.0-b9
Prerelease line
2026-07-16
agentsview
0.37.5
0.38.1
2026-07-16
claude
2.1.206
2.1.211
Downloaded through the 8118 proxy and verified
2026-07-16
codex
0.144.1
0.144.4
Release tag rust-v0.144.4
2026-07-16
stalwart
0.16.12
0.16.13
2026-07-16
npgsqlrest
3.20.0
3.21.0
2026-07-16
postgrest
14.14
14.15
2026-07-16
opencode
1.17.18
1.18.2
2026-07-16
uv
0.11.28
0.11.29
2026-07-16
vector
0.56.0
0.57.0
Direct-download artifacts
2026-07-16
pg-hardstorage
1.0.8
1.0.10
Direct-download artifacts
2026-07-16
crush
0.84.0
0.85.0
Direct-download artifacts
2026-07-16
code
1.128.0
1.129.0
Direct-download artifacts
2026-07-16
code-server
4.127.0
4.128.0
Direct-download artifacts
2026-07-16
cloudflared
2026.7.1
2026.7.2
Direct-download artifacts
Compatibility Changes and Upgrade Notes
Existing FERRET deployments should remove the legacy ferretdb systemd service. Redeploy the protocol layer with docker.yml and app.yml. This release removes the old mongo.yml playbook, mongo_* parameters, scrape job, and dedicated dashboard.
Pigsty no longer renders /etc/default/haproxy for the HAProxy unit. The unit can still read this file when present. Use only EXTRAOPTS for process arguments, not OPTIONS. Any EXTRAOPTS override must retain -S /run/haproxy-master.sock and must not include -f.
New module playbooks require each target host to define its pg_cluster, redis_cluster, minio_cluster, kafka_cluster, or mysql_cluster explicitly. If a custom inventory uses fixed group names without these identity variables, add the variables first.
The MINIO role accepts only minio_type: silo. Values minio and rustfs fail identity validation. Silo retains MinIO protocol and disk-format compatibility, but package, binary, and systemd service names change. Back up existing object storage before upgrading. Validate in-place compatibility and rollback before upgrading. Package replacement alone does not establish migration acceptance.
Valkey remains optional. redis_type: valkey installs valkey-server and valkey-cli. Configuration paths, service names, monitoring jobs, and other module interfaces remain under redis for compatibility.
Pigsty core REPO/CACHE roles require SOW. They use sow create --pigsty to generate local repositories. Older offline bundles or local repositories without SOW 0.3.0 must first install or update it from the Pigsty INFRA repository. pig repo create is a separate CLI operation. Its fallback behavior depends on the CLI version.
MySQL mysql_databases entries accept only name, encoding, and collate. Pigsty creates databases with DEFAULT ENCRYPTION='N'. mysql_parameters cannot bypass protection for platform-owned, replication, or TLS options through loose_, skip_, disable_, or enable_ prefixes.
Custom RPM repositories and external automation must replace underscore package names with hyphenated names. For example, replace node_exporter and redis_exporter with node-exporter and redis-exporter.
docker/Makefile no longer accepts DATA to redirect the cleanup target. make purge immediately deletes repository-local ./data, without a countdown. Preserve required data first.
KAFKA and MYSQL remain pilot modules. Kafka clients must resolve and reach each broker directly. Do not put the data plane behind HAProxy, a VIP, or an L4 load balancer. MySQL currently accepts exactly one or three members.
GitHub publishes all 14 validated offline artifacts for this release, one per recommended OS version and architecture. A checksums manifest accompanies them. Each file has a detached PGP signature (.asc).
Pigsty v4.4.0 is a maintenance release with PostgreSQL 18.4 and PostgreSQL 19 beta support. It includes 531 extensions, updated kernel variants, and broader platform coverage.
PostgreSQL 18.4 / 19 beta: PostgreSQL 18.4 is now the production default, with a minimal PostgreSQL 19 beta template for evaluation.
531 extensions and refreshed kernels: The catalog adds 21 extensions and updates major PostgreSQL variants across the supported platform matrix.
Safer operations with Pig 1.5.1: Adds clone, fork, and PITR workflows. Also adds automatic VIP discovery, Zstandard pgBackRest compression, and dedicated Patroni log collection.
Security, applications, and tooling: Improves secret handling and repository automation. Adds app templates, a redesigned portal, and optional Codex support.
Platform validation: All 14 offline deployment tests pass across seven OS baselines on both x86_64 and aarch64.
Offline artifacts: The Community Edition publishes six dual-architecture offline packages for Debian 13, EL 10, and Ubuntu 24.04 on GitHub. Prebuilt packages for the other validated baselines are available with the Professional Edition.
Upgrade Notes
Generated pgBackRest configurations now use compress-type=zst. Before rendering them again, preserve any intentional local overrides. #744
Patroni logs now use /pg/log/patroni and job=patroni. Update custom log queries and alert rules that use the old syslog selector.
VIP interfaces now default to auto. dnsmasq records move to /etc/dnsmasq.d/pigsty, and Pigsty manages /etc/default/haproxy. Preserve explicit network overrides where needed.
The default etcd backend quota drops from 16 GiB to 8 GiB. Check existing backend usage before applying the new configuration.
pig automation must use -y/--yes for destructive commands. pig pb restore and pig pitr require one explicit recovery target. See the pig v1.5 notes.
Supabase analytics moves to the _supabase database and _analytics schema. Existing deployments should create them before switching stacks.
Security and Operations
The pg-pitr wrapper adds safer target selection, timelines, dry runs, and stronger checks against unsafe recovery targets.
Ansible output hides application secrets. Generated .env files use mode 0600. Grafana no longer prints the administrator password.
The dbsu sudo policy adds controlled journal access. The repository adds a security policy, CodeQL, Dependabot, pinned actions, and release-signing automation.
Applications and Tooling
Added Immich, Maybe, and JumpServer templates; refreshed Supabase, Dify, InsForge, Registry, Jupyter, Kong, Odoo, Teable, Mattermost, and related launch helpers.
Rebuilt the bilingual infrastructure portal. Added optional Codex CLI support to the experimental VIBE module. Claude Code remains its default managed coding agent.
Removed the legacy FerretDB Compose template; the FERRET module remains available.
Reused an existing /www directory during bootstrap and fixed Redis Sentinel HA password rendering. #753#748
Corrected RPM naming and package groups for pg_http, pg_gzip, apache-age, and odbc_fdw. #750
Prevented unexpected service starts during Debian and Ubuntu package installation, and improved EL9 aarch64 Patroni package handling.
Fixed VirtualBox private-network routing and default NIC selection.
Fixed shell portability and Vector log lifecycle issues, along with PG19 io_workers, Teable HBA, and application runtime defaults.
PostgreSQL and Extension Package Changes
The release adds 21 extensions and updates the PostgreSQL 18.4 package graph. It introduces a PostgreSQL 19 beta template and updates major kernel variants. The versions below were verified against final repository metadata and the v4.4.0 artifacts where bundled. PG major ranges describe catalog and repository coverage.
The MD5 list below covers all 14 validated artifacts. GitHub publishes six Community Edition artifacts. The Professional Edition provides the remaining eight. GitHub records SHA-256 digests for the uploaded Community Edition artifacts.
New Extensions: Added pg_eviltransform to the GIS package group, pg_pinyin to FTS, and pg_qos to admin. All three support PG 14–18.
PG13 Removed: Removed all pgdg13 and pgdg13-nonfree repository entries and PG13 package aliases (pg13-*). This affects every platform variant: EL7/8/9/10, Debian 12/13, and Ubuntu 22/24/26, on both x86_64 and aarch64.
Config templates (fat.yml, pro.yml, dev.yml, el.yml, debian.yml) no longer reference PG13 packages or repos. Extension version comments are updated to reflect PG 14–18 coverage only.
Percona Repo: Origin URL updated from ppg-18.1 to ppg-18.3 to track the latest Percona PostgreSQL distribution.
Nginx Repo: Module tag for the Nginx upstream APT repo corrected from infra to nginx on Debian/Ubuntu platforms.
UV Venv Fix: roles/node/tasks/pkg.yml checks for an existing virtualenv before running uv venv. This prevents unnecessary re-creation and potential errors during repeat provisioning.
Docker Image: less is added to the Pigsty Docker image base packages.
Demo Config: Default firewall rules in el.yml and debian.yml demo configs now include port 5432 for direct PostgreSQL access.
Compatibility Notes
PostgreSQL 13 reached its end of life on 2025-11-13.
The PGDG YUM repository has archived and removed the pg13 / pg12 directories.
If you install Pigsty on EL systems (even without using PG 13), repo access failures may cause installation or update errors.
Upgrade directly to Pigsty v4.2.1, or remove the pg13 repository line manually. To remove it, edit repo_upstream_default in the file for your OS under roles/node_id/vars/.
EL8 remains a compatible Pigsty OS. Starting with this release, Pigsty no longer publishes offline packages for EL8.
This release has no other breaking API or configuration changes.
Aligned with PostgreSQL out-of-band minor updates: 18.3, 17.9, 16.13, 15.17, 14.22.
Total PostgreSQL extension coverage reaches 461 packages.
Kernel updates across Babelfish, AgensGraph, pgEdge, OriolePG, OpenHalo, and Cloudberry.
Babelfish template now uses a Pigsty-maintained PG17-compatible build, with no WiltonDB repo dependency.
Supabase images and self-hosted templates are refreshed to the latest stack, using Pigsty-maintained pgsty/minio.
Major Changes
mssql now defaults to Babelfish PG17 (pg_version: 17, pg_packages: [babelfish, pgsql-common, sqlcmd]) and no longer requires an extra mssql repo.
Kernel install paths are normalized in pg_home_map: mssql -> /usr/babelfish-$v/, gpsql -> /usr/local/cloudberry.
package_map adds a dedicated cloudberry mapping and fixes babelfish* aliases to versioned RPM/DEB package names.
The Redis data root default changes from /data to /data/redis. Deployment blocks legacy defaults, but redis_remove retains backward-compatible cleanup.
configure supports absolute -o output paths and creates parent directories automatically. It adds tri-state region detection (CN/global/offline fallback) and fixes behind_gfw() hangs.
Debian/Ubuntu default repo URL mappings (updates/backports/security) and China mirror components are corrected to prevent bootstrap package failures.
Supabase stack is updated (including PostgREST 14.5 and Vector 0.53.0) and now includes missing S3 protocol credential variables.
Rich/Sample templates explicitly define dbuser_meta defaults. This release also simplifies node.sh systemd completion.
pgbackrest stanza initialization now retries (2 attempts, 5-second interval) to reduce lock contention with archive-push.
Vibe template now ships @anthropic-ai/claude-code, @openai/codex, and happy-coder, and includes age in the default example.
PostgreSQL minor update: 18.2, 17.8, 16.12, 15.16, 14.21.
Default EL minors updated to 9.7 / 10.1, Debian minors updated to 12.13 / 13.3.
Added 7 new extensions, bringing total support to 451 extensions.
pig moved from a traditional script interface to an Agent-Native CLI (1.0.0 -> 1.1.0), with explicit context and JSON/YAML output.
pig now provides unified major/minor upgrade workflows for PostgreSQL and OS lifecycle updates.
pg_exporter upgraded to v1.2.0 (1.1.2 -> 1.2.0), with PG17/18 metric pipeline and unit fixes.
Updated the default firewall security policy. node_firewall_mode defaults to zone. The node_firewall_public_port default changes from [22,80,443,5432] to [22,80,443].
Focused PGSQL/PGCAT Grafana usability fixes: dynamic datasource $dsn, schema-level drilldown, age metrics, link mapping consistency.
Added one-click Mattermost application template, including database/storage/portal and optional PGFS/JuiceFS options.
Refactored infra-rm uninstall flow with segmented deregister cleanup for Victoria targets, Grafana datasources, and Vector logs.
Optimized default PostgreSQL autovacuum thresholds to reduce excessive vacuum/analyze on small tables.
Fixed FD limit chain: added fs.nr_open=8M and unified LimitNOFILE=8M to avoid startup failures from systemd/setrlimit.
Updated VIBE defaults: Jupyter disabled by default; Claude Code managed via npm package.
Corrected template guard for io_method / io_workers from pg_version >= 17 to pg_version >= 18.
Fixed PG18 guards for idle_replication_slot_timeout / initdb --no-data-checksums.
Broadened maintenance_io_concurrency effective range to PG13+.
Raised autovacuum_vacuum_threshold: oltp/crit/tiny from 50 to 500, olap to 1000.
Raised autovacuum_analyze_threshold: oltp/crit/tiny from 50 to 250, olap to 500.
Increased default checkpoint_completion_target from 0.90 to 0.95.
Added fs.nr_open=8388608 in node tuned templates and aligned fs.file-max / fs.nr_open / LimitNOFILE.
Changed postgres/patroni/minio systemd LimitNOFILE from 16777216 to 8388608.
Added fs.nr_open: 8388608 into default node_sysctl_params.
Changed the node_firewall_mode default from none to zone. The firewall is enabled by default and trusts the intranet. It exposes only node_firewall_public_port to public networks. For a fully self-managed firewall, set none.
Changed the node_firewall_public_port default from [22,80,443,5432] to [22,80,443]. Add 5432 explicitly only when public database access is required. Firewall rules only add permissions. On existing nodes that already expose 5432, remove that rule manually. Single-node trial templates, such as meta / vibe, explicitly retain 5432 for remote use.
Added bin/validate checks for pg_databases[*].parameters and pg_hba_rules[*].order. Fixed HBA validation that did not return failure correctly.
Added segmented tags in infra-rm.yml: deregister, config, env, etc.
Updated VIBE defaults: jupyter_enabled=false, npm_packages include @anthropic-ai/claude-code and happy-coder, plus CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1.
PgBouncer alias cleanup: pool_size_reserve -> pool_reserve, pool_max_db_conn -> pool_connlimit.
Compatibility Fixes (Deduplicated)
Note: repeated regressions/re-fixes of the same issue are counted once and merged by problem domain below.
Fixed Redis replicaof empty-guard logic and systemd stop behavior.
Fixed schema/table/sequence qualification, identifier quoting, and logging format safety in pg_migration.
Fixed restart targets and variable usage in pgsql role handlers.
Infra Software Versions - MinIO now uses pgsty/minio fork RPM/DEB.
Package
Version
Package
Version
victoria-metrics
1.134.0
victoria-logs
1.43.1
vector
0.52.0
grafana
12.3.1
alertmanager
0.30.1
etcd
3.6.7
duckdb
1.4.4
pg_exporter
1.1.2
pgbackrest_exporter
0.22.0
blackbox_exporter
0.28.0
node_exporter
1.10.2
minio
20251203
pig
1.0.0
claude
2.1.19
opencode
1.1.34
uv
0.9.26
asciinema
3.1.0
prometheus
3.9.1
pushgateway
1.11.2
juicefs
1.4.0
code-server
4.100.2
caddy
2.10.2
hugo
0.154.5
cloudflared
2026.1.1
headscale
0.27.1
New Modules
JUICE Module: Uses PostgreSQL as the metadata engine for the JuiceFS distributed filesystem. Supports filesystem PITR, multiple storage backends (PG large objects, MinIO, S3), and multi-instance deployment with Prometheus metrics. Adds the node-juice dashboard.
VIBE Module: Provides an AI coding sandbox with Code-Server (VS Code in a browser), JupyterLab (interactive computing), and Node.js (JavaScript runtime). It also includes Claude Code, an AI coding assistant with OpenTelemetry observability. Adds the claude-code dashboard for usage monitoring.
PostgreSQL Extension Updates
Major extensions add PG 18 support: age, citus, documentdb, pg_search, timescaledb, pg_bulkload, rum, etc.
Added new pgBackRest backup monitoring metrics and dashboards
Enhanced Nginx server configuration options, with support for automated Certbot issuance
Now prioritizing PostgreSQL’s built-in C/C.UTF-8 locale settings
IvorySQL 4.4 is now fully supported across all platforms (RPM/DEB on x86/ARM)
Added new software packages: Juicefs, Restic, TimescaleDB EventStreamer
The Apache AGE graph database extension now fully supports PostgreSQL 13–17 on EL
Improved the app.yml playbook: launch standard Docker app without extra config
Updated Supabase, Dify, and Odoo app templates to their latest versions.
Add electric app template, local-first PostgreSQL Sync Engine
Infra Packages
+restic 0.17.3
+juicefs 1.2.3
+timescaledb-event-streamer 0.12.0
Prometheus 3.2.1
AlertManager 0.28.1
blackbox_exporter 0.26.0
node_exporter 1.9.0
mysqld_exporter 0.17.2
kafka_exporter 1.9.0
redis_exporter 1.69.0
pgbackrest_exporter 0.19.0-2
DuckDB 1.2.1
etcd 3.5.20
FerretDB 2.0.0
tigerbeetle 0.16.31
vector 0.45.0
VictoriaMetrics 1.113.0
VictoriaLogs 1.17.0
rclone 1.69.1
pev2 1.14.0
grafana-victorialogs-ds 0.16.0
grafana-victoriametrics-ds 0.14.0
grafana-infinity-ds 3.0.0
PostgreSQL Related
Patroni 4.0.5
PolarDB 15.12.3.0-e1e6d85b
IvorySQL 4.4
pgbackrest 2.54.2
pev2 1.14
Babelfish 13.17
PostgreSQL Extensions
pgspider_ext 1.3.0 (new extension)
apache age 13–17 el rpm (1.5.0)
timescaledb 2.18.2 → 2.19.0
citus 13.0.1 → 13.0.2
documentdb 1.101-0 → 1.102-0
pg_analytics 0.3.4 → 0.3.7
pg_search 0.15.2 → 0.15.8
pg_ivm 1.9 → 1.10
emaj 4.4.0 → 4.6.0
pgsql_tweaks 0.10.0 → 0.11.0
pgvectorscale 0.4.0 → 0.6.0 (pgrx 0.12.5)
pg_session_jwt 0.1.2 → 0.2.0 (pgrx 0.12.6)
wrappers 0.4.4 → 0.4.5 (pgrx 0.12.9)
pg_parquet 0.2.0 → 0.3.1 (pgrx 0.13.1)
vchord 0.2.1 → 0.2.2 (pgrx 0.13.1)
pg_tle 1.2.0 → 1.5.0
supautils 2.5.0 → 2.6.0
sslutils 1.3 → 1.4
pg_profile 4.7 → 4.8
pg_snakeoil 1.3 → 1.4
pg_jsonschema 0.3.2 → 0.3.3
pg_incremental 1.1.1 → 1.2.0
pg_stat_monitor 2.1.0 → 2.1.1
ddl_historization 0.7 → 0.0.7 (bug fix)
pg_sqlog 3.1.7 → 1.6 (bug fix)
pg_random removed development suffix (bug fix)
asn1oid 1.5 → 1.6
table_log 0.6.1 → 0.6.4
Interface Changes
Added new Docker parameters: docker_data and docker_storage_driver (#521 by @waitingsong)
Added new Infra parameter: alertmanager_port, which lets you specify the AlertManager port
Added the Infra parameter certbot_sign to request certificates during Nginx initialization. The default is false.
Added new Infra parameter: certbot_email, specifying the email used when requesting certificates via Certbot
Added new Infra parameter: certbot_options, specifying additional parameters for Certbot
Updated IvorySQL to place its default binary under /usr/ivory-4 starting in IvorySQL 4.4
Changed the default for pg_lc_ctype and other locale-related parameters from en_US.UTF-8 to C
On PostgreSQL 17, built-in localization rules take priority when using UTF8 encoding with C or C.UTF-8 locales.
configure checks whether both the PG version and environment support C.utf8. It adjusts locale options to match.
Set the default IvorySQL binary path to /usr/ivory-4
Updated the default value of pg_packages to pgsql-main patroni pgbouncer pgbackrest pg_exporter pgbadger vip-manager
Updated the default value of repo_packages to [node-bootstrap, infra-package, infra-addons, node-package1, node-package2, pgsql-utility, extra-modules]
Removed LANG and LC_ALL environment variable settings from /etc/profile.d/node.sh
Now using bento/rockylinux-8 and bento/rockylinux-9 as the Vagrant box images for EL
Added a new alias, extra_modules, which includes additional optional modules
This article compares Pigsty with similar products and projects, highlighting feature differences.
Comparison with RDS
Pigsty is a local-first RDS alternative under Apache-2.0. You can deploy it on your physical machines, virtual machines, or cloud servers.
This comparison uses two benchmarks: Amazon AWS RDS for PostgreSQL and Alibaba Cloud RDS for PostgreSQL. AWS is the global market leader. Alibaba Cloud is the market leader in China.
Aliyun RDS and AWS RDS are closed-source cloud database services. You can only rent them on public clouds. The cloud-vendor information below is a February 2024 archive based on PostgreSQL 16. The Pigsty column in Feature Comparison follows the current release. The Key Extensions version table remains a historical snapshot.
Feature Comparison
Feature
Pigsty
Aliyun RDS
AWS RDS
Major Version Support
14 - 18
13 - 18
13 - 18
Read Replicas
Supports unlimited read replicas
Standby instances not exposed to users
Standby instances not exposed to users
Read/Write Splitting
Port-based traffic separation
Separate paid component
Separate paid component
Fast/Slow Separation
Supports offline ETL instances
Not available
Not available
Cross-Region DR
Supports standby clusters
Multi-AZ deployment supported
Multi-AZ deployment supported
Delayed Replicas
Supports delayed instances
Not available
Not available
Load Balancing
HAProxy / LVS
Separate paid component
Separate paid component
Connection Pool
Pgbouncer
Separate paid component: RDS
Separate paid component: RDS Proxy
High Availability
Patroni / etcd
Requires HA edition
Requires HA edition
Point-in-Time Recovery
pgBackRest / Silo
Backup supported
Backup supported
Metrics Monitoring
VictoriaMetrics / Exporter
Free basic / Paid advanced
Free basic / Paid advanced
Log Collection
VictoriaLogs / Vector
Basic support
Basic support
Visualization
Grafana / Echarts
Basic monitoring
Basic monitoring
Alert Aggregation
AlertManager
Basic support
Basic support
Key Extensions
This PostgreSQL 16 extension-support snapshot uses information available on 2024-02-28. It includes pg_analytics, which was later archived and removed from the catalog. These versions and projects do not describe current Pigsty v4.5.0 or cloud-provider support. For current Pigsty support, use the extension catalog. Check each provider’s documentation for its current service capabilities.
¥3200/TB·month (original ¥6400, monthly ¥4000) 50% off with 3-year prepaid
¥1900/TB·month using max spec 65536GB / 256K IOPS best discount
Observability
Pigsty provides nearly 3000 monitoring metrics and 50+ dashboards. These cover databases, hosts, connection pools, load balancers, and other components.
Pigsty provides 638 PostgreSQL monitoring metrics. AWS RDS has 99. Aliyun RDS has a single-digit number of metrics:
The following projects provide more basic PostgreSQL monitoring capabilities:
Based on experience, RDS software and hardware resources cost 5-15 times as much per unit as self-hosted resources. The rent-to-own ratio is typically around one month. For details, see Cost Analysis.
Factor
Metric
Pigsty
Aliyun RDS
AWS RDS
Cost
Software License/Service Fee
Free, hardware ~¥20-40/core·month
¥200-400/core·month
¥400-1300/core·month
Support Service Fee
Service ~¥100/core·month
Included in RDS cost
Other On-Premises Database Management Software
The following software and vendors provide PostgreSQL management capabilities:
Developers once widely accepted “moving to the cloud” and often overlooked alternatives. This collection uses data analysis and firsthand experience to explain the benefits and risks of public cloud rental. Use it as a reference for cost control and efficiency: Cloud Computing Mudslide: Collection.
Projects appear in descending order of GitHub stars. Commercial products that do not publish stars appear last. Last updated: 2026-09-20 (Beijing time).
EDB flagship distribution with Oracle-compatibility features
Star History and Growth
The Star History chart below was exported on 2026-09-20. It covers eight PostgreSQL distribution and high-availability projects. The chart uses the former repository name vitabaks/autobase. This repository has moved to autobase-tech/autobase.
The table compares star growth from the 2026-07-01 baseline through 2026-09-20 (Beijing time). Both snapshots use exact GitHub repository stargazers_count totals.