這周主要作了監控的功能以及對LB發佈的優化(支持串並行執行)。之因此作了這兩個比較實用的功能點,主要是基於如下的考慮:
網絡
1.支持串並行執行。以前的重載的執行方式統一都是並行執行的,即一點擊重載按鈕,立刻對全部LB進行了重載。但在實際測試過程當中,咱們發現假如線上有業務的時候,同時重載LB(主要是quagga)會致使網絡不通的狀況,緣由是重載quagga後,ospf須要從新收斂,創建彼此的鄰居關係,據咱們觀察大概會持續60秒左右。因此,這次開發中,添加了對串行執行功能的支持,即每重載一臺LB,暫停60s。同時也保留了原來的並行重載功能,對於新上線的業務,無需確保業務不掉線,則經過並行執行重載速度會快不少。(大概5,6s就能搞定)。
ide
2.告警。實際上接入這個LVS管理系統後,咱們但願以這個系統做爲管理的統一入口,而不但願還人爲的介入其中,即咱們但願全部新增、修改配置都經過管理系統來完成,而不要到系統上手動變動配置(由於其餘系統但願從咱們這個系統調用接口,準確的知道VIP綁定在哪些機器上),所以開發了這個針對配置文件變動的監控。其主要工做原理是,在發佈LB配置的同時下發一個監控腳本,經過配合crontab 10分鐘探測一次,對比keepalived.conf 和最新發布的keepalived.conf 是否一致,若不一致則上報到LVS管理系統,並經過手機短信、郵件的方式告警。另外,若配置被修改,在系統上能夠看到已被修改的提示,即修改時間。後期作權限控制的時候會逐漸完善這一功能,包括記錄操做日誌,記錄操做人等等。測試
郵件告警優化
手機短信告警spa