企業通信解決方案是企業通信的核心構件,如果其穩定性沒有得到充分保障的話,員工溝通和客戶溝通就會帶來很多的問題。一般來說,相對比較小的或者中小型的IPPBX或者UC無需複雜的備份處理機制,僅對系統文件備份即可。但是,相對比較大型的,或者超過200-300用戶以上的系統為了降低運營風險則需要比較穩定的熱備機制。今天,我們分享一個通過使用心跳機制和資料庫實現IPPBX的熱備處理的典型案例。
圖例來自於網際網路資源
概述
隨著通信全IP化的進程,現代企業中基於IP的語音、視頻、會議、融合通信已廣泛應用,企業部署的IPPBX作為通信系統最核心的部分,如何保證高可靠性與安全性尤為重要,也成了考驗系統能力的一種標準。
鼎信通達推出的UC8000系列IPPBX是基於最新技術開發的增強型軟交換系統,採用軟交換+硬體伺服器架構,可提供雙機熱備高可靠解決方案,通過硬體冗餘再配合高可用雙機熱備軟體實現的技術方案,自動檢測伺服器的運行狀態,當主機發生故障,可以立即切換到備機接管業務,客戶無感知,秒級切換,最大保證業務系統不間斷運行,為企業提供穩定可靠的通信保障。
雙機熱備架構說明
為了解決在不可控因素的影響下,通訊系統依然可以正常工作,高度保障用戶的通訊不中斷,因此需要採用雙機熱備模式,來保障系統的高可靠性。雙機熱備是將 Hearbeat、PostgreSQL 主從配置和守護進程相結合。
Heartbeat 負責主從伺服器之間心跳檢測,當檢測到主伺服器規定時間內不發心跳包時,判斷為主伺服器出現故障,Heartbeat 會立即將從伺服器設置為主伺服器來接管業務,保障用戶通訊系統不會因故障而影響使用。同時 資料庫的雙機熱備配置,在用戶向資料庫中寫數據時,會同時寫入主、從伺服器的資料庫中,當其中主資料庫故障、癱瘓時,可立即切換使用從資料庫伺服器,保障用戶數據丟失。
UC8000系統的智能守護進程會實時監測業務系統狀態是否正常運行,若檢測到所守護的進程停止工作,守護進程會嘗試將其重新啟動,進而保證無論是主還是從伺服器的系統都運行正常。 除了Heartbeat 心跳檢測外,相當於單機的IPPBX伺服器還要做PostgreSQL 資料庫的主從同步和故障切換。保障主從軟交換節點的數據配置保持一致,並且當伺服器故障宕機後,自動切換使用備伺服器,PostgreSQL 資料庫角色也會自動切換為主。
部署方式一:IPPBX系統和資料庫部署在同一臺伺服器
企業用戶數不多,呼叫業務數據較少,用戶對話單、錄音等數據信息的安全存儲要求不是特別高,可以將IPPBX和資料庫部署在同一臺伺服器,實現雙機熱備部署方案,在兩臺UC8000伺服器上分別部署 Heartbeat檢測,用Eth1 接口做心跳檢測,Eth0網口接外網用於跑呼叫業務,從伺服器的Eth0網口默認是down,當檢測到主伺服器宕機後,備伺服器自動將本機的 Eth0 接口啟用,以此實現將主伺服器的業務全部轉移到備伺服器上。主備伺服器所有數據都會實時同步,主備切換伺服器時保證數據的一致性,為用戶的通訊系統穩定運行保駕護航。
組網拓撲:
部署方式二:IPPBX和資料庫單獨部署,雙資料庫備份
如果用戶對數據安全性存儲要求很高,數據對於客戶特別重要,可以採用IPPBX軟交換和資料庫分開獨立部署的高可靠解決方案,IPPBX實現雙機熱備,同時部署雙資料庫實現數據容災備份,可以保障客戶數據的安全,在兩臺UC8000伺服器上分別部署 Heartbeat檢測,用Eth1 接口做心跳檢測,Eth0網口接外網用於跑呼叫業務,從伺服器的Eth0網口默認是down,當檢測到主伺服器宕機後,備伺服器自動將本機的 Eth0 接口啟用,以此實現將主伺服器的業務全部轉移到備伺服器上。除軟交換業務外,還有PostgreSQL的主從同步和主從切換腳本,UC8000會將CDR話單、錄音等數據同時發給主備資料庫伺服器,從而實現業務數據的同步以及容災備份,為用戶的通訊系統穩定運行保駕護航。
組網拓撲:
參考資料:
https://severalnines.com/database-blog/tracking-high-availability-postgresql-heartbeat
www.dinstar.cn