æ¦å¿µ
Postgres operator ç¨äºå¨ Kubernetes (K8s) ä¸ç®¡ç PostgreSQL é群:
-
该 operator çå¬ PostgreSQL éç¾¤æ¸ åæä»¶çåå»ºãæ´æ°ãå é¤å¹¶æ´æ°è¿è¡ä¸çé群ãä¾å¦, å½ç¨æ·æäº¤äºä¸ä¸ªæ°çæ¸ åæä»¶ï¼operator è·åå°æ¸ åæä»¶å¹¶å建ä¸ä¸ªæ°ç Postgres é群åä¸äº K8s StatefulSetsãPostgres è§è²çå¿ è¦çèµæºå®ä½ãæ¥çè¿äº Postgres æ¸ åæä»¶ å¯ä»¥äºè§£æ¶µççé ç½®ã
-
该 operator ä¹çå¬ å®èªèº«é ç½®æä»¶ çæ´æ°å¹¶ä¸å¨å¿ è¦çæ åµä¸æ´æ°è¿è¡ä¸çé群ã对äºå®ä¾ï¼å¦æ pod ä¸çéåä¿®æ¹äºï¼operator 伿§è¡æ»å¨æ´æ°ï¼è¿å°æå³çå®ä¼ä¸ä¸ªä¸ä¸ªå°éæ°çæ StatefulSet ä¸ç podï¼å¹¶ä½¿ç¨æ°çéåã
-
æç»ï¼è¯¥ operator ä¼å¨ææ§å°åæ¥æ¯ä¸ª Postgres é群çç¶æï¼æçå®ç¶æåæ¥è³æ¸ åæä»¶ä¸å®ä¹çææç¶æã
-
该 operator æ¨å¨è®©ç¨æ·æ éæä½å³å¯ç®¡çé群ï¼ä¸ä» ä» éè¿æ¸ åæä»¶è¿è¡é ç½®ç¸å ³å·¥ä½ãè¿æ ·å°±å¯ä»¥è½»æ¾éæå°èªå¨é¨ç½²æµæ°´çº¿ä¸ï¼èæ éç´æ¥è®¿é® K8sã
èå´
Postgres Operator çèè´£å¨äºç»´æ¤, æ´æ¹é ç½®åæ¸ ç Postgres é群åä½¿ç¨ Patroniï¼ operator 主è¦è®© Patroni è¿è¡å¨ K8s é群ä¸å徿´ç®åãæ¹ä¾¿ãoperator 䏿¹é¢ç»´æ¤å ä¿®æ¹ K8s èµæºï¼å¦ä¸æ¹é¢å¨æ°æ®åºé群å¯å¨åæè¿è¡ä¸ï¼ä¹ç»´æ¤æ°æ®åºåæ°æ®åºè§è²ãæä»¬å°è¯ å°å°½å¯è½å¤çå·¥ä½çç»éåç K8s å Patroniï¼å°¤å ¶æ¯é群å¯å¨åé«å¯ç¨ã使¯ï¼operator ä¼åä¸ä¸äºæ»ä½æµç¨ï¼ä¾å¦æ»å¨æ´æ°ä»¥æ¹åç¨æ·ä½éªã
å½åï¼çæ§æè°æ´ Postgres ä¸å¨ operator çèå´å ãç¶èï¼éè¿å ¨å± sidecars é ç½®ï¼ æä»¬æä¾è¶³å¤ççµæ´»æ§å»éæä¸äºå·¥å ·ï¼æ¯å¦ ZMON, Prometheus æå ¶å® Postgres å·¥å ·ã
å®ä½å ³ç³»æ¦è§
è¿å¹ 徿»ç»äºå¨æäº¤æ°ç Postgres é群 CRD æ¶ operator å°å建çå 容:

è¿å¹ 徿²¡æå®å ¨å°å±ç¤ºå个é群 pod ä¸ç»ä»¶æ åµï¼è®©æä»¬æ¾å¤§å¾ççç:

è¿ä¸¤å¹ å¾å¯ä»¥å¸®å©ä½ äºè§£ operator æä¾ç主è¦åè½ã
ç¶æ
该项ç®ä»ç¶å¤äºå¼åé¶æ®µã使¯ Zalando å é¨ å·²ç»å¨ 使ç¨äºï¼ç¨æ¥å¨ K8s ä¸è¿è¡å¤§éç Postgres é群æµè¯ç¯å¢ï¼ç产ç¯å¢ä¹ç¨çè¶æ¥è¶å¤ã 卿¤ç¯å¢ä¸ï¼operator 被é¨ç½²å°å¤ä¸ª K8s é群ï¼ç¨æ·å¯ä»¥å¨å ¶ä¸éè¿æä»¬ç CI/CD åºç¡æ¶æï¼æä¾é ç¨æ·ç颿¥åå»ºæ¸ åã
请åé¦ä»»ä½ä»»ä½éå°çé®é¢å° https://github.com/zalando/postgres-operator/issues.
æ¼è®²
-
"PostgreSQL on K8S at Zalando: Two years in production" talk by Alexander Kukushkin, FOSSDEM 2020: video | slides
-
"Postgres as a Service at Zalando" talk by Jan MuÃler, DevOpsDays PoznaÅ 2019: video
-
"Building your own PostgreSQL-as-a-Service on Kubernetes" talk by Alexander Kukushkin, KubeCon NA 2018: video | slides
-
"PostgreSQL and Kubernetes: DBaaS without a vendor-lock" talk by Oleksii Kliukin, PostgreSQL Sessions 2018: video | slides
-
"PostgreSQL High Availability on Kubernetes with Patroni" talk by Oleksii Kliukin, Atmosphere 2018: video | slides
-
"Blue elephant on-demand: Postgres + Kubernetes" talk by Oleksii Kliukin and Jan Mussler, FOSDEM 2018: video | slides (pdf)
-
"Kube-Native Postgres" talk by Josh Berkus, KubeCon 2017: video
æç«
-
"How to set up continuous backups and monitoring" by PÃ¥l Kristensen on GitHub, Mar. 2020.
-
"Postgres on Kubernetes with the Zalando operator" by Vito Botta on has_many :code, Feb. 2020.
-
"Running PostgreSQL in Google Kubernetes Engine" by Kenneth Rørvik on Repill Linpro, Sep. 2019.
-
"Zalando Postgres Operator: One Year Later" by Sergey Dudoladov on Open Source Zalando, Nov. 2018