基於Kubernetes的WAF集羣介紹

Kubernetes是Google開源的容器集羣管理系統。它構建Docker技術之上,爲容器化的應用提供資源調度、部署運行、服務發現、擴容縮容等整一套功能,可看做是基於容器技術的PaaS平臺。api

       本文旨在介紹上元信安的WAF架構,咱們實現一整套基於Kubernetes的WAF集羣架構。實現了高可靠性、彈性擴容、灰度升級等功能。架構

整個集羣由如下三個部分組成:負載均衡

l   SLB負載均衡,能夠雲端的負載均衡器(好比阿里雲的SLB),也能夠是硬件或軟件的4層負載均衡。由負載均衡把HTTP請求分發到不一樣的Node上。阿里雲

l   Master節點,負責整個集羣的資源管理、調度、api-server等功能。代理

l   Node處理由負載均衡分發的流量,經過內部的Nginx把流量分發到不一樣的WAF實例上,WAF工做在反向代理模式下,負責實現虛擬漏洞補丁、防CC、防刷單、防撞庫等功能。server

 

 

 

高可靠性

高可靠性是指,當發生單點故障的時候,不影響整個系統的正常運行。WAF集羣的高可靠性由兩部分組成:blog

l   Master節點的高可靠性,由三個Master節點實現Master節點的HA功能。資源

l   當Node節點發生故障的時候,經過Kubernetes的健康檢查機制把故障節點的WAF實例轉移到其它節點。部署

 

 

 

彈性擴容

彈性擴容體如今兩個層面:get

l   當整個集羣的處理能力不夠的時候,能夠動態的添加新的Kubernetes Node來處理擴展整個集羣的處理能力。

l   當WAF實例的CPU使用超過必定比值的時候,會自動的新建新的WAF實例,當CPU使用降下來以後,又會動態的減小WAF實例。

 

灰度升級

藉助於灰度升級功能,保證升級過程當中業務不會中斷,同時對於升級帶來的問題也不會大規模暴露。

相關文章
相關標籤/搜索