智維數(shù)據(jù)【智能運(yùn)維技術(shù)專(zhuān)題】概覽
隨著互聯(lián)網(wǎng)不斷發(fā)展,為了適應(yīng)高并發(fā)、大流量業(yè)務(wù),負(fù)載均衡技術(shù)在整個(gè)IT架構(gòu)中占據(jù)著重要地位。
F5作為全球領(lǐng)先的應(yīng)用交付廠(chǎng)商,為全球大型企業(yè)、運(yùn)營(yíng)商、政府與消費(fèi)品牌提供更加快速、安全以及智能的應(yīng)用。
隨著語(yǔ)音、數(shù)據(jù)、視頻流量、移動(dòng)員工和應(yīng)用的迅猛增長(zhǎng),F(xiàn)5在滿(mǎn)足企業(yè)和機(jī)構(gòu)IT需求的同時(shí),也抓住了市場(chǎng)的潛在機(jī)遇。通過(guò)收購(gòu)Nginx,進(jìn)一步鞏固了市場(chǎng)地位。
智維數(shù)據(jù)(nCompass)通過(guò)與F5 LTM、F5 GTM、Nginx對(duì)接,助力企業(yè)實(shí)現(xiàn)業(yè)務(wù)長(zhǎng)期穩(wěn)定運(yùn)行。
1、通過(guò)iControl集中管理所有F5設(shè)備,減少I(mǎi)T人員維護(hù)成本。
2、通過(guò)HSL獲取Http、DNS、系統(tǒng)日志,并進(jìn)一步分析處理,助力企業(yè)保障業(yè)務(wù)穩(wěn)定運(yùn)行。
3、通過(guò)Telemetry Streaming,監(jiān)控設(shè)備性能指標(biāo),助力企業(yè)保障設(shè)備穩(wěn)定運(yùn)行。
4、通過(guò)Nginx日志分析網(wǎng)站運(yùn)行情況,助力企業(yè)保障業(yè)務(wù)穩(wěn)定運(yùn)行。
5、通過(guò)綜合數(shù)據(jù)分析實(shí)現(xiàn)端到端的可視化,助力IT人員更加了解自己業(yè)務(wù)架構(gòu)。
數(shù)據(jù)可視化之HSL
1.1 前言
F5為了打造自己的生態(tài),不斷增強(qiáng)可擴(kuò)展性,同時(shí)提供了很多工具鏈,部分如下:
F5 Application Services 3 Extension簡(jiǎn)稱(chēng)AS3。通過(guò)使用聲明性模型對(duì)應(yīng)用程序進(jìn)行配置,由此可以打造基于F5的CI/CD平臺(tái)。
F5 iControl LX是F5擴(kuò)展性的基礎(chǔ),通過(guò)REST API可以獲取配置信息,狀態(tài)信息等。
F5 Telemetry Streaming簡(jiǎn)稱(chēng)TS。TS是獨(dú)立于TMOS的RPM包,作為iControl LX擴(kuò)展。規(guī)范化將統(tǒng)計(jì)信息和事件從BIG-IP轉(zhuǎn)發(fā)到消費(fèi)者。例如Fluentd、ES、S3存儲(chǔ)等。功能非常強(qiáng)大,作為F5的監(jiān)控工具,未來(lái)必定是一個(gè)趨勢(shì)。
如今業(yè)務(wù)復(fù)雜性越來(lái)越高,對(duì)自動(dòng)化、智能化需求也變得非常迫切,我們可以基于F5提供的工具鏈打造自己運(yùn)維自動(dòng)化和監(jiān)控平臺(tái)。同時(shí)借助F5自身的日志輸出來(lái)分析和優(yōu)化我們的業(yè)務(wù),本章主要介紹如何利用HSL來(lái)分析http日志。后面我們會(huì)分享TS和iControl的一些應(yīng)用場(chǎng)景。
1.2 HSL是什么
HSL是一種高容量,低開(kāi)銷(xiāo)的日志記錄機(jī)制。HSL支持通過(guò)TCP或者UDP方式將日志發(fā)送到日志平臺(tái)。HSL的CPU和內(nèi)存使用率非常低,CPU占用小于10%,幾乎沒(méi)有什么內(nèi)存開(kāi)銷(xiāo)。
1.3 HSL應(yīng)用場(chǎng)景
HSL收集日志通常包含很多字段,有了這些字段我們就可以基于一些場(chǎng)景做分析:
運(yùn)營(yíng)分析:通過(guò)一天日志總請(qǐng)求量,計(jì)算UV、PV、獨(dú)立IP。整體了解自己網(wǎng)站運(yùn)營(yíng)情況。
負(fù)載調(diào)度分析:通過(guò)$VIRTUAL_POOL_NAME、$SERVER_IP來(lái)分析調(diào)度算法是不是合理,避免分配不均的情況出現(xiàn)。
用戶(hù)分布:可以統(tǒng)計(jì)IP、UA的分布做集中展示。
性能分析:通過(guò)$RESPONSE_USECS可以分析請(qǐng)求的響應(yīng)時(shí)間,優(yōu)化請(qǐng)求慢的URL。
行為審計(jì):通過(guò)Audit Log對(duì)F5管理員行為進(jìn)行審計(jì),完善企業(yè)安全建設(shè)。
系統(tǒng)日志分析:通過(guò)System Log 對(duì)系統(tǒng)狀態(tài)進(jìn)行診斷。例如Member的up、 down信息,Pool的健康檢查信息等。
1.4 通過(guò)HSL收集HTTP日志
1 Profile—> Other—> Request Logging (默認(rèn)request-log是系統(tǒng)自帶的profile模板,不能刪除。
2點(diǎn)擊Create,填寫(xiě)name,Parent Profile引用系統(tǒng)的模板
Template是日志模板格式,HSL Protocol我們選擇UDP。Pool Name指定把日志發(fā)送到哪個(gè)Pool里面,Pool里面定義的Member是用來(lái)接收日志的服務(wù)器。
Pool配置如下:日志會(huì)發(fā)送到192.168.40.70服務(wù)器的20001端口
F5 LTM 常用日志字段如下:可以根據(jù)自己需要添加
3關(guān)聯(lián)VS:我們已經(jīng)定義好了Profile,需要關(guān)聯(lián)具體VS。也就是說(shuō)Logging Profile是Virtual Services作為區(qū)分的,沒(méi)有全局的。點(diǎn)擊進(jìn)入到具體Virtual Services,在Configuration選擇Advanced,找到Logging Profile選項(xiàng),選擇之前定義好的Profile。(此處VS type是standard,使用http profile)
1.5 通過(guò)HSL收集系統(tǒng)日志
1 工作流程:
LTM or GTM —> Log Filter —> Log Publisher —> Log Destinations
2 系統(tǒng)日志收集配置步驟如下:
找到System —> logs —> Configuration
首先配置Log Destinations,配置如下:
Name:根據(jù)自己情況自己定義。
Type:選擇Remote High-speed Log。
Protocol:選擇UDP,也可以選擇TCP根據(jù)自己情況來(lái),建議使用UDP。
Pool Name:選擇要轉(zhuǎn)發(fā)的地址池,地址池里面配置具體Member和端口,端口根據(jù)自己情況設(shè)置即可。
Distribution:選擇adaptive,也可以選擇balanced和replicated,根據(jù)自己情況來(lái)。
Name:根據(jù)自己情況自己定義
Type:選擇Remote Syslog
Syslog Format:推薦選擇BSD Syslog
Forward To:選擇圖1.5.1定義的Log Destinations
為什么既要定義Remote Syslog也要定義Remote High-speed Log?只定義一個(gè)不行嗎?可以只定義Remote High-speed Log,不定義Remote Syslog,如果要定義Remote Syslog必須先定義Remote High-speed Log。此處定義Remote Sylog主要是因?yàn)檩敵龅娜罩咀裱瑽SD的規(guī)范,方便后面解析。很重要?。?!
配置Log Publishers:
Name:根據(jù)自己情況定義
Destinations:選擇圖7定義的Dest-syslog
配置Log Filters:
Name:根據(jù)自己情況定義
Severity:根據(jù)自己情況選擇,建議Notice。
Source:選擇all,也可以選擇其他選項(xiàng)較多,此處不一一列舉
Log Publisher:選擇圖8定義的Publisher-hsl
1.6 智維數(shù)據(jù)(nCompass)日志分析平臺(tái)
通過(guò)上面配置我們已經(jīng)獲取了F5 http日志和系統(tǒng)日志。接下來(lái)就是如何分析,目前智維數(shù)據(jù)(nCompass) 日志分析平臺(tái)可以處理和分析任何日志。包括但不僅限于負(fù)載均衡、Tomcat中間件、數(shù)據(jù)庫(kù)等并提供如下能力:
應(yīng)用梳理:基于F5 數(shù)據(jù),快速、準(zhǔn)確的呈現(xiàn)應(yīng)用間的訪(fǎng)問(wèn)關(guān)系,為網(wǎng)絡(luò)、應(yīng)用、安全部門(mén)提供數(shù)據(jù)支撐。
IPv6統(tǒng)計(jì):基于F5 數(shù)據(jù),提供應(yīng)用的IPv6/IPv4的運(yùn)行統(tǒng)計(jì)分析,提供IPv6應(yīng)用運(yùn)行狀態(tài)的可視化能力。
異常監(jiān)控:基于F5 日志數(shù)據(jù)及TDA平臺(tái)的算法庫(kù),實(shí)現(xiàn)零配置的異常檢測(cè)、告警,主動(dòng)發(fā)現(xiàn)異常事件。
智能分析:基于F5 日志數(shù)據(jù)及TDA平臺(tái)的知識(shí)圖譜,實(shí)現(xiàn)告警事件的智能分析,降低MTTR,提升用戶(hù)體驗(yàn)。
優(yōu)化統(tǒng)計(jì):基于F5 日志數(shù)據(jù),主動(dòng)發(fā)現(xiàn)應(yīng)用存在的錯(cuò)誤、慢、重載等隱患頁(yè)面,為應(yīng)用部門(mén)優(yōu)化應(yīng)用提供數(shù)據(jù)支撐。
指標(biāo)監(jiān)控:基于F5數(shù)據(jù)實(shí)時(shí)查看每個(gè)VS以及Member的運(yùn)行狀態(tài),可提供多個(gè)指標(biāo)數(shù)據(jù),為業(yè)務(wù)狀態(tài)監(jiān)控提供數(shù)據(jù)支撐。
有了這些數(shù)據(jù),智維數(shù)據(jù)(nCcompass)日志分析平臺(tái)可以根據(jù)不同場(chǎng)景靈活定制視圖,使得客戶(hù)更加了解自己的業(yè)務(wù)。遇到突發(fā)問(wèn)題可以快速定位,甚至是提前預(yù)警。
應(yīng)用梳理:
大屏展示:
1.7 下期預(yù)告
有了日志,我們還缺少對(duì)基礎(chǔ)指標(biāo)的監(jiān)控,像磁盤(pán)、網(wǎng)絡(luò)、設(shè)備信息、統(tǒng)計(jì)信息(流量、連接數(shù)、pool vs狀態(tài)等)下期我們主要來(lái)介紹如何使用Telemetry Streaming來(lái)完善F5監(jiān)控以及如何配置Telemetry Streaming,并做具體的場(chǎng)景分析。