Pigsty v4.3 正式發(fā)布。如果說 v4.2 的主題是 “十二內(nèi)核”,那么 v4.3 的主題就是 “擴(kuò)展密度”。
在這個版本中,支持的 PG 擴(kuò)展數(shù)量從 460 個暴漲至 510 個,達(dá)到新高度。 在操作系統(tǒng)支持上,Ubuntu 26.04 進(jìn)入支持矩陣,Ubuntu 20.04 正式退場。 Supabase、pgEdge、PolarDB、Grafana、MinIO 這些核心組件也完成了一輪集中刷新。
Pigsty v4.3:成為主流
通常來說,在 GitHub 上,5000 star 是一個分水嶺,代表一個開源項(xiàng)目進(jìn)入 “主流” 的行列。 最直觀的福利就是 —— 有資格申請免費(fèi)的 ChatGPT / Claude 訂閱了。
Pigsty 最近:當(dāng)前的 Star 5066,GitHub 上 Star > 5066 的倉庫有 11621 個,也就是排名 1 萬左右,前 0.005% 的項(xiàng)目。 對于數(shù)據(jù)庫發(fā)行版這樣的賽道來說,Star 的含金量會更高 —— 從 Star 上來看,Pigsty 已經(jīng)是 PG 發(fā)行版賽道的 No.3,Linux 原生 PG 發(fā)行版賽道的 No.1 了。
![]()
最讓我驚訝的是 Pigsty.IO 網(wǎng)站的流量,在三月份的時候,Pigsty.io 的月 UV 還不到兩千萬,在四月底的時候,就已經(jīng)突破一億了。 其中 99%+ 的流量來自 AI/Agent。這意味著 Pigsty 網(wǎng)站已經(jīng)成為主流 AI 的關(guān)鍵語料,以及 AI Agent 使用的基礎(chǔ)設(shè)施。 對于一個 “個人項(xiàng)目” 來說,這確實(shí)是難能可貴的成就了。
![]()
擴(kuò)展總數(shù)突破 510
PostgreSQL 最強(qiáng)的地方是擴(kuò)展性,但擴(kuò)展生態(tài)的工程現(xiàn)實(shí)并不輕松。v4.3 新增約 50 個 PostgreSQL 擴(kuò)展,可用擴(kuò)展總數(shù)達(dá)到 510 個。新增擴(kuò)展覆蓋面很廣:
?block_copy_command、external_file、logical_ddl、pg_query_rewrite 這類偏內(nèi)核與 DDL/執(zhí)行機(jī)制的工具。?datasketches、onesparse、rdkit、pghydro、provsql 這類數(shù)據(jù)科學(xué)、稀疏計算、化學(xué)信息、地理水文、概率數(shù)據(jù)庫方向的擴(kuò)展。?pg_text_semver、pg_variables、pg_when、pgcalendar、pglock 這類日常開發(fā)與管理工具。?postgresbson、pgproto、re2、pgmq、pgmqtt 這類協(xié)議、隊(duì)列、正則和消息相關(guān)組件。?storage_engine、pg_pathcheck、pg_savior、pg_textsearch 這類需要更認(rèn)真理解加載方式或風(fēng)險邊界的高級擴(kuò)展。
其中不少擴(kuò)展已經(jīng)跨過了 pgrx 版本遷移,例如從 0.16.1 切到 0.17.0,甚至 pg_search 和 pg_trickle 已經(jīng)進(jìn)入 pgrx 0.18.0 線。 Rust 擴(kuò)展生態(tài)越來越活躍,這很好,但對發(fā)行版維護(hù)者來說,也意味著每輪構(gòu)建都要額外處理 Rust toolchain、cargo 依賴、PG 版本適配和平臺差異。
![]()
用戶看到的是一行 CREATE EXTENSION,維護(hù)者看到的是一張矩陣,一兩百個包。不過現(xiàn)在老馮的擴(kuò)展維護(hù)流程已經(jīng)接入了 Agent 工作流。 無論是新增擴(kuò)展,還是版本更新,都有一套完整的自動化流程,所以盡管擴(kuò)展數(shù)量越來越多,維護(hù)成本不增反降,依然在一個人的維護(hù)能力范圍內(nèi)。
Ubuntu 26.04 進(jìn)入支持矩陣
v4.3 新增 Ubuntu 26.04 x86_64 / arm64 支持,同時正式棄用 Ubuntu 20.04。
Pigsty 當(dāng)前支持 8 個主要操作系統(tǒng)版本,覆蓋 x86_64 與 arm64 兩種架構(gòu),一共是 16 個平臺組合:
![]()
Ubuntu 24.04(noble)仍然是當(dāng)下使用最多的系統(tǒng)版本。Ubuntu 26.04 也許會在后續(xù)幾年中逐步替代 Ubuntu 24.04,成為很多用戶的新基線。
其實(shí)我們在 Ubuntu 26.04 發(fā)布當(dāng)天就已經(jīng)添加了初步支持,不過很多 Pigsty 提供的三方擴(kuò)展還需要花時間構(gòu)建與核驗(yàn)。 這次 Ubuntu 26.04 的常規(guī)擴(kuò)展和離線安裝包已經(jīng)就位;Rust 擴(kuò)展目前還沒有提供,后續(xù)會繼續(xù)補(bǔ)齊。
此外,Ubuntu 24.04 的版本也從 24.04.3 升級為 24.04.4,Debian 13 的版本從 13.3 升級到 13.4
Pigsty 使用的 vagrant 和 terraform 模板也都相應(yīng)更新到最新的版本。 不過阿里云目前還沒有提供 Ubuntu 26.04 的鏡像。
內(nèi)核更新:Supabase、pgEdge、PolarDB
Supabase 自建模板更新到最新版本。Pigsty 是極少數(shù)幾個提供企業(yè)級 Supabase 自建方案的開源 PG 發(fā)行版之一。這次我們把 Supabase 模板更新到了最新版本,另外,我們還提供了一個 “Supabase” 青春版 —— Insforge 的自建支持。
pgEdge 更新到 PG 18。pgEdge 的核心價值是基于 PostgreSQL 的多主復(fù)制,底層依賴 Spock 等三個擴(kuò)展。這次 Spock 支持的最新 PG 大版本從 17 提升到了 18,我們也相應(yīng)更新并重新構(gòu)建。
PolarDB 更新到 PG 17,對應(yīng)版本來到 17.9.1.0。PolarDB 是共享存儲架構(gòu)的 PostgreSQL 內(nèi)核分支,之前基線停留在 PG 15,這次跨到 PG 17。
OrioleDB 繼續(xù)更新到 OriolePG 17.18 與 OrioleDB beta15 / 1.7。OrioleDB 仍然處在快速演進(jìn)階段,不建議在生產(chǎn)庫里激進(jìn)采用,但作為 PostgreSQL 存儲引擎方向的前沿項(xiàng)目,可以嘗嘗鮮。
Cloudberry 更新到 2.1.0,并新增 cloudberry-backup 與 cloudberry-pxf 包。上一版 Pigsty 把 Cloudberry 帶回發(fā)行矩陣,這一版補(bǔ)齊了周邊工具。
![]()
Grafana 13 與 Victoria 組件刷新
可觀測性是 Pigsty 的基本盤。這次的可觀測性技術(shù)棧也進(jìn)行了批量更新。 最顯著的改動是 Grafana 大版本更新,從 12 到 13 引入了許多新功能,比如支持在 Dashboard 里使用 Tab,這帶來了更多有趣的玩法。
v4.3 將 Grafana 更新到 13.0.1,并同步刷新插件包:
?grafana:12.4.1 -> 13.0.1?grafana-plugins:12.3.0 -> 13.0.0?grafana-infinity-ds:3.7.4 -> 3.8.0?grafana-victoriametrics-ds:0.23.1 -> 0.24.0
Victoria 系列也進(jìn)行了集中更新:
?victoria-metrics:1.138.0 -> 1.142.0?victoria-metrics-cluster:1.138.0 -> 1.142.0?vmutils:1.138.0 -> 1.142.0?victoria-logs:1.48.0 -> 1.50.0?vlagent / vlogscli:1.48.0 -> 1.50.0?victoria-traces:0.8.0 -> 0.8.2
同時也修了個用戶反饋的小問題,VictoriaTraces 的 Grafana 數(shù)據(jù)源路徑修正為 /select/jaeger。
![]()
etcd CVE 修復(fù)
之前,etcd 3.6.8 爆出來一個 CVE,3.6.9 修復(fù)了但引入了新的問題,給 member list API 加上了 Auth,導(dǎo)致 PG 高可用組件 Patroni 失效(4.1.0 以前版本),Patroni 4.1.1 修復(fù)了這個問題。
這里要提醒一下用戶,Patroni <= 4.1.0 與 etcd <= 3.6.8 配合使用;而 Patroni >= 4.1.1 與 etcd >= 3.6.9 配合使用,也就是這兩個軟件的版本必須配套。老配老,新配新,否則就會有問題。
之前在 v4.2.2 中,EL 側(cè)已經(jīng)更新了 etcd 3.6.10 與 patroni 4.1.1,但是因?yàn)?APT 倉庫更新慢,所以 DEB 側(cè)還停留在 etcd 3.6.8 與 patroni 4.1.0 的老版本上。現(xiàn)在 v4.3 中,DEB 側(cè)也完成了更新,用戶可以放心升級了。
MinIO CVE 修復(fù)
老馮之前 fork 了 MinIO,四月份修復(fù)了幾個 CVE,寫了一篇《續(xù)命 MinIO,承諾兌現(xiàn)[3]》聊了聊這個事,完整背景和漏洞細(xì)節(jié)可以看那篇。 Pigsty v4.3 實(shí)裝了修復(fù)后的新版本:20260417000000。
這批修復(fù)覆蓋 OIDC/JWT、LDAP STS 登錄、復(fù)制頭元數(shù)據(jù)、S3 Select、unsigned-trailer 簽名校驗(yàn)等路徑。對 Pigsty 用戶來說,重點(diǎn)不是每個漏洞的利用細(xì)節(jié),而是對象存儲組件已經(jīng)切到帶修復(fù)的版本,離線包也一并更新了。
現(xiàn)在老馮的這個 fork(Silo)已經(jīng)被一些項(xiàng)目用在實(shí)際生產(chǎn)環(huán)境中了,比如 Grafana Loki。silo 文檔站每個月有千萬級別的請求量,Docker Hub 上的下載也達(dá)到了 10 萬+。 應(yīng)該是目前影響力最大的 MinIO fork 了。老馮雖然挺開心,但重申一下這并不是我的主業(yè),我只是確保 Pigsty 用戶有這么一個能用的開源對象存儲選項(xiàng)就可以了。
然后最近發(fā)現(xiàn) RustFS 竟然也成了奇績校友,跟他們聊天得知后面準(zhǔn)備把 RustFS 做成 MinIO 的 Drop-In 替代。老馮覺得如果這個目標(biāo)真能實(shí)現(xiàn),我會認(rèn)真考慮直接用 RustFS 替換 MinIO。 這次欣慰地看到 RustFS 告別 Alpha 階段,發(fā)布了第一個 Beta 版本,我也打好了包。大概計劃在七月左右會有 GA 版本。
Vagrant 模板統(tǒng)一切到 cloud-image
Vagrant 對很多人來說只是本地測試工具,但對 Pigsty 這種需要驗(yàn)證多操作系統(tǒng)、多架構(gòu)、多拓?fù)涞捻?xiàng)目來說,它是很重要的開發(fā)與驗(yàn)收入口。
v4.3 將 Vagrant 模板統(tǒng)一切換到 cloud-image 系列鏡像。 主要是因?yàn)椋@是唯一一個完整覆蓋 Virtualbox/Libvirt amd64/arm64 四種排列組合下所有 Pigsty 支持的操作系統(tǒng)的鏡像族
這個改動主要是為了降低系統(tǒng)鏡像差異帶來的不確定性。傳統(tǒng) box 鏡像質(zhì)量參差不齊,網(wǎng)絡(luò)、磁盤、cloud-init、guest tools 的行為都可能有細(xì)微差異。 cloud-image 是發(fā)行版官方更標(biāo)準(zhǔn)、更持續(xù)維護(hù)的路徑,統(tǒng)一到這條線之后,后續(xù)適配和排障都會簡單很多。
不過這個鏡像的默認(rèn)網(wǎng)卡名不再是 eth1 了,如果你需要測試 VIP 相關(guān)的功能,請記得調(diào)整配置中的網(wǎng)卡名稱。
![]()
幾個值得單獨(dú)提的修復(fù)
v4.3 還有一些看似不起眼,但屬于是用戶真實(shí)撞上的問題的修復(fù)。
PostgreSQL 用戶名校驗(yàn)放寬:現(xiàn)在允許少量特殊符號 @.- 出現(xiàn)在用戶名定義中。現(xiàn)實(shí)里很多企業(yè)賬號體系會使用郵箱式用戶名或帶域標(biāo)識的用戶名,數(shù)據(jù)庫發(fā)行版不應(yīng)該用過窄的正則把這些合法需求擋掉。
IPv6 nameserver 解析修復(fù):舊邏輯只提取 IPv4 DNS Server,遇到 IPv6 nameserver 時會漏掉配置。現(xiàn)在修復(fù)后,可以正確處理 IPv6 DNS 場景。IPv6 支持常常不是主線需求,但一旦環(huán)境里有,它就是硬需求。
其他的一些特性
此外,在 Pigsty v4.3 中,我們還試點(diǎn)加入了 Hindsight 記憶框架(基于 PG 與 pgvector)和 Hermes Agent 自建模板支持。它們都還屬于試點(diǎn)功能,這里就不展開了。
小結(jié)
Pigsty v4.3 說大不大,沒有框架,接口上的改動。但說小也不小,一口氣上新了 50 個擴(kuò)展。
它沒有一個單點(diǎn)爆炸的新功能,但它把很多用戶真正關(guān)心的東西一起往前推進(jìn)了:更多擴(kuò)展,更新的操作系統(tǒng),更新的內(nèi)核分支,更新的監(jiān)控棧,更穩(wěn)的 Vagrant 模板,修復(fù) CVE 的對象存儲包,修正了一批實(shí)際會踩到的小問題。
數(shù)據(jù)庫發(fā)行版的價值,很多時候就體現(xiàn)在這些不性感的地方。你不需要自己去追 50 個擴(kuò)展的構(gòu)建狀態(tài),不需要自己檢查 Ubuntu 26.04 的包矩陣,不需要自己處理 MinIO CVE 分支,不需要自己整理 Grafana 13 插件和 Victoria 組件版本,不需要自己猜 Vagrant 鏡像該用哪個。
Pigsty 把這些東西收斂成一個版本。你拿來用就行。下面附完整的 v4.3.0 提交注記與包變更摘要,方便按需查閱。
v4.3.0 提交注記
亮點(diǎn)
?新增約 50 個 PostgreSQL 擴(kuò)展,總可用數(shù)量達(dá)到 510 個?支持 Ubuntu 26.04 x86_64/arm64,棄用 Ubuntu 20.04 支持;小版本更新至 Debian 13.4 / Ubuntu 24.04.4?內(nèi)核更新:Supabase 更新至最新版本,pgEdge 更新至 PG 18,PolarDB 更新至 PG 17?Grafana 更新至 13.0.1,MinIO 使用修復(fù) CVE 后的 pgsty/Silo 分支。?Vagrant 模板統(tǒng)一切換至 cloud-image 系列鏡像。
問題修復(fù)
?PostgreSQL 用戶名校驗(yàn)放寬,允許 @.- 幾個字符出現(xiàn)在用戶名中。?修復(fù) IPv6 nameserver 解析,避免 DNS 配置只匹配提取 IPv4 的舊 DNS Server。?VictoriaTraces Grafana 數(shù)據(jù)源路徑改為 /select/jaeger。?Vagrant 磁盤探測更穩(wěn)健,新增 EL vagrant 鏡像 guest 網(wǎng)絡(luò)修復(fù)腳本 bin/el-fix。
![]()
![]()
數(shù)據(jù)庫老司機(jī)
點(diǎn)一個關(guān)注 ??,精彩不迷路
對 PostgreSQL, Pigsty,下云 感興趣的朋友
歡迎加入 PGSQL x Pigsty 交流群 (QQ 619377403)
![]()
![]()
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺“網(wǎng)易號”用戶上傳并發(fā)布,本平臺僅提供信息存儲服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.