日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

DNS高可用设计--软件高可用

發布時間:2024/8/23 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DNS高可用设计--软件高可用 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

DNS是網絡的基礎服務,網絡上的各種應用對DNS的依賴性很高。DNS的穩定,直接決定了上層應用服務的穩定。那如何保障DNS服務的高可用呢?
我們先來看下高可用的概念:

高可用

高可用(High availability):指系統無中斷地執行其功能的能力,一般用下面的公式來衡量:

  • MTBF: Mean time between Failures,平均多久出一次故障;
  • MTTR: Mean time to recover,出故障后的恢復服務的時間。
    實現dns高可用,主要靠降低出故障、故障后快速恢復。下圖是dns服務架構簡圖,分為管控層和解析層,后面分別描述這兩層如何實現高可用。

管控層

管控層最主要的兩個功能: DNS數據的持久化,DNS數據下發到adns(dnsserver)。

1 數據持久化
管控層接收用戶配置的域名數據后,持久化存儲在數據庫。利用了數據庫團隊的X-Cluster產品,實現數據的高可用,消除了運維誤操作等原因導致的數據丟失:
數據庫采用三地五副本,同城強同步方案部署;
數據庫各個節點間采用Paxos 協議選主,在任意階段出現問題后,數據內部自選主切換;
應用機房部署與數據庫解耦,可以任意機房部署;
在數據庫Leader 故障場景下,數據庫會自動發生切換,應用連入任意節點獲取當前Leader 位置后恢復應用業務。

2 數據下發
管控與adns之間,主要通過穩定的內部網絡來下發數據,數據傳輸出錯的概率低;
管控向adns發送數據時,有數據補償機制,對與下發失敗,做多次重試,如果重試都無法成功,報警轉人工處理。

解析層

解析層由adns集群組成,部署在全球的上百個idc機房,通過anycast發布大量的服務ip。用戶向這些ip發送dns請求,獲取解析結果。

1 消除單點
解析層主要靠消除單點實現failover,來減少故障。

  • 主機到網絡:每臺adns通過雙網口,雙上聯到兩個不同的交換機,避免網口單點、交換機的單點故障;
  • 集群內:adns分成多個不同集群,每個集群內多臺adns,這些機器向交換機發布相同的IP,通過ECMP分發流量。同集群內DNS都是熱備的關系,當某臺adns出問題,交換機把流量分發到其它服務器。
  • 集群間:多個不同的集群,發布相同的ip,這些集群之間,通過網絡的anycast技術相互熱備,某個集群不可用,流量被轉到其它可用的集群。
  • NS IP:由于特殊原因(比如運營商黑洞等),個別IP全網都無法訪問。我們對每個NS配置多個IP,LocalDNS會基于SRTT算法,選擇出最短的rt的IP,將請求轉發過去,從而避開有問題的IP。

2 系統容量
監控系統實時監控各個服務器、集群的qps容量;
adns集群,部署上具備水平擴容能力,容量能達到機房的帶寬。

3 如何保證解析正確
部署數據對賬系統,對adns之間做數據對比,adns與管控的DB做數據對比;
部署撥測系統,對zone的soa做撥測,對特定域名的rr記錄做撥測;
通過上面的兩類手段,及時發現數據異常并作出響應,避免異常或者縮短異常的處理時間。
一般通過摘除有問題的服務器的路由,幾秒鐘即可生效。

4 安全防護
作為面向公網的服務,網絡攻擊無法避免,會影響系統可用性。我們采用了下面兩類安防手段,提高dns的可用性。
1) 網絡攻擊防護
常見的dns攻擊,是4層的ddos攻擊。對于超大流量的網絡攻擊,利用機房部署的aliguard,做網絡防護;
為了減少ddos防護系統對dns的影響,我們設置了很高的防護閾值,對應閾值之下的ddos攻擊,通過我們高性能的dnsserver(adns)來承載攻擊。
2) 應用安全
為了應對DNS投毒、欺騙等場景,我們的dnsserver,支持dnssec;
為了應對DNS劫持,我們支持有連接的協議,比如tcpdnshttpdnstlsdoh;
用戶可以根據自己的需求,選擇合適的安全方案。

原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。

總結

以上是生活随笔為你收集整理的DNS高可用设计--软件高可用的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。