Slony report

Download Report

Transcript Slony report

Slony-I 的基本介紹與應用
Agenda
 Slony-I 的優點
 Slony-I 的限制
 Slony-I 的 Failover 與 Switchover 差異
 Slony-I 的應用建議
 BI 與 Reports
 資料庫升級
 異地備援
 快速重建 Node 的方式
 總結
 Q&A
Slony是什麼?
 Slony 是一個database replication 工具. (v. 1.2.17, 2.0.2)
 設計用在PostgreSQL Database 系統上. (7.3.2以上)
 EDB Community Project
 單一 master, 多個slave架構 (建議12個以內)
 Slave Read Only
 以Trigger 方式replicate database (insert, update, delete, copy,
alter …)
 Table set為單位. 可有彈性的對重要的Table做備份
 http://slony.info/
Slony replication的用途
 備分資料庫以防災難發生
 分散資料存取流量和降低系統負荷
 High Availability (HA).
 降低downtime時間
 在不同的災難能夠迅速從意外發生後恢復正常而且把錯
誤降至最低.
 降低系統的使用瓶頸
Slony 不適合
 Schema 常會有架構上的變化(create, alter, drop 對
tables, schema)
 Tables 架構常會增加,移除或變動
 Node 常上,下線
 連線不良
Slony-I 的優點
 成熟、穩定的 replication 系統,支援單
一 master 對多個 slaves 進行
replication
 為 EnterpriseDB 的 Community Project
,可使用於不同版本的 PostgreSQL 伺
服器
 因 Slony-I slaves 僅能讀資料,可提供
read-only applications 使用 replicated
的 tables ,分散負荷
 可設定不同的 Replication Set,如 Set
1 提供 Reporting 所需的 tables,Set 2
提供 BI 所需的 tables
Slony-I Node Failover/Switchover
 支援 cascaded replication,slave nodes 可以不需全都
從 master 取資料,也進而降低 multi-site replication 的
頻寬使用量
 可視需要隨時新增 slaves,不必重新設定 Slony-I
cluster 及資料庫
在nodes不中斷的情況下,可 promote slave
成 master (即 failover 與 switchover)
Slony-I 的限制
 不會自動更新 Database Schema
Update (DDL)
 不支援 View 與 Indexes 的 replication
 不支援 Multi-Master
 Slony-I 無 Proxy 或 Pool 功能,需對
Application 設定欲連結至哪個 Node
 Slony-I 雖有內建 Failover 機制,但需
搭配 Heartbeat 裝置或軟體以達到自動
Failover
 Communication Cost 會因 Node 的增
加而提高,官方建議每個 Slony-I
Cluster 包含 6 個 Nodes 為最佳
Application 連結 Slony-I Cluster 的方式
Slony 安裝
 裝PostgreSQL 或Enterprise DB
 可以下載套件一次全裝, 或是分開下載獨立安裝.
 Windows, Linux x86-32,64, Mac, Solaris SPARC,
Solaris x86-64
 YUM-CentOS, Fedora, RHEL
 APT-Debian, Ubuntu
 裝Slony
 Ver1.2 版本有source file, rpm 和給Windows
 Ver2.0版只有source file
Slony Configuration
 先確認要replicate的table(s)資料都相同
 Cluster setup script
 Subscribe script
 Start slon engine (先master在slave)
 slon sql_cluster "dbname=contactdb user=postgres" &
Slon 開啟畫面
Slony-I 的應用建議 – Reporting 與 BI
可於 Slony-I Cluster 為不同部門或活動建
立不同的 Replication Set
可搭配pgpool的Load Balance (loading weight
distribute), parallel query (query rewrite)
分散Read-Only Application、Reporting 或 BI 活動對
Master 的負載
依需求可應用 Cascaded Replication 降低對 Master 的負
載