mysql迁移至postgresql_PostgreSQL来自欧罗巴Patroni系列技术主题一
文章轉(zhuǎn)載自公眾號:AustinDatabases
本次閱讀時長:
.
.
系列一:為什么選擇Patroni?2019.Pgconf.Asia中有這么一篇演講,關于PostgreSQL的高可用的問題,其中提到常用的三種PostgreSQL的高可用方式,其中repmgr之前寫過了,當然其實還不完善,另外一個就是我們今天提到的Patrnoi,不大想一開始就是安裝,還是從他的起源和歷史來,要不使用了,還不知道他從哪里來,有可能從哪里去, 也枉然用過他。一個開源的軟件,你首先的知道他的來自于哪里,要不哪天斷供了,怎么辦,patrnoi來自于大歐羅巴的德國,總公司位于柏林。這是一家在歐洲知名的電商公司,主營的業(yè)務是主營時尚圈的事情,當然還有表,技術員工在1700人。那這個軟件的作者是誰Alexander和Oleksii(其實有時候真該反思反思,Mysql的MHA是日本人發(fā)明,PostgreSQL Patroni是德國人發(fā)明,當然還有挪威人、俄羅斯人發(fā)明的一些類似的東西),并且在世界范圍使用。
為什么要使用patroni,對比目前常用的高可用的方式存在問題
提升一個復制節(jié)點時無響應的情況下,存在腦裂的可能
單一的monitor節(jié)點對于集群的監(jiān)控缺陷以及失敗節(jié)點必須被清理的問題
多點監(jiān)控中的分布一致性的問題
所以Patroni的誕生是因為這些問題在其他的方式中并沒有被解決,Patroni本身并沒有在內(nèi)部來解決上述問題,而是巧妙的使用了,大部分常用的DCS,Distributed Configuration System(DCS),例如etcd,zookeeper,consul 等來作為解決上面3個問題的方法。
任何解決方案都有他的Pros和Cons,Patroni的Cons又是什么,例如當某個節(jié)點并未和主節(jié)點連接的情況下,可能Patroni可能無法判斷,還是顯示從屬節(jié)點。另外還需要對于zookeeper或者etcd等有相關的知識,設置上可能不如repmgr要簡單方便。
當然也有一些不客氣的話,對于PostgreSQL的其他的HA的方案,例如drbd,corosync+pacemaker,repmgr等方案用上了out of date的詞匯。
實際上,repmgr的變化方式已經(jīng)在某云使用了,不知道他們聽到如此的詞匯作何感想。
實際上到底Patroni有沒有一個簡單的introduce。
Patroni是一個有Zalando研發(fā)的,完整由python代碼的開源產(chǎn)品,通過DCS來對PostgreSQL各個節(jié)點的狀態(tài)進行判斷,在添加節(jié)點方面你需要通過你熟悉的手段來自行添加節(jié)點(repmgr在安裝中會將節(jié)點加入),同時還能定義類似MHA中某些節(jié)點一直是standby的角色,不參與mater的競爭,其中還能定義一些觸發(fā)行為,例如在start,stops,failover等狀態(tài)下觸發(fā)后,到底要繼續(xù)做些什么。并且也可以類似MHA的方式手動切換主節(jié)點。
那么還有一個問題值得來說,到底patroni應該最低是幾個幾點,這里建議是3個節(jié)點,這和Mysql的MHA中建議的三個節(jié)點是一個意思,大多數(shù)原則,防止由于網(wǎng)絡等問題,造成的一些雙數(shù)節(jié)點出現(xiàn)的不可預測的問題。
另外repmgr本身是可以通過witeness的技術防止類似問題,但起步也是最少三個節(jié)點,但這又給了文字最初英文中,out of date中提出的單點monitor 于口實。所以patroni的確在某些方面要比某些高可用的方案嚴謹。
所以選擇patroni作為PostgreSQL的高可用的方式是有可圈可點。另外通過docker+K8S部署patroni的方案也是有的,參見下圖,也是目前另一種更方便的并且適合大批量部署的方式。
I Love PG關于我們
中國開源軟件推進聯(lián)盟PostgreSQL分會(簡稱:中國PG分會)于2017年成立,由國內(nèi)多家PostgreSQL生態(tài)企業(yè)所共同發(fā)起,業(yè)務上接受工信部中國電子信息產(chǎn)業(yè)發(fā)展研究院指導。中國PG分會是一個非盈利行業(yè)協(xié)會組織。我們致力于在中國構建PostgreSQL產(chǎn)業(yè)生態(tài),推動PostgreSQL產(chǎn)學研用發(fā)展。
歡迎投稿
做你的舞臺,show出自己的才華?。
投稿郵箱:partner@postgresqlchina.com
????????????????????——愿能安放你不羈的靈魂
往期回顧?
活動成就
PostgresConf.CN & PGConf.Asia2020大會預告
PG ACE計劃的正式發(fā)布
三期PostgreSQL國際線上沙龍活動的舉辦
六期PostgreSQL國內(nèi)線上沙龍活動的舉辦
PGCM高級認證培訓的正式開啟
經(jīng)典文章
PostgreSQL 13.0 正式版發(fā)布通告
深度報告:開源協(xié)議那些事兒
從“非主流”到“潮流”,開源早已值得擁有
Oracle中國正在進行新一輪裁員,傳 N+6 補償
PostgreSQL與MySQL版權比較
PostgreSQL與Oracle:成本、易用性和功能上的差異
使用ora2pg完成從Oracle到Postgres的遷移
精彩專輯
PostgreSQL活動篇
總結
以上是生活随笔為你收集整理的mysql迁移至postgresql_PostgreSQL来自欧罗巴Patroni系列技术主题一的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 学云计算可以做什么工作 软件工程师很受欢
- 下一篇: 招行visa卡是什么卡