乾貨丨愛奇藝CDN IPv6系統配置
1. 背景
IPv6是“Internet Protocol Version 6”(網際網路協議第6版)的縮寫,是網際網路工程任務組(IETF)設計的用於替代IPv4的下一代IP協議。IPv4地址資源緊缺嚴重製約了網際網路的應用和發展。IPv6不僅能解決網路地址資源數量的問題,而且也解決了多種接入裝置連入網際網路的障礙。
新網際網路時代科技進步與市場趨勢的推動之下,愛奇藝積極響應並全力開展IPv6專項部署工作,推動基礎網路、後臺服務和前端應用全面向IPv4/IPv6雙棧支援演進,並以實際的使用者數和流量貢獻,於2019年6月被IPv6規模部署專家委員會評為優秀案例。
客戶端:愛奇藝提供的播放客戶端,覆蓋手機、平板、電腦、電視和網頁等多個平臺,客戶端首先訪問DNS解析HTTP影片排程域名,然後請求HTTP影片排程獲取CDN下載地址,最後從CDN下載影片資料;
探測伺服器:一組開啟雙棧的HTTP伺服器,為全網客戶端提供探測服務,幫助客戶端判斷本地IPv4和IPv6可用情況;
Local DNS:客戶端使用的DNS伺服器地址,由使用者所在運營商提供;客戶端向Local DNS發起域名解析請求,Local DNS遞迴查詢到愛奇藝Anycast DNS,最後把結果返回給客戶端;
Anycast DNS:愛奇藝自研的高效能DNS系統,單機QPS可達近百萬,基於Anycast技術部署,為全球使用者提供高可用的DNS服務,支援IPv6後可提供IPv6 AAAA記錄查詢解析;
HTTP影片排程:CDN核心系統之一,根據客戶端請求來源地址歸屬運營商和區域,為使用者選擇服務質量最優的CDN,確保使用者享受極致播放體驗;
愛奇藝混合CDN:包括自建CDN和商業CDN,為愛奇藝數億使用者提供就近下載服務;
資源管理平臺(天工):資源統一管理平臺,實現從資源需求收集、商務擴充、資源採購、資源部署、資源管理、基礎運維和成本計算的統一管理,旨在打造以流程管理為基礎的自動化運維平臺;
排程管理平臺(伏羲):排程管理平臺,管理DNS排程和HTTP影片排程各種配置和策略。排程管理平臺從資源管理平臺中自動同步機房和伺服器基礎資訊,藉助配置管理平臺實現配置的快速下發和生效;同時支援透過域名和IP維度進行撥測,實時探測全網伺服器健康狀態,自動下線故障伺服器;
配置管理平臺(Fast):作為CDN 伺服器的管理平臺,聯動資源管理平臺和排程管理平臺等多個系統,同步資產和服務等基礎資訊。利用部署在多個運營商+區域的 Proxy 叢集,保證全網 CDN 節點的連通率,提供穩定可靠的配置管理服務。
SDN管理平臺:網路配置管理平臺,實現基於模板支援自定義業務場景的網設配置功能,支援批次下發自定義業務場景配置,支援netconf、ssh和snmp多種管理方式。透過生成配置架構及網元全量配置,實現核心IDC建設自動化建設。
客戶端:愛奇藝提供了包括手機、平板、電腦、電視和網頁等多種播放客戶端,覆蓋數億使用者。目前絕大多數客戶端都已經支援IPv6。當客戶端啟動以及檢測到網路變化時,訪問愛奇藝IPv6探測伺服器,分別透過IPv4/IPv6發出HTTP請求,以此判斷本地IPv4/IPv6網路連通性;在支援IPv6的前提下,客戶端優先解析影片排程的IPv6地址;客戶端在透過IPv4或IPv6請求排程器時,攜帶Net-Stack header,告知影片排程器本地協議棧支援情況;
Anycast DNS:開啟雙棧,支援透過IPv4/IPv6 DNS查詢A記錄和AAAA記錄。同時提供永遠線上的IPv4&IPv6權威DNS服務;
HTTP影片排程:開啟雙棧,支援透過IPv6地址查詢客戶端歸屬運營商和區域;根據使用者請求頭中的Net-Stack引數以及來源IP地址,判斷客戶端IPv4/IPv6支援情況,結合排程策略開關和IPv6資源負載,為使用者返回IPv4或IPv6下載地址。對於僅支援IPv6的客戶端,返回IPv6下載地址;對於支援雙棧的客戶端,會在IPv6資源允許的情況下,返回IPv6下載地址;對於部分支援雙棧的客戶端,當IPv6資源緊張的情況下,返回IPv4下載地址;對於僅支援IPv4的客戶端,返回IPv4下載地址;流程如下圖:
愛奇藝混合CDN: 包括愛奇藝自建CDN和商業CDN,都需要開啟雙棧,同時支援IPv4和IPv6,結合排程管理平臺,可支援部分節點和部分商業CDN支援IPv6的資源模式,可保證資源可以灰度平滑上線;
資源管理平臺:為了支援IPv6,資源管理平臺實現了IPv6地址段管理閉環,其中包括:基於IDC的IPv6地址段錄入、自動分配、撥測和回收等功能,為了完成全網IPv6地址的分配,開發了基於命令列的自動化分配工具,結合配置管理平臺完成了全網存量的IPv6的配置。在伺服器上線(裝機子流程)流程根據IDC IPv6的狀態,可以自動分配IPv6地址。
排程管理平臺:從資源管理平臺自動同步伺服器IPv6配置,增加DNS排程和HTTP影片排程IPv6地址庫,撥測系統相容IPv6;基於區域和機房兩個維度的增加IPv6開關,精細控制IPv6上線節奏,在保障使用者體驗的同時,逐步增加IPv6流量佔比;
配置管理平臺:各個CDN 節點接收到 IPv6 配置任務後,使用自己的資產和服務資訊對任務模板進行二次渲染,得到最終的配置命令並執行,執行完畢後上報修改狀態;
SDN管理平臺:全面支援IPv6,透過生成配置架構及網元全量配置,實現一鍵完成核心機房IPv6相關配置,有效提升IPv6機房資源交付效率;
資料中心IPv6就緒:愛奇藝的資料中心包括Core、Storage和Cache三類,目前已經完成所有自建機房的IPv6地址申請、部署、分配和註冊備案工作,確保IPv6網路出口安全可用,全面支援業務雙棧上線。
網路能力IPv6就緒:愛奇藝自有全球骨幹網QNET完成IPv6升級工作,實現三大運營商和教育網等多家基礎電信服務商的IPv6對接,並對基於QNET的Anycast系統進行IPv6升級,為DNS核心業務提供高可用的IPv6服務;
IPv6網路質量監控:流量監控和網路監控系統完成雙棧升級,對比分析IPv6和IPv4網路質量差異和不同區域IPv6網路質量差異,指導和保障IPv6業務上線。
(5) IPv6地址生效
(2) DNS伺服器開啟IPv6埠監聽
3.3 業務切量
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69945252/viewspace-2653590/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 乾貨丨ERP系統的RPA實施技巧
- 乾貨丨Linux系統下強大的ethtool命令Linux
- 乾貨 | 廣告系統架構解密架構解密
- 乾貨丨windows核心www漏洞利用手法Windows
- 乾貨丨RK3399開發板android系統下實現影像識別Android
- 乾貨丨RPA郵件自動化技巧
- 乾貨丨RPA視窗型處理方法
- 乾貨丨機器學習知識點(人工智慧篇)機器學習人工智慧
- 乾貨 | 攜程線上風控系統架構架構
- AI客服上線 乾貨 乾貨 全是乾貨!AI
- 乾貨 | 攜程日誌系統治理演進之路
- 現貨量化跟單交易程式策略系統模型開發丨量化丨合約丨python模型Python
- 小乾貨~ NFS在Linux系統中的應用NFSLinux
- 【乾貨乾貨】hyperledger fabric 之動態新增組織/修改配置 (Fabric-java-sdk) 下Java
- 乾貨 | 愛奇藝全鏈路自動化監控平臺的探索與實踐
- 乾貨丨AI助力金融風控的趨勢與挑戰AI
- 乾貨丨RPA工程中的資料處理問題
- 智慧CDN(中):CDN的系統構成和核心技術
- 【乾貨分享】Linux系統日誌的三種型別!Linux型別
- 乾貨分享| LS1028A 系統固化 操作說明
- Linux系統伺服器下Nginx支援ipv6配置的方法Linux伺服器Nginx
- 乾貨丨運維圈必讀10篇精選技術文章運維
- IT自學乾貨
- 乾貨!企業正確選擇CRM系統的8種方法。
- 【乾貨分享】常用的八個Linux作業系統彙總!Linux作業系統
- 直播搭建中的流媒體傳輸系統的核心乾貨
- 乾貨 | CDN搭配OSS最佳實踐 ——搭建動靜態分離的應用架構應用架構
- 【乾貨乾貨】configtxlator 工具介紹
- 乾貨丨RPA 關於各種對賬的分享與總結
- 乾貨丨如何水平擴充套件和垂直擴充套件DolphinDB叢集?套件
- 推薦系統演算法合集,滿滿都是乾貨(建議收藏)演算法
- 前端乾貨 -02前端
- 機器學習乾貨貼機器學習
- SQL乾貨篇SQL
- 分享乾貨啦!
- 乾貨丨遊戲音訊與聲音設計相關書籍推薦遊戲音訊
- 技術乾貨丨如何在Docker環境下搭建測試管理平臺?Docker
- 現貨量化跟單丨合約跟單系統開發丨原始碼丨量化機器人開發技術分析原始碼機器人