<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Release on PIGSTY</title>
    <link>https://v15.pgsty.pro/blog/release/</link>
    <description>Recent content in Release on PIGSTY</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    
    
    
      <lastBuildDate>Sat, 18 Jun 2022 00:00:00 +0000</lastBuildDate>
    
    
      <atom:link href="https://v15.pgsty.pro/blog/release/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
        <title>Pigsty v1.5.1</title>
        <link>https://v15.pgsty.pro/blog/release/1.5.1/</link>
        <pubDate>Sat, 18 Jun 2022 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.5.1/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.5.1&lt;/strong&gt; · &lt;time datetime=&#34;2022-06-18&#34;&gt;2022-06-18&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.5.1&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.5.1.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.5.1.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;strong&gt;IMPORTANT&lt;/strong&gt;: Fixed the issue where &lt;code&gt;CREATE INDEX|REINDEX CONCURRENTLY&lt;/code&gt; in PG14.0-14.3 could corrupt index data.&lt;/p&gt;&#xA;&lt;p&gt;Pigsty v1.5.1 upgrades the default PostgreSQL version to 14.4. Strongly recommend updating ASAP.&lt;/p&gt;&#xA;&lt;h2 id=&#34;software-upgrades&#34;&gt;Software Upgrades&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;postgres upgraded to 14.4&lt;/li&gt;&#xA;&lt;li&gt;haproxy upgraded to 2.6.0&lt;/li&gt;&#xA;&lt;li&gt;grafana upgraded to 9.0.0&lt;/li&gt;&#xA;&lt;li&gt;prometheus upgraded to 2.36.0&lt;/li&gt;&#xA;&lt;li&gt;patroni upgraded to 2.1.4&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fixed TYPO in &lt;code&gt;pgsql-migration.yml&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Removed PID config item from HAProxy configuration&lt;/li&gt;&#xA;&lt;li&gt;Removed i686 packages from default packages&lt;/li&gt;&#xA;&lt;li&gt;Enabled all Systemd Redis Services by default&lt;/li&gt;&#xA;&lt;li&gt;Enabled all Systemd Patroni Services by default&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;api-changes&#34;&gt;API Changes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;grafana_database&lt;/code&gt; and &lt;code&gt;grafana_pgurl&lt;/code&gt; marked as deprecated API, will be removed in future versions&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;new-applications&#34;&gt;New Applications&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;wiki.js: Build local Wikipedia with Postgres&lt;/li&gt;&#xA;&lt;li&gt;FerretDB: Provide MongoDB API using Postgres&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.5.1&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.5/&#34;&gt;Pigsty v1.5 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v151&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.5.0...v1.5.1&#34;&gt;Source comparison: &lt;code&gt;v1.5.0...v1.5.1&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.5.0</title>
        <link>https://v15.pgsty.pro/blog/release/1.5.0/</link>
        <pubDate>Sun, 22 May 2022 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.5.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.5.0&lt;/strong&gt; · &lt;time datetime=&#34;2022-05-22&#34;&gt;2022-05-22&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.5.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.5.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.5.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h3 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Complete Docker support: enabled by default on meta node with many out-of-the-box software templates: bytebase, pgadmin, pgweb, postgrest, minio, etc.&lt;/li&gt;&#xA;&lt;li&gt;Infrastructure self-monitoring: Nginx, ETCD, Consul, Prometheus, Grafana, Loki self-monitoring&lt;/li&gt;&#xA;&lt;li&gt;CMDB upgrade: compatibility improvements, supports Redis cluster/Greenplum cluster metadata, config file visualization&lt;/li&gt;&#xA;&lt;li&gt;Service discovery improvements: Consul can auto-discover all monitoring targets and integrate with Prometheus&lt;/li&gt;&#xA;&lt;li&gt;Better cold backup support: default scheduled backup tasks, &lt;code&gt;pg_probackup&lt;/code&gt; backup tool, one-click delayed replica creation&lt;/li&gt;&#xA;&lt;li&gt;ETCD can now be used as PostgreSQL/Patroni DCS service, as an alternative to Consul&lt;/li&gt;&#xA;&lt;li&gt;Redis playbook/role improvements: now allows init and remove operations for individual Redis instances, not just entire Redis nodes&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;monitoring-system&#34;&gt;Monitoring System&#xA;&lt;/h3&gt;&#xA;&lt;h2 id=&#34;dashboards&#34;&gt;Dashboards&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;CMDB Overview: visualize Pigsty CMDB Inventory&lt;/li&gt;&#xA;&lt;li&gt;DCS Overview: view Consul and ETCD cluster monitoring metrics&lt;/li&gt;&#xA;&lt;li&gt;Nginx Overview: view Pigsty Web access metrics and logs&lt;/li&gt;&#xA;&lt;li&gt;Grafana Overview: Grafana self-monitoring&lt;/li&gt;&#xA;&lt;li&gt;Prometheus Overview: Prometheus self-monitoring&lt;/li&gt;&#xA;&lt;li&gt;INFRA Dashboard redesigned to reflect overall infrastructure status&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;monitoring-architecture&#34;&gt;Monitoring Architecture&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Now allows Consul for service discovery (when all services are registered to Consul)&lt;/li&gt;&#xA;&lt;li&gt;All Infra components now enable self-monitoring and register to Prometheus and Consul via &lt;code&gt;infra_register&lt;/code&gt; role&lt;/li&gt;&#xA;&lt;li&gt;Metrics collector pg_exporter updated to v0.5.0, new features: &lt;code&gt;scale&lt;/code&gt; and &lt;code&gt;default&lt;/code&gt;, allowing metric multiplication factors and default values&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_bgwriter&lt;/code&gt;, &lt;code&gt;pg_wal&lt;/code&gt;, &lt;code&gt;pg_query&lt;/code&gt;, &lt;code&gt;pg_db&lt;/code&gt;, &lt;code&gt;pgbouncer_stat&lt;/code&gt; time-related metrics now uniformly scaled to seconds from milliseconds/microseconds&lt;/li&gt;&#xA;&lt;li&gt;Related counter metrics in &lt;code&gt;pg_table&lt;/code&gt; now have default value &lt;code&gt;0&lt;/code&gt; instead of &lt;code&gt;NaN&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_class&lt;/code&gt; metrics collector removed by default, related metrics added to &lt;code&gt;pg_table&lt;/code&gt; and &lt;code&gt;pg_index&lt;/code&gt; collectors&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_table_size&lt;/code&gt; metrics collector now enabled by default with 300-second cache time&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;deployment&#34;&gt;Deployment&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;New optional package &lt;code&gt;docker.tgz&lt;/code&gt; with common app images: Pgadmin, Pgweb, Postgrest, ByteBase, Kong, Minio, etc.&lt;/li&gt;&#xA;&lt;li&gt;New ETCD role: automatically deploys ETCD service on DCS Server nodes and integrates with monitoring&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_dcs_type&lt;/code&gt; specifies DCS service for PG high-availability: Consul (default), ETCD (alternative)&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;node_crontab&lt;/code&gt; parameter for configuring node scheduled tasks like database backups, VACUUM, statistics collection&lt;/li&gt;&#xA;&lt;li&gt;New &lt;code&gt;pg_checksum&lt;/code&gt; option: when enabled, database cluster enables data checksums (previously only &lt;code&gt;crit&lt;/code&gt; template enabled by default)&lt;/li&gt;&#xA;&lt;li&gt;New &lt;code&gt;pg_delay&lt;/code&gt; option: when instance is Standby Cluster Leader, this parameter configures a &lt;strong&gt;delayed replica&lt;/strong&gt;&lt;/li&gt;&#xA;&lt;li&gt;New &lt;code&gt;pg_probackup&lt;/code&gt; package, default role &lt;code&gt;replicator&lt;/code&gt; now has backup-related function permissions&lt;/li&gt;&#xA;&lt;li&gt;Redis deployment split into two parts: Redis node and Redis instance, &lt;code&gt;redis_port&lt;/code&gt; parameter controls specific instances&lt;/li&gt;&#xA;&lt;li&gt;Loki and Promtail now installed via &lt;code&gt;fpm&lt;/code&gt;-built RPM packages&lt;/li&gt;&#xA;&lt;li&gt;DCS3 config template now uses a 3-node &lt;code&gt;pg-meta&lt;/code&gt; cluster with a single-node delayed replica&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;software-upgrades&#34;&gt;Software Upgrades&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;PostgreSQL upgraded to 14.3&lt;/li&gt;&#xA;&lt;li&gt;Redis upgraded to 6.2.7&lt;/li&gt;&#xA;&lt;li&gt;PG Exporter upgraded to 0.5.0&lt;/li&gt;&#xA;&lt;li&gt;Consul upgraded to 1.12.0&lt;/li&gt;&#xA;&lt;li&gt;vip-manager upgraded to v1.0.2&lt;/li&gt;&#xA;&lt;li&gt;Grafana upgraded to v8.5.2&lt;/li&gt;&#xA;&lt;li&gt;Loki &amp;amp; Promtail upgraded to v2.5.0, using fpm packaging&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fixed Loki and Promtail default config filename issues&lt;/li&gt;&#xA;&lt;li&gt;Fixed Loki and Promtail environment variable expansion issues&lt;/li&gt;&#xA;&lt;li&gt;Complete English documentation translation and revision; documentation JS resources now served locally, no internet access required&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;api-changes&#34;&gt;API Changes&#xA;&lt;/h3&gt;&#xA;&lt;h2 id=&#34;new-parameters&#34;&gt;New Parameters&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;node_data_dir&lt;/code&gt;: Main data mount path, created if doesn&amp;rsquo;t exist&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;node_crontab_overwrite&lt;/code&gt;: Overwrite &lt;code&gt;/etc/crontab&lt;/code&gt; instead of appending&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;node_crontab&lt;/code&gt;: Node crontab content to append or overwrite&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;nameserver_enabled&lt;/code&gt;: Enable nameserver on this infra node?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;prometheus_enabled&lt;/code&gt;: Enable prometheus on this infra node?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;grafana_enabled&lt;/code&gt;: Enable grafana on this infra node?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;loki_enabled&lt;/code&gt;: Enable loki on this infra node?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;docker_enable&lt;/code&gt;: Enable docker on this infra node?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;consul_enable&lt;/code&gt;: Enable consul server/agent?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;etcd_enable&lt;/code&gt;: Enable etcd server/client?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_checksum&lt;/code&gt;: Enable pg cluster data checksums?&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_delay&lt;/code&gt;: Application delay when backup cluster leader replays replication&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;parameter-redesign&#34;&gt;Parameter Redesign&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;&lt;code&gt;*_clean&lt;/code&gt; is now a boolean parameter for cleaning existing instances during init.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.4.1</title>
        <link>https://v15.pgsty.pro/blog/release/1.4.1/</link>
        <pubDate>Wed, 20 Apr 2022 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.4.1/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.4.1&lt;/strong&gt; · &lt;time datetime=&#34;2022-04-20&#34;&gt;2022-04-20&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.4.1&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.4.1.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.4.1.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Bug fixes / Docker support / English documentation&lt;/p&gt;&#xA;&lt;p&gt;Docker is now enabled by default on the meta node, allowing you to spin up various software.&lt;/p&gt;&#xA;&lt;h2 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fixed Promtail &amp;amp; Loki configuration variable issues&lt;/li&gt;&#xA;&lt;li&gt;Fixed Grafana legacy alerts&lt;/li&gt;&#xA;&lt;li&gt;Disabled nameserver by default&lt;/li&gt;&#xA;&lt;li&gt;Renamed pg-alias.sh for Patroni shortcuts&lt;/li&gt;&#xA;&lt;li&gt;Disabled exemplars queries for all dashboards&lt;/li&gt;&#xA;&lt;li&gt;Fixed Loki data directory issue&lt;/li&gt;&#xA;&lt;li&gt;Changed &lt;code&gt;autovacuum_freeze_max_age&lt;/code&gt; from 100000000 to 1000000000&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.4.1&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.4/&#34;&gt;Pigsty v1.4 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v141&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.4.0...v1.4.1&#34;&gt;Source comparison: &lt;code&gt;v1.4.0...v1.4.1&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.4.0</title>
        <link>https://v15.pgsty.pro/blog/release/1.4.0/</link>
        <pubDate>Thu, 31 Mar 2022 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.4.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.4.0&lt;/strong&gt; · &lt;time datetime=&#34;2022-03-31&#34;&gt;2022-03-31&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.4.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.4.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.4.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h3 id=&#34;architecture&#34;&gt;Architecture&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Decoupled system into 4 major categories: &lt;code&gt;INFRA&lt;/code&gt;, &lt;code&gt;NODES&lt;/code&gt;, &lt;code&gt;PGSQL&lt;/code&gt;, &lt;code&gt;REDIS&lt;/code&gt;, making Pigsty clearer and more extensible&lt;/li&gt;&#xA;&lt;li&gt;Single-node deployment = &lt;code&gt;INFRA&lt;/code&gt; + &lt;code&gt;NODES&lt;/code&gt; + &lt;code&gt;PGSQL&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;PGSQL cluster deployment = &lt;code&gt;NODES&lt;/code&gt; + &lt;code&gt;PGSQL&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Redis cluster deployment = &lt;code&gt;NODES&lt;/code&gt; + &lt;code&gt;REDIS&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Other database deployment = &lt;code&gt;NODES&lt;/code&gt; + xxx (e.g., &lt;code&gt;MONGO&lt;/code&gt;, &lt;code&gt;KAFKA&lt;/code&gt;&amp;hellip;)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;accessibility&#34;&gt;Accessibility&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;CDN for mainland China&lt;/li&gt;&#xA;&lt;li&gt;Use &lt;code&gt;bash -c &amp;quot;$(curl -fsSL http://get.pigsty.cc/latest)&amp;quot;&lt;/code&gt; to get latest source&lt;/li&gt;&#xA;&lt;li&gt;New &lt;code&gt;download&lt;/code&gt; script to download and extract packages&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;monitoring-enhancements&#34;&gt;Monitoring Enhancements&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Split monitoring into 5 categories: &lt;code&gt;INFRA&lt;/code&gt;, &lt;code&gt;NODES&lt;/code&gt;, &lt;code&gt;REDIS&lt;/code&gt;, &lt;code&gt;PGSQL&lt;/code&gt;, &lt;code&gt;APP&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Logging enabled by default&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;loki&lt;/code&gt; and &lt;code&gt;promtail&lt;/code&gt; now enabled by default, with prebuilt &lt;a href=&#34;https://github.com/Vonng/loki-rpm&#34;&gt;loki-rpm&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Model and labels&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Added hidden &lt;code&gt;ds&lt;/code&gt; prometheus datasource variable to all dashboards&lt;/li&gt;&#xA;&lt;li&gt;Added &lt;code&gt;ip&lt;/code&gt; label to all metrics, used as join key between database and node metrics&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;INFRA Monitoring&#xA;&lt;ul&gt;&#xA;&lt;li&gt;INFRA main dashboard: INFRA Overview&lt;/li&gt;&#xA;&lt;li&gt;Added Log dashboard: Logs Instance&lt;/li&gt;&#xA;&lt;li&gt;PGLOG Analysis and PGLOG Session now treated as sample Pigsty APPs&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;NODES Monitoring Application&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Pigsty can be used standalone as host monitoring software&lt;/li&gt;&#xA;&lt;li&gt;Includes 4 core dashboards: Nodes Overview &amp;amp; Nodes Cluster &amp;amp; Nodes Instance &amp;amp; Nodes Alert&lt;/li&gt;&#xA;&lt;li&gt;New identity variables for nodes: &lt;code&gt;node_cluster&lt;/code&gt; and &lt;code&gt;nodename&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;PGSQL Monitoring Enhancements&#xA;&lt;ul&gt;&#xA;&lt;li&gt;New PGSQL Cluster, simplified and focused on what matters in a cluster&lt;/li&gt;&#xA;&lt;li&gt;New dashboard PGSQL Databases for cluster-level object monitoring&lt;/li&gt;&#xA;&lt;li&gt;PGSQL Alert dashboard now focuses solely on PGSQL alerts&lt;/li&gt;&#xA;&lt;li&gt;PGSQL Shard added to PGSQL&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;li&gt;Redis Monitoring Enhancements&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Added node monitoring to all Redis dashboards&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;matrixdb-support&#34;&gt;MatrixDB Support&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;MatrixDB (Greenplum 7) can be deployed via &lt;code&gt;pigsty-matrix.yml&lt;/code&gt; playbook&lt;/li&gt;&#xA;&lt;li&gt;MatrixDB monitoring dashboard: PGSQL MatrixDB&lt;/li&gt;&#xA;&lt;li&gt;Added sample configuration: &lt;code&gt;pigsty-mxdb.yml&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;software-upgrades&#34;&gt;Software Upgrades&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;PostgreSQL 14.2&lt;/li&gt;&#xA;&lt;li&gt;PostGIS 3.2&lt;/li&gt;&#xA;&lt;li&gt;TimescaleDB 2.6&lt;/li&gt;&#xA;&lt;li&gt;Patroni 2.1.3 (Prometheus metrics + failover slots)&lt;/li&gt;&#xA;&lt;li&gt;HAProxy 2.5.5 (fixed stats errors, more metrics)&lt;/li&gt;&#xA;&lt;li&gt;PG Exporter 0.4.1 (timeout parameters, etc.)&lt;/li&gt;&#xA;&lt;li&gt;Grafana 8.4.4&lt;/li&gt;&#xA;&lt;li&gt;Prometheus 2.33.4&lt;/li&gt;&#xA;&lt;li&gt;Greenplum 6.19.4 / MatrixDB 4.4.0&lt;/li&gt;&#xA;&lt;li&gt;Loki now provided as RPM package instead of ZIP archive&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h3&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Removed Patroni&amp;rsquo;s Consul dependency, making migration to new Consul clusters easier&lt;/li&gt;&#xA;&lt;li&gt;Fixed Prometheus bin/new script default data directory path&lt;/li&gt;&#xA;&lt;li&gt;Added restart seconds in vip-manager systemd service&lt;/li&gt;&#xA;&lt;li&gt;Fixed typos and tasks&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h3 id=&#34;api-changes&#34;&gt;API Changes&#xA;&lt;/h3&gt;&#xA;&lt;h2 id=&#34;new-variables&#34;&gt;New Variables&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;node_cluster&lt;/code&gt;: Identity variable for node cluster&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;nodename_overwrite&lt;/code&gt;: If set, nodename will be set to node&amp;rsquo;s hostname&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;nodename_exchange&lt;/code&gt;: Exchange node hostnames between play hosts (in &lt;code&gt;/etc/hosts&lt;/code&gt;)&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;node_dns_hosts_extra&lt;/code&gt;: Extra static DNS records easily overridable by single instance/cluster&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;patroni_enabled&lt;/code&gt;: If disabled, postgres &amp;amp; patroni bootstrap not executed during &lt;code&gt;postgres&lt;/code&gt; role&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pgbouncer_enabled&lt;/code&gt;: If disabled, pgbouncer not started during &lt;code&gt;postgres&lt;/code&gt; role&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_exporter_params&lt;/code&gt;: Extra URL parameters for pg_exporter when generating monitoring target URL&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;pg_provision&lt;/code&gt;: Boolean variable indicating whether to execute provisioning part of &lt;code&gt;postgres&lt;/code&gt; role&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;no_cmdb&lt;/code&gt;: Used for &lt;code&gt;infra.yml&lt;/code&gt; and &lt;code&gt;infra-demo.yml&lt;/code&gt; playbooks, won&amp;rsquo;t create CMDB on meta node&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.4.0&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.4/&#34;&gt;Pigsty v1.4 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v140&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.3.1...v1.4.0&#34;&gt;Source comparison: &lt;code&gt;v1.3.1...v1.4.0&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.3.1</title>
        <link>https://v15.pgsty.pro/blog/release/1.3.1/</link>
        <pubDate>Fri, 10 Dec 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.3.1/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.3.1&lt;/strong&gt; · &lt;time datetime=&#34;2021-12-10&#34;&gt;2021-12-10&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.3.1&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.3.1.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.3.1.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;monitoring&#34;&gt;Monitoring&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;PGSQL &amp;amp; PGCAT dashboard improvements&lt;/li&gt;&#xA;&lt;li&gt;Optimized PGCAT Instance &amp;amp; PGCAT Database layout&lt;/li&gt;&#xA;&lt;li&gt;Added key metric panels to PGSQL Instance dashboard (consistent with PGSQL Cluster)&lt;/li&gt;&#xA;&lt;li&gt;Added table/index bloat panels to PGCAT Database, removed PGCAT Bloat dashboard&lt;/li&gt;&#xA;&lt;li&gt;Added index information to PGCAT Database dashboard&lt;/li&gt;&#xA;&lt;li&gt;Fixed broken panels in Grafana 8.3&lt;/li&gt;&#xA;&lt;li&gt;Added Redis index to Nginx homepage&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;deployment&#34;&gt;Deployment&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;New &lt;code&gt;infra-demo.yml&lt;/code&gt; playbook for one-click bootstrap&lt;/li&gt;&#xA;&lt;li&gt;New &lt;code&gt;infra-jupyter.yml&lt;/code&gt; playbook for optional JupyterLab server&lt;/li&gt;&#xA;&lt;li&gt;New &lt;code&gt;infra-pgweb.yml&lt;/code&gt; playbook for optional PGWeb server&lt;/li&gt;&#xA;&lt;li&gt;Added &lt;code&gt;pg&lt;/code&gt; alias on meta node for starting PostgreSQL cluster from admin user&lt;/li&gt;&#xA;&lt;li&gt;Adjusted &lt;code&gt;max_locks_per_transactions&lt;/code&gt; in all Patroni config templates per &lt;code&gt;timescaledb-tune&lt;/code&gt; recommendations&lt;/li&gt;&#xA;&lt;li&gt;Added &lt;code&gt;citus.node_conninfo: &#39;sslmode=prefer&#39;&lt;/code&gt; to config templates for SSL-free Citus usage&lt;/li&gt;&#xA;&lt;li&gt;Added all extensions (except pgrouting) from PGDG14 to package list&lt;/li&gt;&#xA;&lt;li&gt;Upgraded node_exporter to v1.3.1&lt;/li&gt;&#xA;&lt;li&gt;Added PostgREST v9.0.0 for generating REST APIs from PostgreSQL schemas&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Grafana security vulnerability fix (upgraded to v8.3.1, &lt;a href=&#34;https://grafana.com/blog/2021/12/07/grafana-8.3.1-8.2.7-8.1.8-and-8.0.7-released-with-high-severity-security-fix/&#34;&gt;details&lt;/a&gt;)&lt;/li&gt;&#xA;&lt;li&gt;Fixed &lt;code&gt;pg_instance&lt;/code&gt; &amp;amp; &lt;code&gt;pg_service&lt;/code&gt; issues in &lt;code&gt;register&lt;/code&gt; role when starting playbook mid-run&lt;/li&gt;&#xA;&lt;li&gt;Fixed Nginx homepage rendering on hosts without &lt;code&gt;pg_cluster&lt;/code&gt; variable&lt;/li&gt;&#xA;&lt;li&gt;Fixed style issues when upgrading to Grafana 8.3.1&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.3.1&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.3/&#34;&gt;Pigsty v1.3 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.3.0...v1.3.1&#34;&gt;Source comparison: &lt;code&gt;v1.3.0...v1.3.1&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.3.0</title>
        <link>https://v15.pgsty.pro/blog/release/1.3.0/</link>
        <pubDate>Tue, 30 Nov 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.3.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.3.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-11-30&#34;&gt;2021-11-30&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.3.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.3.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.3.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;redis-support&#34;&gt;Redis Support&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Feature&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Redis Deployment&lt;/td&gt;&#xA;      &lt;td&gt;Standalone, Sentinel, and Cluster modes&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Redis Monitoring&lt;/td&gt;&#xA;      &lt;td&gt;Overview, Cluster, and Instance dashboards&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;h2 id=&#34;pgcat-overhaul&#34;&gt;PGCAT Overhaul&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Dashboard&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Description&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;PGCAT Instance&lt;/td&gt;&#xA;      &lt;td&gt;New instance-level catalog dashboard&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;PGCAT Database&lt;/td&gt;&#xA;      &lt;td&gt;New database-level catalog dashboard&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;PGCAT Table&lt;/td&gt;&#xA;      &lt;td&gt;Redesigned table-level dashboard&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;h2 id=&#34;pgsql-enhancements&#34;&gt;PGSQL Enhancements&#xA;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-table-scroll td-table-scroll--static&#34;&gt;&#xA;&lt;table&gt;&#xA;  &lt;thead&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Dashboard&lt;/th&gt;&#xA;      &lt;th scope=&#34;col&#34;&gt;Improvements&lt;/th&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/thead&gt;&#xA;  &lt;tbody&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;PGSQL Cluster&lt;/td&gt;&#xA;      &lt;td&gt;Added 10 key metric panels&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;PGSQL Instance&lt;/td&gt;&#xA;      &lt;td&gt;Added 10 key metric panels&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;PGSQL Service&lt;/td&gt;&#xA;      &lt;td&gt;Simplified and redesigned&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;    &lt;tr&gt;&#xA;      &lt;td&gt;Cross-references&lt;/td&gt;&#xA;      &lt;td&gt;Navigation links between PGCAT and PGSQL dashboards&lt;/td&gt;&#xA;    &lt;/tr&gt;&#xA;  &lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;/div&gt;&#xA;&#xA;&lt;h2 id=&#34;monitor-deployment&#34;&gt;Monitor Deployment&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Grafana datasources auto-register during monitor-only deployment&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;software-upgrades&#34;&gt;Software Upgrades&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;PostgreSQL 13 added to default package list&lt;/li&gt;&#xA;&lt;li&gt;PostgreSQL upgraded to 14.1 as default&lt;/li&gt;&#xA;&lt;li&gt;Added Greenplum RPM packages and dependencies&lt;/li&gt;&#xA;&lt;li&gt;Added Redis RPM and source packages&lt;/li&gt;&#xA;&lt;li&gt;Added &lt;code&gt;perf&lt;/code&gt; as default package&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.3.0&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.3/&#34;&gt;Pigsty v1.3 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v130&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.2.0...v1.3.0&#34;&gt;Source comparison: &lt;code&gt;v1.2.0...v1.3.0&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.2.0</title>
        <link>https://v15.pgsty.pro/blog/release/1.2.0/</link>
        <pubDate>Wed, 03 Nov 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.2.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.2.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-11-03&#34;&gt;2021-11-03&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.2.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.2.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.2.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;core-features&#34;&gt;Core Features&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Default to PostgreSQL 14&lt;/li&gt;&#xA;&lt;li&gt;Default to TimescaleDB 2.5 extension&lt;/li&gt;&#xA;&lt;li&gt;TimescaleDB and PostGIS enabled by default in CMDB&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;monitor-only-mode&#34;&gt;Monitor-Only Mode&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Monitor existing PostgreSQL instances via connection URL only&lt;/li&gt;&#xA;&lt;li&gt;pg_exporter deployed on local meta node&lt;/li&gt;&#xA;&lt;li&gt;New PGSQL Cluster Monly dashboard for remote clusters&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;software-upgrades&#34;&gt;Software Upgrades&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Grafana upgraded to 8.2.2&lt;/li&gt;&#xA;&lt;li&gt;pev2 upgraded to v0.11.9&lt;/li&gt;&#xA;&lt;li&gt;Promscale upgraded to 0.6.2&lt;/li&gt;&#xA;&lt;li&gt;PgWeb upgraded to 0.11.9&lt;/li&gt;&#xA;&lt;li&gt;New extensions: pglogical, pg_stat_monitor, orafce&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;improvements&#34;&gt;Improvements&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Auto-detect machine specs and use appropriate &lt;code&gt;node_tune&lt;/code&gt; and &lt;code&gt;pg_conf&lt;/code&gt; templates&lt;/li&gt;&#xA;&lt;li&gt;Reworked bloat-related views, exposing more information&lt;/li&gt;&#xA;&lt;li&gt;Removed TimescaleDB and Citus internal monitoring&lt;/li&gt;&#xA;&lt;li&gt;Added &lt;code&gt;pgsql-audit.yml&lt;/code&gt; playbook for creating audit reports&lt;/li&gt;&#xA;&lt;li&gt;All config templates simplified to two: auto and demo&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;pgbouncer_exporter resource owner changed to &lt;code&gt;{{ pg_dbsu }}&lt;/code&gt; instead of postgres&lt;/li&gt;&#xA;&lt;li&gt;Fixed pg_exporter duplicate metrics on pg_table/pg_index during &lt;code&gt;REINDEX TABLE CONCURRENTLY&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.2.0&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.2/&#34;&gt;Pigsty v1.2 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v120&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.1.1...v1.2.0&#34;&gt;Source comparison: &lt;code&gt;v1.1.1...v1.2.0&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.1.1</title>
        <link>https://v15.pgsty.pro/blog/release/1.1.1/</link>
        <pubDate>Wed, 20 Oct 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.1.1/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.1.1&lt;/strong&gt; · &lt;time datetime=&#34;2021-10-20&#34;&gt;2021-10-20&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.1.1&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.1.1.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.1.1.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Replaced TimescaleDB &lt;code&gt;apache&lt;/code&gt; version with &lt;code&gt;timescale&lt;/code&gt; version&lt;/li&gt;&#xA;&lt;li&gt;Upgraded Prometheus to 2.30&lt;/li&gt;&#xA;&lt;li&gt;Fixed pg_exporter config directory owner issue (changed to &lt;code&gt;{{ pg_dbsu }}&lt;/code&gt;)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;upgrade-notes&#34;&gt;Upgrade Notes&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The main change in this version is TimescaleDB — using the official TimescaleDB License (TSL) version to replace the Apache License v2 version from the PGDG repository.&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-ae28b916-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;bash&#34; data-td-line-count=&#34;6&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-ae28b916-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;c1&#34;&gt;## Sources&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;- &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;GitHub release&lt;span class=&#34;o&#34;&gt;](&lt;/span&gt;https://github.com/pgsty/pigsty/releases/tag/v1.1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;- &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;Pigsty v1.1 release article&lt;span class=&#34;o&#34;&gt;](&lt;/span&gt;https://pigsty.io/blog/pigsty/v1.1/&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;- &lt;span class=&#34;o&#34;&gt;[&lt;/span&gt;Source comparison: &lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;v1.1...v1.1.1&lt;span class=&#34;sb&#34;&gt;`&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;](&lt;/span&gt;https://github.com/pgsty/pigsty/compare/v1.1...v1.1.1&lt;span class=&#34;o&#34;&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.1.0</title>
        <link>https://v15.pgsty.pro/blog/release/1.1.0/</link>
        <pubDate>Tue, 12 Oct 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.1.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.1&lt;/strong&gt; · &lt;time datetime=&#34;2021-10-12&#34;&gt;2021-10-12&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.1&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.1.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.1.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;feature-enhancements&#34;&gt;Feature Enhancements&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Added &lt;code&gt;pg_dummy_filesize&lt;/code&gt; to create filesystem space placeholder&lt;/li&gt;&#xA;&lt;li&gt;Major homepage redesign&lt;/li&gt;&#xA;&lt;li&gt;Added JupyterLab integration&lt;/li&gt;&#xA;&lt;li&gt;Added PGWeb console integration&lt;/li&gt;&#xA;&lt;li&gt;Added PgBadger support&lt;/li&gt;&#xA;&lt;li&gt;Added PEV2 support, execution plan visualization tool&lt;/li&gt;&#xA;&lt;li&gt;Added pglog tooling&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;software-upgrades&#34;&gt;Software Upgrades&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;PostgreSQL upgraded to v13.4 (with official PG14 support)&lt;/li&gt;&#xA;&lt;li&gt;pgbouncer upgraded to v1.16 (metric definitions updated)&lt;/li&gt;&#xA;&lt;li&gt;Grafana upgraded to v8.1.4&lt;/li&gt;&#xA;&lt;li&gt;Prometheus upgraded to v2.29&lt;/li&gt;&#xA;&lt;li&gt;node_exporter upgraded to v1.2.2&lt;/li&gt;&#xA;&lt;li&gt;HAProxy upgraded to v2.1.1&lt;/li&gt;&#xA;&lt;li&gt;Consul upgraded to v1.10.2&lt;/li&gt;&#xA;&lt;li&gt;vip-manager upgraded to v1.0.1&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;api-changes&#34;&gt;API Changes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;nginx_upstream&lt;/code&gt; now has different structure (incompatible)&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;app_list&lt;/code&gt;, navigation entries rendered to homepage&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;docs_enabled&lt;/code&gt;, setup local docs on default server&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;pev2_enabled&lt;/code&gt;, setup local PEV2 tool&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;pgbadger_enabled&lt;/code&gt;, create log summary/report directory&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;jupyter_enabled&lt;/code&gt;, enable JupyterLab server on meta node&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;jupyter_username&lt;/code&gt;, specify user to run JupyterLab&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;jupyter_password&lt;/code&gt;, specify default password for JupyterLab&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;pgweb_enabled&lt;/code&gt;, enable PGWeb server on meta node&lt;/li&gt;&#xA;&lt;li&gt;New config entry: &lt;code&gt;pgweb_username&lt;/code&gt;, specify user to run PGWeb&lt;/li&gt;&#xA;&lt;li&gt;Renamed internal flag &lt;code&gt;repo_exist&lt;/code&gt; to &lt;code&gt;repo_exists&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;repo_address&lt;/code&gt; default value changed to &lt;code&gt;pigsty&lt;/code&gt; instead of &lt;code&gt;yum.pigsty&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;HAProxy access point changed to &lt;code&gt;http://pigsty&lt;/code&gt; instead of &lt;code&gt;http://h.pigsty&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.1&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.1/&#34;&gt;Pigsty v1.1 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v110&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.0.1...v1.1&#34;&gt;Source comparison: &lt;code&gt;v1.0.1...v1.1&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.0.1</title>
        <link>https://v15.pgsty.pro/blog/release/1.0.1/</link>
        <pubDate>Tue, 14 Sep 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.0.1/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.0.1&lt;/strong&gt; · &lt;time datetime=&#34;2021-09-14&#34;&gt;2021-09-14&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.0.1&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.0.1.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.0.1.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;2021-09-14&lt;/p&gt;&#xA;&lt;h2 id=&#34;documentation-update&#34;&gt;Documentation Update&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Chinese documentation now available&lt;/li&gt;&#xA;&lt;li&gt;Machine-translated English documentation now available&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;pgsql-remove&lt;/code&gt; no longer removes primary instances&lt;/li&gt;&#xA;&lt;li&gt;Replaced pg_instance with pg_cluster + pg_seq (Start-At-Task could fail when pg_instance undefined)&lt;/li&gt;&#xA;&lt;li&gt;Removed Citus from default shared preload libraries (Citus forces max_prepared_transaction to non-zero)&lt;/li&gt;&#xA;&lt;li&gt;Added ssh sudo check in &lt;code&gt;configure&lt;/code&gt; (now uses &lt;code&gt;ssh -t sudo -n ls&lt;/code&gt; for permission check)&lt;/li&gt;&#xA;&lt;li&gt;Fixed &lt;code&gt;pg-backup&lt;/code&gt; script typo&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;optimizations&#34;&gt;Optimizations&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Removed NTP sanity check alert (duplicate of ClockSkew)&lt;/li&gt;&#xA;&lt;li&gt;Removed collector.systemd to reduce overhead&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.0.1&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.0/&#34;&gt;Pigsty v1.0 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v1.0.0...v1.0.1&#34;&gt;Source comparison: &lt;code&gt;v1.0.0...v1.0.1&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v1.0.0</title>
        <link>https://v15.pgsty.pro/blog/release/1.0.0/</link>
        <pubDate>Mon, 26 Jul 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/1.0.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v1.0.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-07-26&#34;&gt;2021-07-26&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.0.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.0.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v1.0.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;monitoring-system-overhaul&#34;&gt;Monitoring System Overhaul&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;New dashboards on Grafana 8.0&lt;/li&gt;&#xA;&lt;li&gt;New metric definitions, added PG14 support&lt;/li&gt;&#xA;&lt;li&gt;Simplified labeling system: static label set (job, cls, ins)&lt;/li&gt;&#xA;&lt;li&gt;New alerting rules and derived metrics&lt;/li&gt;&#xA;&lt;li&gt;Monitor multiple databases simultaneously&lt;/li&gt;&#xA;&lt;li&gt;Real-time log search &amp;amp; csvlog analysis&lt;/li&gt;&#xA;&lt;li&gt;Richly-linked dashboards, click through for drill-down/roll-up&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;architecture-changes&#34;&gt;Architecture Changes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Added Citus and TimescaleDB to default installation&lt;/li&gt;&#xA;&lt;li&gt;Added PostgreSQL 14beta2 support&lt;/li&gt;&#xA;&lt;li&gt;Simplified HAProxy admin page indexing&lt;/li&gt;&#xA;&lt;li&gt;Decoupled infrastructure and PGSQL by adding new role &lt;code&gt;register&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Added new roles &lt;code&gt;loki&lt;/code&gt; and &lt;code&gt;promtail&lt;/code&gt; for logging&lt;/li&gt;&#xA;&lt;li&gt;Added new role &lt;code&gt;environ&lt;/code&gt; to setup environment for admin user on meta node&lt;/li&gt;&#xA;&lt;li&gt;Default to &lt;code&gt;static&lt;/code&gt; service discovery for Prometheus (instead of &lt;code&gt;consul&lt;/code&gt;)&lt;/li&gt;&#xA;&lt;li&gt;Added new role &lt;code&gt;remove&lt;/code&gt; for graceful cluster and instance removal&lt;/li&gt;&#xA;&lt;li&gt;Upgraded Prometheus and Grafana provisioning logic&lt;/li&gt;&#xA;&lt;li&gt;Upgraded to vip-manager 1.0, node_exporter 1.2, pg_exporter 0.4, Grafana 8.0&lt;/li&gt;&#xA;&lt;li&gt;Every database on every instance auto-registers as a Grafana datasource&lt;/li&gt;&#xA;&lt;li&gt;Moved Consul registration to &lt;code&gt;register&lt;/code&gt; role, changed Consul service tags&lt;/li&gt;&#xA;&lt;li&gt;Added cmdb.sql as pg-meta baseline definition (CMDB &amp;amp; PGLOG)&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;application-framework&#34;&gt;Application Framework&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Extensible framework for new features&lt;/li&gt;&#xA;&lt;li&gt;Core app: PostgreSQL monitoring system &lt;code&gt;pgsql&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Core app: PostgreSQL catalog explorer &lt;code&gt;pgcat&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Core app: PostgreSQL csvlog analyzer &lt;code&gt;pglog&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Added sample app &lt;code&gt;covid&lt;/code&gt; for COVID-19 data visualization&lt;/li&gt;&#xA;&lt;li&gt;Added sample app &lt;code&gt;isd&lt;/code&gt; for ISD weather data visualization&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;other&#34;&gt;Other&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Added JupyterLab for full Python data science environment&lt;/li&gt;&#xA;&lt;li&gt;Added &lt;code&gt;vonng-echarts-panel&lt;/code&gt; to restore ECharts support&lt;/li&gt;&#xA;&lt;li&gt;Added wrapper scripts &lt;code&gt;createpg&lt;/code&gt;, &lt;code&gt;createdb&lt;/code&gt;, &lt;code&gt;createuser&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Added CMDB dynamic inventory scripts: &lt;code&gt;load_conf.py&lt;/code&gt;, &lt;code&gt;inventory_cmdb&lt;/code&gt;, &lt;code&gt;inventory_conf&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Removed obsolete playbooks: &lt;code&gt;pgsql-monitor&lt;/code&gt;, &lt;code&gt;pgsql-service&lt;/code&gt;, &lt;code&gt;node-remove&lt;/code&gt;, etc.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;api-changes&#34;&gt;API Changes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;node_meta_pip_install&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;grafana_admin_username&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;grafana_database&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;grafana_pgurl&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;pg_shared_libraries&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;pg_exporter_auto_discovery&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;pg_exporter_exclude_database&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;New variable: &lt;code&gt;pg_exporter_include_database&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;Variable renamed: &lt;code&gt;grafana_url&lt;/code&gt; → &lt;code&gt;grafana_endpoint&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fixed default timezone Asia/Shanghai (CST) issue&lt;/li&gt;&#xA;&lt;li&gt;Fixed nofile limits for pgbouncer &amp;amp; patroni&lt;/li&gt;&#xA;&lt;li&gt;pgbouncer user list and database list now generated when running tag &lt;code&gt;pgbouncer&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v1.0.0&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v1.0/&#34;&gt;Pigsty v1.0 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v100&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v0.9.1...v1.0.0&#34;&gt;Source comparison: &lt;code&gt;v0.9.1...v1.0.0&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.9.1</title>
        <link>https://v15.pgsty.pro/blog/release/0.9.1/</link>
        <pubDate>Thu, 20 May 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.9.1/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.9.1&lt;/strong&gt; · &lt;time datetime=&#34;2021-05-20&#34;&gt;2021-05-20&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.9.1&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.9.1.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.9.1.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Update package version:&lt;/p&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;PostgreSQL 13.3&lt;/li&gt;&#xA;&lt;li&gt;Grafana 7.5.6&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;Add configure support.&lt;/p&gt;&#xA;&lt;p&gt;Now install pigsty with 3 steps: download, configure and install:&lt;/p&gt;&#xA;&lt;div class=&#34;td-code td-code--untitled&#34; id=&#34;td-code-e64fcc94-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-td-language=&#34;&#34; data-td-line-count=&#34;3&#34;&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-e64fcc94-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;curl -fsSL https://github.com/pgsty/pigsty/releases/download/v0.9.1/pigsty.tgz | gzip -d | tar -xC ~; cd ~/pigsty&#xA;./configure&#xA;make install&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;WoW! just like old time!&lt;/p&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.9.1&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v0.9/&#34;&gt;Pigsty v0.9 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v0.9.0...v0.9.1&#34;&gt;Source comparison: &lt;code&gt;v0.9.0...v0.9.1&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.9.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.9.0/</link>
        <pubDate>Sat, 01 May 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.9.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.9.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-05-01&#34;&gt;2021-05-01&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.9.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.9.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.9.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;new-stuff&#34;&gt;New Stuff&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;strong&gt;One-liner install&lt;/strong&gt;: &lt;code&gt;curl -fsSL https://pigsty.cc/install | bash&lt;/code&gt; bootstraps everything.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;&lt;code&gt;pigsty-cli&lt;/code&gt;&lt;/strong&gt;: wraps the common Ansible playbooks so you stop copy-pasting command lines. Still beta but already handy.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Loki + Promtail&lt;/strong&gt;: Postgres, pgbouncer, and Patroni logs stream into Grafana with metrics extracted from log volume. &lt;code&gt;infra-loki.yml&lt;/code&gt; and &lt;code&gt;pgsql-promtail.yml&lt;/code&gt; wire things up.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Binary exporters&lt;/strong&gt;: grab monitoring binaries with &lt;code&gt;files/get_bin.sh&lt;/code&gt; if you don&amp;rsquo;t want to rely on repos.&lt;/li&gt;&#xA;&lt;li&gt;&lt;strong&gt;Flight mode&lt;/strong&gt;: once the meta node is initialized you can run &lt;code&gt;bin/upgrade&lt;/code&gt; to switch into a dynamic inventory using data stored inside &lt;code&gt;pg-meta&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;fixes&#34;&gt;Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Cleaned up HAProxy health checks that were flooding PG and Patroni logs with &lt;code&gt;connection reset&lt;/code&gt; noise.&lt;/li&gt;&#xA;&lt;li&gt;Patroni logs now carry readable timestamps (no more millisecond fragments) and explicit time zones.&lt;/li&gt;&#xA;&lt;li&gt;Monitoring queries run by &lt;code&gt;dbuser_monitor&lt;/code&gt; log only when slower than 1s.&lt;/li&gt;&#xA;&lt;li&gt;Grafana role refactor keeps the API stable, but uses CDN-hosted plugin bundles for faster installs.&lt;/li&gt;&#xA;&lt;li&gt;Pgbouncer user creation now handles md5 passwords properly.&lt;/li&gt;&#xA;&lt;li&gt;Hardened SQL templates for DB/user creation, fixed DNS orchestration edge cases, and tidied Makefile typos.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;knob-changes&#34;&gt;Knob Changes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;code&gt;node_disable_swap&lt;/code&gt; defaults to &lt;code&gt;false&lt;/code&gt;; Pigsty no longer nukes swap by default.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;node_sysctl_params&lt;/code&gt; stops writing kernel tunables unless you explicitly set them.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;grafana_plugin: install&lt;/code&gt; now means “download from CDN if cache is missing.”&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;repo_url_packages&lt;/code&gt; pulls extra RPMs from the Pigsty CDN so installs inside China work out of the box.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;proxy_env.no_proxy&lt;/code&gt; includes the CDN endpoints.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;grafana_customize&lt;/code&gt; defaults to &lt;code&gt;false&lt;/code&gt;; flip it on only if you have the Pigsty Pro UI bits.&lt;/li&gt;&#xA;&lt;li&gt;&lt;code&gt;node_admin_pk_current&lt;/code&gt; adds your current &lt;code&gt;~/.ssh/id_rsa.pub&lt;/code&gt; to the admin account.&lt;/li&gt;&#xA;&lt;li&gt;Loki/Promtail knobs: &lt;code&gt;loki_clean&lt;/code&gt;, &lt;code&gt;loki_data_dir&lt;/code&gt;, &lt;code&gt;promtail_enabled&lt;/code&gt;, &lt;code&gt;promtail_clean&lt;/code&gt;, &lt;code&gt;promtail_port&lt;/code&gt;, &lt;code&gt;promtail_status_file&lt;/code&gt;, &lt;code&gt;promtail_send_url&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.9.0&#34;&gt;GitHub release&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v0.9/&#34;&gt;Pigsty v0.9 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/docs/about/release/#v090&#34;&gt;Historical About / Release Note&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v0.8.0...v0.9.0&#34;&gt;Source comparison: &lt;code&gt;v0.8.0...v0.9.0&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.8.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.8.0/</link>
        <pubDate>Sun, 28 Mar 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.8.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.8.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-03-28&#34;&gt;2021-03-28&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.8.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.8.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.8.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;v0.8 finalizes the provisioning API. Services are completely rebuilt: instead of a hard-coded primary/replica pair you can now declare any number of services, plug in HAProxy, swap in an external load balancer, or hand off to a custom VIP controller. Everything else in the supply chain stabilizes on top of this model.&lt;/p&gt;&#xA;&lt;h2 id=&#34;service-api&#34;&gt;Service API&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The old &lt;code&gt;vip&lt;/code&gt; and &lt;code&gt;haproxy&lt;/code&gt; knobs moved under the &lt;code&gt;service&lt;/code&gt; role. &lt;code&gt;pg_services&lt;/code&gt; (plus &lt;code&gt;pg_services_extra&lt;/code&gt;) define each exposed endpoint—name, ports, selectors, health checks, weights, and balancer hints. Selectors are JMESPath filters over cluster members, and optional &lt;code&gt;selector_backup&lt;/code&gt; pools handle fail-in when replicas are gone. Out of the box we ship &lt;code&gt;primary&lt;/code&gt;, &lt;code&gt;replica&lt;/code&gt;, &lt;code&gt;default&lt;/code&gt;, and &lt;code&gt;offline&lt;/code&gt; service definitions; swap &lt;code&gt;dst_port&lt;/code&gt; to point at &lt;code&gt;postgres&lt;/code&gt;, &lt;code&gt;pgbouncer&lt;/code&gt;, or any number.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.7.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.7.0/</link>
        <pubDate>Mon, 01 Mar 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.7.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.7.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-03-01&#34;&gt;2021-03-01&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.7.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.7.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.7.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Pigsty v0.7 focuses on plugging existing fleets into Pigsty&amp;rsquo;s observability stack. The new monitor-only flow lets you drop Pigsty dashboards onto databases that were provisioned elsewhere, and the declarative APIs for databases and users got a much needed redesign.&lt;/p&gt;&#xA;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Monitor-only deployment flow (&lt;code&gt;monly&lt;/code&gt;) with its own playbook.&lt;/li&gt;&#xA;&lt;li&gt;Split static Prometheus target files by cluster for easier hand-editing.&lt;/li&gt;&#xA;&lt;li&gt;New helper playbooks: &lt;code&gt;pgsql-createuser.yml&lt;/code&gt; and &lt;code&gt;pgsql-createdb.yml&lt;/code&gt; for live clusters.&lt;/li&gt;&#xA;&lt;li&gt;Database and user schema definitions now cover owner/template/locale knobs plus per-role capabilities.&lt;/li&gt;&#xA;&lt;li&gt;Bug fixes for extension schema typos and pgbouncer reload.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;api-changes&#34;&gt;API Changes&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;New options:&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.6.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.6.0/</link>
        <pubDate>Fri, 19 Feb 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.6.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.6.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-02-19&#34;&gt;2021-02-19&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.6.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.6.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.6.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Pigsty v0.6 responds to user feedback with a redesigned provisioning path plus a monitoring stack that can sit beside any managed PG fleet—even a MyBase cluster built elsewhere.&lt;/p&gt;&#xA;&lt;h2 id=&#34;bug-fixes&#34;&gt;Bug Fixes&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Patroni no longer resets PG HBA on restart.&lt;/li&gt;&#xA;&lt;li&gt;Fixed copy typos and the default primary for the &lt;code&gt;pg-test&lt;/code&gt; sandbox cluster.&lt;/li&gt;&#xA;&lt;li&gt;Patched the dashboard title typo on PG Overview.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;feature-work&#34;&gt;Feature Work&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Monitoring supply chain overhaul: Prometheus can now run fully static, exporters accept &lt;code&gt;service_registry&lt;/code&gt; toggles, and &lt;code&gt;exporter_binary_install&lt;/code&gt; lets you drop binaries without hitting repos. Each exporter has its own &lt;code&gt;*_enabled&lt;/code&gt; flag.&lt;/li&gt;&#xA;&lt;li&gt;Prometheus static discovery is rendered straight from inventory, so you can graft Pigsty dashboards onto any PG-as-a-service footprint.&lt;/li&gt;&#xA;&lt;li&gt;HAProxy provisioning adds a global console at &lt;code&gt;h.pigsty&lt;/code&gt;, optional auth, fallback routing to the primary when all replicas die, and per-service weight tuning.&lt;/li&gt;&#xA;&lt;li&gt;ACL defaults now include &lt;code&gt;dbrole_offline&lt;/code&gt; for slow-query/ETL workloads plus HBA rules that fence those workloads to marked nodes.&lt;/li&gt;&#xA;&lt;li&gt;Component refresh: PostgreSQL 13.2, Prometheus 2.25, pg_exporter 0.3.2, node_exporter 1.1, Consul 1.9.3, and a faster ZJU PG mirror.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;api-changes&#34;&gt;API Changes&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;New knobs:&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.5.2</title>
        <link>https://v15.pgsty.pro/blog/release/0.5.2/</link>
        <pubDate>Wed, 20 Jan 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.5.2/</guid>
        <description>&lt;blockquote&gt;&#xA;&lt;p&gt;[!INFO]&lt;/p&gt;&#xA;&lt;p&gt;This historical version is represented by its &lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.5.2&#34;&gt;Git tag and source tree&lt;/a&gt; because no GitHub Release was published.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Made &lt;code&gt;pigsty.yml&lt;/code&gt; the default configuration and reorganized the standard &lt;code&gt;sandbox.yml&lt;/code&gt;, &lt;code&gt;infra.yml&lt;/code&gt;, and &lt;code&gt;pgsql.yml&lt;/code&gt; workflows.&lt;/li&gt;&#xA;&lt;li&gt;Split VIP management from HAProxy and added administrator authentication, traffic weights, and primary fallback controls.&lt;/li&gt;&#xA;&lt;li&gt;Added the nameserver step to the main playbook and refreshed the accompanying documentation.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;code&gt;v0.5.2&lt;/code&gt; is a tagged maintenance snapshot without a separately authored GitHub Release body.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.5.1</title>
        <link>https://v15.pgsty.pro/blog/release/0.5.1/</link>
        <pubDate>Wed, 13 Jan 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.5.1/</guid>
        <description>&lt;blockquote&gt;&#xA;&lt;p&gt;[!INFO]&lt;/p&gt;&#xA;&lt;p&gt;This historical version is represented by its &lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.5.1&#34;&gt;Git tag and source tree&lt;/a&gt; because no GitHub Release was published.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Fixed PostgreSQL cluster and instance dashboard issues found after &lt;code&gt;v0.5.0&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;li&gt;Switched the default PostgreSQL mirror to Zhejiang University for faster regional installs.&lt;/li&gt;&#xA;&lt;li&gt;Refreshed the README and consolidated the &lt;code&gt;v0.5&lt;/code&gt; documentation snapshot.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;code&gt;v0.5.1&lt;/code&gt; is a tagged maintenance snapshot without a separately authored GitHub Release body.&lt;/p&gt;&#xA;&lt;h2 id=&#34;sources&#34;&gt;Sources&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.5.1&#34;&gt;Git tag and source tree&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://pigsty.io/blog/pigsty/v0.5/&#34;&gt;Pigsty v0.5 release article&lt;/a&gt;&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/compare/v0.5.0...v0.5.1&#34;&gt;Source comparison: &lt;code&gt;v0.5.0...v0.5.1&lt;/code&gt;&lt;/a&gt;&lt;/li&gt;&#xA;&lt;/ul&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.5.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.5.0/</link>
        <pubDate>Thu, 07 Jan 2021 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.5.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.5.0&lt;/strong&gt; · &lt;time datetime=&#34;2021-01-07&#34;&gt;2021-01-07&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.5.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.5.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.5.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;h2 id=&#34;outline&#34;&gt;Outline&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;The official docs site (&lt;a href=&#34;http://pigsty.cc/&#34;&gt;http://pigsty.cc/&lt;/a&gt;) is live.&lt;/li&gt;&#xA;&lt;li&gt;Database templating becomes fully declarative: define users, roles, databases, ACLs, extensions, and schemas in config.&lt;/li&gt;&#xA;&lt;li&gt;The default &lt;a href=&#34;https://pigsty.cc/docs/setup/security&#34;&gt;access model&lt;/a&gt; is refined and HBA management now comes straight from Pigsty instead of Patroni.&lt;/li&gt;&#xA;&lt;li&gt;Grafana provisioning switched from shoving a sqlite file to JSON provisioning via API.&lt;/li&gt;&#xA;&lt;li&gt;Added the &lt;code&gt;pg-cluster-replication&lt;/code&gt; dashboard to the open bundle.&lt;/li&gt;&#xA;&lt;li&gt;CentOS 7.8 offline bundle: &lt;code&gt;pkg.tgz&lt;/code&gt;.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;declarative-database-layouts&#34;&gt;Declarative Database Layouts&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;Multi-tenant headaches go away once everything is described as code. The new templates let you declare users, passwords, role hierarchies, DB defaults, extensions, schemas, and default privileges in YAML so a single config file replaces piles of runbooks. A stripped example:&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.4.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.4.0/</link>
        <pubDate>Mon, 14 Dec 2020 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.4.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.4.0&lt;/strong&gt; · &lt;time datetime=&#34;2020-12-14&#34;&gt;2020-12-14&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.4.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.4.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.4.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Pigsty v0.4 is our second public beta. The observability stack was rebuilt around Grafana 7.3, and ten curated dashboards became the default open-source payload. pg_exporter 0.3.1 drives metrics, and the alert wiring has been cleaned up for the new Grafana release.&lt;/p&gt;&#xA;&lt;h2 id=&#34;open-source-dashboards&#34;&gt;Open-Source Dashboards&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The OSS build now exposes ten high-signal Grafana panels: PG Overview, Cluster, Service, Instance, Database, Query, Table, Table Catalog, Table Detail, and Node. Even with a lean set it easily outclasses most “enterprise” PG monitoring suites.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.3.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.3.0/</link>
        <pubDate>Thu, 22 Oct 2020 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.3.0/</guid>
        <description>&lt;div class=&#34;td-release-card-static&#34;&gt;&#xA;  &lt;p&gt;&lt;strong&gt;v0.3.0&lt;/strong&gt; · &lt;time datetime=&#34;2020-10-22&#34;&gt;2020-10-22&lt;/time&gt;&lt;/p&gt;&#xA;  &lt;ul&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/releases/tag/v0.3.0&#34;&gt;View release&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.3.0.tar.gz&#34;&gt;Source · tar.gz&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty/archive/refs/tags/v0.3.0.zip&#34;&gt;Source · zip&lt;/a&gt;&lt;/li&gt;&#xA;    &lt;li&gt;&lt;a href=&#34;https://github.com/pgsty/pigsty&#34;&gt;pgsty/pigsty&lt;/a&gt;&lt;/li&gt;&#xA;  &lt;/ul&gt;&#xA;&lt;/div&gt;&#xA;&lt;p&gt;Pigsty v0.3.0 is the very first public preview. It packages a lean observability stack plus a reproducible offline bundle so you can spin up a real PostgreSQL lab without touching the public Internet.&lt;/p&gt;&#xA;&lt;h2 id=&#34;observability-stack&#34;&gt;Observability Stack&#xA;&lt;/h2&gt;&#xA;&lt;p&gt;The open build ships eight curated Grafana dashboards: PG Overview, Cluster, Service, Instance, Database, Table Overview, Table Catalog, and a bare-metal Node view. Even with a trimmed set the coverage still crushes most &amp;ldquo;enterprise&amp;rdquo; monitoring stories.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.0.5</title>
        <link>https://v15.pgsty.pro/blog/release/0.0.5/</link>
        <pubDate>Wed, 19 Aug 2020 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.0.5/</guid>
        <description>&lt;blockquote&gt;&#xA;&lt;p&gt;[!INFO]&lt;/p&gt;&#xA;&lt;p&gt;This historical version is represented by its &lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.0.5&#34;&gt;Git tag and source tree&lt;/a&gt; because no GitHub Release was published.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Added an offline installation mode for environments without Internet access.&lt;/li&gt;&#xA;&lt;li&gt;Introduced a dedicated Consul role and refreshed repository bootstrap behavior.&lt;/li&gt;&#xA;&lt;li&gt;Added psql startup helpers, split PostgreSQL script tasks, and fixed HAProxy connection-reset noise.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;This historical record is reconstructed from the &lt;code&gt;v0.0.5&lt;/code&gt; tag and its source comparison with &lt;code&gt;v0.0.4&lt;/code&gt;.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.0.4</title>
        <link>https://v15.pgsty.pro/blog/release/0.0.4/</link>
        <pubDate>Mon, 27 Jul 2020 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.0.4/</guid>
        <description>&lt;blockquote&gt;&#xA;&lt;p&gt;[!INFO]&lt;/p&gt;&#xA;&lt;p&gt;This historical version is represented by its &lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.0.4&#34;&gt;Git tag and source tree&lt;/a&gt; because no GitHub Release was published.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Split the former monolithic automation into dedicated Meta, Grafana, DNS, Nginx, and Prometheus roles.&lt;/li&gt;&#xA;&lt;li&gt;Added static-network handling and revised the local repository upstream policy.&lt;/li&gt;&#xA;&lt;li&gt;Expanded role documentation while keeping service registration templates aligned with the new layout.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;This historical record is reconstructed from the &lt;code&gt;v0.0.4&lt;/code&gt; tag and its source comparison with &lt;code&gt;v0.0.3&lt;/code&gt;.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.0.3</title>
        <link>https://v15.pgsty.pro/blog/release/0.0.3/</link>
        <pubDate>Wed, 22 Jul 2020 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.0.3/</guid>
        <description>&lt;blockquote&gt;&#xA;&lt;p&gt;[!INFO]&lt;/p&gt;&#xA;&lt;p&gt;This historical version is represented by its &lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.0.3&#34;&gt;Git tag and source tree&lt;/a&gt; because no GitHub Release was published.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Improved the early Pigsty configuration interface and added the monitoring schema.&lt;/li&gt;&#xA;&lt;li&gt;Added a Kubernetes playbook and refined the PostgreSQL initialization defaults.&lt;/li&gt;&#xA;&lt;li&gt;Simplified the Vagrant bootstrap path and fixed several HAProxy, Patroni, and exporter registration details.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;This historical tag predates the public release series. Its record is reconstructed from the tagged source and the commit history leading to &lt;code&gt;v0.0.3&lt;/code&gt;.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.2.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.2.0/</link>
        <pubDate>Fri, 10 Jul 2020 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.2.0/</guid>
        <description>&lt;blockquote&gt;&#xA;&lt;p&gt;[!INFO]&lt;/p&gt;&#xA;&lt;p&gt;This historical version is represented by its &lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.2.0&#34;&gt;Git tag and source tree&lt;/a&gt; because no GitHub Release was published.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Refactored the infrastructure, node, repository, Patroni, PgBouncer, monitoring, and PostgreSQL initialization roles.&lt;/li&gt;&#xA;&lt;li&gt;Added etcd as a DCS option, production/test inventory layouts, and configurable database superuser support.&lt;/li&gt;&#xA;&lt;li&gt;Added Patroni pause handling, HAProxy 2.2 compatibility, and fixes for older CentOS 7 environments.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;code&gt;v0.2.0&lt;/code&gt; predates curated GitHub Release notes. This record is reconstructed from the tagged source and the comparison with &lt;code&gt;v0.1.0&lt;/code&gt;.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Pigsty v0.1.0</title>
        <link>https://v15.pgsty.pro/blog/release/0.1.0/</link>
        <pubDate>Sat, 20 Jun 2020 00:00:00 +0000</pubDate>
        
        <guid>https://v15.pgsty.pro/blog/release/0.1.0/</guid>
        <description>&lt;blockquote&gt;&#xA;&lt;p&gt;[!INFO]&lt;/p&gt;&#xA;&lt;p&gt;This historical version is represented by its &lt;a href=&#34;https://github.com/pgsty/pigsty/tree/v0.1.0&#34;&gt;Git tag and source tree&lt;/a&gt; because no GitHub Release was published.&lt;/p&gt;&#xA;&lt;/blockquote&gt;&lt;h2 id=&#34;highlights&#34;&gt;Highlights&#xA;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;Completed the first large-scale conversion from playbooks to reusable Ansible roles.&lt;/li&gt;&#xA;&lt;li&gt;Established the initial PostgreSQL primary/standby, PgBouncer, monitoring, HAProxy, Keepalived, and repository workflows.&lt;/li&gt;&#xA;&lt;li&gt;Validated the reorganized project in a production-like test environment.&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;p&gt;&lt;code&gt;v0.1.0&lt;/code&gt; is an early engineering milestone rather than a curated GitHub Release. The notes are reconstructed from the tag and its commit history.&lt;/p&gt;</description>
      </item>
    
  </channel>
</rss>
