<s id="xcxsa"></s><rp id="xcxsa"></rp>

  • <span id="xcxsa"><pre id="xcxsa"><rt id="xcxsa"></rt></pre></span>
    <dd id="xcxsa"></dd><tbody id="xcxsa"></tbody>
        首頁 運維雜談騰訊運維10年,我斬獲了這5把“殺手锏”

        騰訊運維10年,我斬獲了這5把“殺手锏”

        運維派隸屬馬哥教育旗下專業運維社區,是國內成立最早的IT運維技術社區,歡迎關注公眾號:yunweipai
        領取學習更多免費Linux云計算、Python、Docker、K8s教程關注公眾號:馬哥linux運維

        十年不茍且的運維之路

        加入騰訊已十年的運維老兵,回顧這十年:

        • 2004年:加入騰訊,做賀卡開發;
        • 2005年:加入QQ空間開發團隊,負責留言版模塊;
        • 2006年~至今:公司組織架構調整,接觸運維工作。
        期間,他帶領運維團隊負責QQ延伸出來的各種社群的運維和維護,包括QQ空間、QQ音樂、QQ會員、QQ秀等一系列的QQ產品。團隊89個人,維護了10萬家服務器。經歷的大事件有:

        • 紅米在QQ空間首發時,90 秒賣出 10 萬臺設備,獲得1億點贊;
        • 天津大爆炸事件,把天津 2 億多活躍用戶,從天津快速調到深圳以及上海;
        • 春節紅包準備工作,2016年比2015年的紅包訪問量增長了10倍+,快速的擴充了 5000 臺設備,最高訪問量達到 477 萬次/秒。

        不要讓自己變成一個救火隊員

        作為運維,最重要的是先保證自己做的系統可靠、不會輕易出錯,不要讓自己變成一個救火隊員??煽恐?,就要用更多時間去解決效率問題,讓工作變得更加高效,追求更高的目標。

        對團隊工作幫助最大的是什么?

        騰訊運維

         

        • 資源管理:把寫出來的程序和代碼,進行清晰劃分和分類,對每個資源采用不同形式進行搭建;
        • 容錯方案:在維護海量服務、運維過程中出現故障時,確保不能影響項目服務,服務器要做到及時處理;
        • 統一架構 CMDBA:把一個業務模塊上所有依賴資源全部登記進去;同時如果做快速決策和調度,還需要有效的監控。
        • DLP:內部定義的一個非常關鍵的監控,這個點發生后,可以知道哪里出現故障;
        • 入口監控:告知出現故障的根源在哪兒,容錯方案的 L5 是用來解決容錯、灰度,路由等。

         

        運維團隊的五個“殺手锏”

        1.L5系統

        L5 系統

        世界上管理服務器最多的系統

        運營管理系統管理了上億服務器,脈絡非常清晰,根本不會出現混亂。L5 系統(上圖)也類似于 DNS 系統,有一排能提供的服務模塊,從而解決的單點問題。

        L5 如何做容錯?

        騰訊運維10年,我斬獲了這5把“殺手锏”插圖2

        L5-主機/接口級的容錯原理

        L5 有由 L5、DNS 和 L5、agent 兩部分構成。CGI 通過給模塊提 ID,根據模塊下設備的成功率和延遲情況,通過 IP+PROT 給 CGI 一個反饋,訪問之后,通過成功率和延遲情況,把數據上報給了 L5agent,然后做統計數據。當發現失敗率特別低的時踢掉。當發現成功率和失敗率有一定下降,會把訪問權重降低,從而達到容錯和負載均衡的作用。

        可以注冊一個模塊,加多臺設備,形成容錯效果。如發現一臺機器失敗率很高,就把它踢掉。它成功率恢復過來,還可以再加回來。

        新加一臺服務器設計它的權重為 1,假如之前的是 100,可以逐漸上線。還可以給它一個得分,得分下降的時候,快速把它踢掉。L5 具有灰度、容錯、路由、負載均衡的能力。

        騰訊運維10年,我斬獲了這5把“殺手锏”插圖3

        L5 對運維團隊有哪些幫助??

        • 減少了 80~90% 的日常故障;
        • 不再需要頻繁的變更 ip+port(也是故障源);
        • 同過名字便利的服務上下線;
        • 通過權重灰度上線;
        • 模塊訪問關系可幫助定位根源故障;
        • 接口的延遲和失敗率可用來監控;
        • 集容錯、負載均衡、路由、灰度、監控能力于一身。

        2.統一框架和架構

        團隊里有上千號開發同事,每年會有大量畢業生加入,也會有社交同事。進來以后,都希望為平臺做更多的代碼貢獻、展現自己的技術實力,亦或是提高自己。

        那么,問題來了。在開發過程中,如下圖,有管道、消息隊列、信息文件鎖、記錄鎖、文件影射內存、還有迭代服務器 Select poll Io 等,這些是用各種各樣技術組合生產出來的代碼,交給團隊維護,數以萬計不同性格的服務器,要掌握得非常好,了解它的工作機制和原理,更好的維護它基本上是不可能的。

        架構

        那怎么辦呢?把網絡通訊部分列成一個標準框架,提高它的通訊效率,統一維護。

        網絡框架

        統一框架

        業務邏輯部分用 SO 動態庫方式編寫與框架分離部署,類似 Web 服務器上的CGI。接入層用 QZHTTP,邏輯層是 SPP 和 SF 的框架。

        騰訊運維10年,我斬獲了這5把“殺手锏”插圖6

        作為社區類服務,雖然用戶的熱點并不是很集中,但數據量、訪問量還是很大。大量用 CKV 存儲,同時針對訪問量非常大的問題,如說用戶沒有開通空間,游戲用戶,會員等標記,之后均做一個定位,形成一個高訪問量的模塊即可。

        騰訊運維10年,我斬獲了這5把“殺手锏”插圖7

        如下圖,是一個架構體系:

        架構

        • 接入層是 TGW,流量從它進、從它出;
        • 中間層,利用 L5 進行調度;
        • 存儲層,因為每一個存儲模塊要分耗段,故加入 Access,從上到下把技術架構進行了統一規范,同時在組織上也通過接入邏輯運維層,進行標準化的維護。

        統一框架對運維有什么幫助?

        網絡框架和業務邏輯 SO 分離管理、運維人員學習成本大大降低、框架穩定性極大提高、可跨業務統一維護、運維效率提升最高可達 10 倍。

        3.資源打包管理

        騰訊運維10年,我斬獲了這5把“殺手锏”插圖9

        如上圖,資源打包管理是對開發出的程序包進行標準打包操作,一個程序開發出來有不同特征,有需要加銀行參數,有需要依賴目錄,還有需要前面準備工作和后續善后工作。

        把它全部放在一個類似于包里面,裝進一個盒子里。之后提供標準的操作接口,如安裝、卸載、啟動、停止操作等這些操作讓它們變成有關聯的。

        資源打包管理對運維有什么幫助?

        部署規范統一,再也不擔心找不到、標準化了操作界面,極易學習掌握、支持前后置腳本做準備和善、進程級運轉的所有資源的完整鏡像。

        4.資源登記—CMDB 虛擬鏡像

        資源登記到二級 CMDB 形成服務的虛擬鏡像,除了傳統基礎配置信息,把一個模塊依賴的資源,全部記錄進 2 級 CMDB,形成一個模塊的虛擬鏡像。

        CMDB

        CMDB+資源=虛擬鏡像

        CMDB 虛擬鏡像對運維有什么幫助?

        一個模塊運轉的所有資源的“完整鏡像”、記錄了模塊運轉所依賴的所有資源、不再需要文檔說明。

        5.決策調度—自動化部署平臺

        在團隊內部有織云自動化部署平臺,從申請設備獲取資源、發布部署、檢測,進行測試,上線。在每個環節還有些細節步驟,如申請設備的時屏蔽告警事件,如發布時同步傳輸文件、如發布后檢測程序的包進程是否啟動,啟動之后進行業務測試。

        自動化平臺

        自動部署流程 23 步

        如下圖,是我們內部自動化部署的平臺。相當于把這個進程開發出來以后,依賴的資源全部打包放在盒子里,把盒子里的東西放資源倉庫中,有一些模塊全部登記在 CMDB。

        自動化運維

        自動化運維體系

        如果要部署一個模塊 A 或進行擴容,可以人工觸發或自動系統觸發。

        控制人工系統進行操作,把模塊邊上三個資源,由資源倉儲部署在模塊 1 上,通過 L5 系統進行一個注冊,這個模塊就可自動上線。之后會把一個模塊登記回來,對它進行自動化操作,每一個方塊是一個步驟,這個步驟執行過去之后是綠色的,執行失敗是紅色,沒有執行是灰色。

        執行成功就可以看到,可以做自動化的擴容,可以做日常演習,還可以回收等工作。

        騰訊運維10年,我斬獲了這5把“殺手锏”插圖13

        全自動擴縮容

        運維規范的推進歷程

        如下圖,是運維規范的推進歷程??雌饋硎亲匀欢坏倪^來。但實際上這個過程并沒有那么容易。

        騰訊運維10年,我斬獲了這5把“殺手锏”插圖14

        作者:

        趙建春,騰訊社交網絡運營部助理總經理、技術運營通道會長、專家工程師。04年加入騰訊,先后從事過研發、運維、數據方面的建設和管理工作,在海量技術運營方面積累了豐富的實戰經驗。

        本文鏈接:http://m.abandonstatusquo.com/24915.html

        網友評論comments

        發表評論

        您的電子郵箱地址不會被公開。

        暫無評論

        Copyright ? 2012-2022 YUNWEIPAI.COM - 運維派 京ICP備16064699號-6
        掃二維碼
        掃二維碼
        返回頂部
        十分钟免费观看视频高清下载