互聯(lián)網(wǎng)運(yùn)維工作,以服務(wù)為中心,以穩(wěn)定、安全、高效為三個(gè)基本點(diǎn),確保公司的互聯(lián)網(wǎng)業(yè)務(wù)能夠7×24小時(shí)為用戶提供高質(zhì)量的服務(wù)。
運(yùn)維人員對(duì)公司互聯(lián)網(wǎng)業(yè)務(wù)所依賴的基礎(chǔ)設(shè)施、基礎(chǔ)服務(wù)、線上業(yè)務(wù)進(jìn)行穩(wěn)定性加強(qiáng),進(jìn)行日常巡檢發(fā)現(xiàn)服務(wù)可能存在的隱患,對(duì)整體架構(gòu)進(jìn)行優(yōu)化以屏蔽常見(jiàn)的運(yùn)行故障,多數(shù)據(jù)中接入提高業(yè)務(wù)的容災(zāi)能力。
運(yùn)維人員需要保障公司提供的互聯(lián)網(wǎng)業(yè)運(yùn)行在安全、可控的狀態(tài)下,確保公司業(yè)務(wù)數(shù)據(jù)和用戶隱私數(shù)據(jù)的安全,同時(shí)還需要具備抵御各種惡意攻擊的能力。
同時(shí),還需要通過(guò)各種工具平臺(tái)提升內(nèi)部產(chǎn)品發(fā)布交付的效率,提升公司內(nèi)運(yùn)維相關(guān)的工作效率。
運(yùn)維工作分類
運(yùn)維的工作方向比較多,隨著業(yè)務(wù)規(guī)模的不斷發(fā)展,越成熟的互聯(lián)網(wǎng)公司,運(yùn)維崗位會(huì)劃分得越細(xì)。
當(dāng)前很多大型的互聯(lián)網(wǎng)公司,在初創(chuàng)時(shí)期只有系統(tǒng)運(yùn)維,隨著服務(wù)規(guī)模、服務(wù)質(zhì)量的要求,也逐漸進(jìn)行了工作細(xì)分。
一般情況下運(yùn)維團(tuán)隊(duì)的工作分類和職責(zé)如下。
系統(tǒng)運(yùn)維
系統(tǒng)運(yùn)維負(fù)責(zé)IDC、網(wǎng)絡(luò)、CDN和基礎(chǔ)服務(wù)的建設(shè)(LVS、NTP、DNS);負(fù)責(zé)資產(chǎn)管理,服務(wù)器選型、交付和維修。詳細(xì)的工作職責(zé)如下。
1.IDC數(shù)據(jù)中心建設(shè)
收集業(yè)務(wù)需求,預(yù)估未來(lái)數(shù)據(jù)中心的發(fā)展規(guī)模,從骨干網(wǎng)的分布,數(shù)據(jù)中心建筑,以及Internet接入、網(wǎng)絡(luò)攻擊防御能力、擴(kuò)容能力、空間預(yù)留、外接專線能力、現(xiàn)場(chǎng)服務(wù)支撐能力等方面評(píng)估選型數(shù)據(jù)中心。負(fù)責(zé)數(shù)據(jù)中心的建設(shè)、現(xiàn)場(chǎng)維護(hù)工作。
2.網(wǎng)絡(luò)建設(shè)
設(shè)計(jì)及規(guī)劃生產(chǎn)網(wǎng)絡(luò)架構(gòu),這里面包括:數(shù)據(jù)中心網(wǎng)絡(luò)架構(gòu)、傳輸網(wǎng)架構(gòu)、CDN網(wǎng)絡(luò)架構(gòu)等,以及網(wǎng)絡(luò)調(diào)優(yōu)等日常運(yùn)維工作。
3.LVS負(fù)載均衡和SNAT建設(shè)
LVS是整個(gè)站點(diǎn)架構(gòu)中的流量入口,根據(jù)網(wǎng)絡(luò)規(guī)模和業(yè)務(wù)需求,構(gòu)建負(fù)載均衡集群。完成網(wǎng)絡(luò)與業(yè)務(wù)服務(wù)器的銜接,提供高性能、高可用的負(fù)載調(diào)度能力,以及統(tǒng)一的網(wǎng)絡(luò)層防攻擊能力。SNAT.集中提供數(shù)據(jù)中心的公網(wǎng)訪問(wèn)服務(wù),通過(guò)集群化部署,保證出網(wǎng)服務(wù)的高性能與高可用。
4.CDN規(guī)劃和建設(shè)
CDN工作劃分為第三方和自建兩部分。建立第三方CDN的選型和調(diào)度控制;根據(jù)業(yè)務(wù)發(fā)展趨勢(shì),規(guī)劃CDN新節(jié)點(diǎn)建設(shè)布局;完善CDN業(yè)務(wù)及監(jiān)控,保障CDN系統(tǒng)穩(wěn)定、高效運(yùn)行。分析業(yè)務(wù)加速頻道的文件特性和數(shù)量,制定最優(yōu)的加速策略和資源匹配;負(fù)責(zé)用戶劫持等CDN日常故障排查工作。
5.服務(wù)器選型、交付和維護(hù)
負(fù)責(zé)服務(wù)器的測(cè)試選型,包含服務(wù)器整機(jī)、部件的基礎(chǔ)性測(cè)試和業(yè)務(wù)測(cè)試,降低整機(jī)功率,提升機(jī)架部署密度等。
結(jié)合對(duì)公司業(yè)務(wù)的了解,推廣新硬件、新方案減少業(yè)務(wù)的服務(wù)器投入規(guī)模。負(fù)責(zé)服務(wù)器硬件故障的診斷定位,服務(wù)器硬件監(jiān)控、健康檢查工具的開(kāi)發(fā)和維護(hù)。
6.OS、內(nèi)核選型和OS相關(guān)維護(hù)工作
負(fù)責(zé)整體平臺(tái)的OS選型、定制和內(nèi)核優(yōu)化,以及Patch的更新和內(nèi)部版本發(fā)布;建立基礎(chǔ)的YUM包管理和分發(fā)中心,提供常用包版本庫(kù);跟進(jìn)日常各類OS相關(guān)故障;針對(duì)不同的業(yè)務(wù)類型,提供定向的優(yōu)化支持。
7.資產(chǎn)管理
記錄和管理運(yùn)維相關(guān)的基礎(chǔ)物理信息,包括數(shù)據(jù)中心、網(wǎng)絡(luò)、機(jī)柜、服務(wù)器、ACL、IP等各種資源信息,制定有效的流程,確保信息的準(zhǔn)確性;開(kāi)放API接口,為自動(dòng)化運(yùn)維提供數(shù)據(jù)支持。
8.基礎(chǔ)服務(wù)建設(shè)
業(yè)務(wù)對(duì)DNS、NTP、SYSLOG等基礎(chǔ)服務(wù)的依賴非常高,需要設(shè)計(jì)高可用架構(gòu)避免單點(diǎn),提供穩(wěn)定的基礎(chǔ)服務(wù)。
應(yīng)用運(yùn)維
應(yīng)用運(yùn)維負(fù)責(zé)線上服務(wù)的變更、服務(wù)狀態(tài)監(jiān)控、服務(wù)容災(zāi)和數(shù)據(jù)備份等工作,對(duì)服務(wù)進(jìn)行例行排查、故障應(yīng)急處理等工作。詳細(xì)的工作職責(zé)如下所述。
1.設(shè)計(jì)評(píng)審
在產(chǎn)品研發(fā)階段,參與產(chǎn)品設(shè)計(jì)評(píng)審,從運(yùn)維的角度提出評(píng)審意見(jiàn),使服務(wù)滿足運(yùn)維準(zhǔn)入的高可用要求。
2.服務(wù)管理
負(fù)責(zé)制定線上業(yè)務(wù)升級(jí)變更及回滾方案,并進(jìn)行變更實(shí)施。掌握所負(fù)責(zé)的服務(wù)及服務(wù)間關(guān)聯(lián)關(guān)系、服務(wù)依賴的各種資源。能夠發(fā)現(xiàn)服務(wù)上的缺陷,及時(shí)通報(bào)并推進(jìn)解決。制定服務(wù)穩(wěn)定性指標(biāo)及準(zhǔn)入標(biāo)準(zhǔn),同時(shí)不斷完善和優(yōu)化程序和系統(tǒng)的功能、效率,提高運(yùn)行質(zhì)量。完善監(jiān)控內(nèi)容,提高報(bào)警準(zhǔn)確度。在線上服務(wù)出現(xiàn)故障時(shí),第一時(shí)間響應(yīng),對(duì)已知線上故障能按流程進(jìn)行通報(bào)并按預(yù)案執(zhí)行,未知故障組織相關(guān)人員聯(lián)合排障。
3.資源管理
對(duì)各服務(wù)的服務(wù)器資產(chǎn)進(jìn)行管理,梳理服務(wù)器資源狀況、數(shù)據(jù)中心分布情況、網(wǎng)絡(luò)專線及帶寬情況,能夠合理使用服務(wù)器資源,根據(jù)不同服務(wù)的需求,分配不同配置的服務(wù)器,確保服務(wù)器資源的充分利用。
4.例行檢查
制定服務(wù)例行排查點(diǎn),并不斷完善。根據(jù)制定的服務(wù)排查點(diǎn),對(duì)服務(wù)進(jìn)行定期檢查。對(duì)排查過(guò)程中發(fā)現(xiàn)的問(wèn)題,及時(shí)進(jìn)行追查,排除可能存在的隱患。
5.預(yù)案管理
確定服務(wù)所需的各項(xiàng)監(jiān)控、系統(tǒng)指標(biāo)的閾值或臨界點(diǎn),以及出現(xiàn)該情況后的處理預(yù)案。建立和更新服務(wù)預(yù)案文檔,并根據(jù)日常故障情況不斷補(bǔ)充完善,提高預(yù)案完備性。能夠制定和評(píng)審各類預(yù)案,周期性進(jìn)行預(yù)案演練,確保預(yù)案的可執(zhí)行性。
6.數(shù)據(jù)備份
制定數(shù)據(jù)備份策略,按規(guī)范進(jìn)行數(shù)據(jù)備份工作。保證數(shù)據(jù)備份的可用性和完整性,定期開(kāi)展數(shù)據(jù)恢復(fù)性測(cè)試。
數(shù)據(jù)庫(kù)運(yùn)維
數(shù)據(jù)庫(kù)運(yùn)維負(fù)責(zé)數(shù)據(jù)存儲(chǔ)方案設(shè)計(jì)、數(shù)據(jù)庫(kù)表設(shè)計(jì)、索引設(shè)計(jì)和SQL優(yōu)化,對(duì)數(shù)據(jù)庫(kù)進(jìn)行變更、監(jiān)控、備份、高可用設(shè)計(jì)等工作。詳細(xì)的工作職責(zé)如下所述。
1.設(shè)計(jì)評(píng)審
在產(chǎn)品研發(fā)初始階段,參與設(shè)計(jì)方案評(píng)審,從DBA的角度提出數(shù)據(jù)存儲(chǔ)方案、庫(kù)表設(shè)計(jì)方案、SQL開(kāi)發(fā)標(biāo)準(zhǔn)、索引設(shè)計(jì)方案等,使服務(wù)滿足數(shù)據(jù)庫(kù)使用的高可用、高性能要求。
2.容量規(guī)劃
掌握所負(fù)責(zé)服務(wù)的數(shù)據(jù)庫(kù)的容量上限,清楚地了解當(dāng)前瓶頸點(diǎn),當(dāng)服務(wù)還未到達(dá)容量上限時(shí),及時(shí)進(jìn)行優(yōu)化、分拆或者擴(kuò)容。
3.數(shù)據(jù)備份與災(zāi)備
制定數(shù)據(jù)備份與災(zāi)備策略,定期完成數(shù)據(jù)恢復(fù)性測(cè)試,保證數(shù)據(jù)備份的可用性和完整性。
4.數(shù)據(jù)庫(kù)監(jiān)控
完善數(shù)據(jù)庫(kù)存活和性能監(jiān)控,及時(shí)了解數(shù)據(jù)庫(kù)運(yùn)行狀態(tài)及故障。數(shù)據(jù)庫(kù)安全建設(shè)數(shù)據(jù)庫(kù)賬號(hào)體系,嚴(yán)格控制賬號(hào)權(quán)限與開(kāi)放范圍,降低誤操作和數(shù)據(jù)泄露的風(fēng)險(xiǎn);加強(qiáng)離線備份數(shù)據(jù)的管理,降低數(shù)據(jù)泄露的風(fēng)險(xiǎn)。
5.數(shù)據(jù)庫(kù)高可用和性能優(yōu)化
對(duì)數(shù)據(jù)庫(kù)單點(diǎn)風(fēng)險(xiǎn)和故障設(shè)計(jì)相應(yīng)的切換方案,降低故障對(duì)數(shù)據(jù)庫(kù)服務(wù)的影響;不斷對(duì)數(shù)據(jù)庫(kù)整體性能進(jìn)行優(yōu)化,包括新存儲(chǔ)方案引進(jìn)、硬件優(yōu)化、文件系統(tǒng)優(yōu)化、數(shù)據(jù)庫(kù)優(yōu)化、SQL優(yōu)化等,在保障成本不增加或者少量增加的情況下,數(shù)據(jù)庫(kù)可以支撐更多的業(yè)務(wù)請(qǐng)求。
6.自動(dòng)化系統(tǒng)建設(shè)
設(shè)計(jì)開(kāi)發(fā)數(shù)據(jù)庫(kù)自動(dòng)化運(yùn)維系統(tǒng),包括數(shù)據(jù)庫(kù)部署、自動(dòng)擴(kuò)容、分庫(kù)分表、權(quán)限管理、備份恢復(fù)、SQL審核和上線、故障切換等功能。
7.運(yùn)維研發(fā)
運(yùn)維研發(fā)負(fù)責(zé)通用的運(yùn)維平臺(tái)設(shè)計(jì)和研發(fā)工作,如:資產(chǎn)管理、監(jiān)控系統(tǒng)、運(yùn)維平臺(tái)、數(shù)據(jù)權(quán)限管理系統(tǒng)等。提供各種API供運(yùn)維或研發(fā)人員使用,封裝更高層的自動(dòng)化運(yùn)維系統(tǒng)。詳細(xì)的工作職責(zé)如下所述。
8.運(yùn)維平臺(tái)
記錄和管理服務(wù)及其關(guān)聯(lián)關(guān)系,協(xié)助運(yùn)維人員自動(dòng)化、流程化地完成日常運(yùn)維操作,包括機(jī)器管理、重啟、改名、初始化、域名管理、流量切換和故障預(yù)案實(shí)施等。
9.監(jiān)控系統(tǒng)
負(fù)責(zé)監(jiān)控系統(tǒng)的設(shè)計(jì)、開(kāi)發(fā)工作,完成公司服務(wù)器和各種網(wǎng)絡(luò)設(shè)備的資源指標(biāo)、線上業(yè)務(wù)運(yùn)行指標(biāo)的收集、告警、存儲(chǔ)、分析、展示和數(shù)據(jù)挖掘等工作,持續(xù)提高告警的及時(shí)性、準(zhǔn)確性和智能性,促進(jìn)公司服務(wù)器資源的合理化調(diào)配。
10.自動(dòng)化部署系統(tǒng)
參與部署自動(dòng)化系統(tǒng)的開(kāi)發(fā),負(fù)責(zé)自動(dòng)化部署系統(tǒng)所需要的基礎(chǔ)數(shù)據(jù)和信息,負(fù)責(zé)權(quán)限管理、API開(kāi)發(fā)、Web端開(kāi)發(fā)。結(jié)合云計(jì)算,研發(fā)和提供PaaS相關(guān)高可用平臺(tái),進(jìn)一步提高服務(wù)的部署速度和用戶體驗(yàn),提升資源利用率。
運(yùn)維安全
運(yùn)維安全負(fù)責(zé)網(wǎng)絡(luò)、系統(tǒng)和業(yè)務(wù)等方面的安全加固工作,進(jìn)行常規(guī)的安全掃描、滲透測(cè)試,進(jìn)行安全工具和系統(tǒng)研發(fā)以及安全事件應(yīng)急處理。詳細(xì)的工作職責(zé)如下所述。
1.安全制度建立
根據(jù)公司內(nèi)部的具體流程,制定切實(shí)可行,且行之有效的安全制度。
2.安全培訓(xùn)
定期向員工提供具有針對(duì)性的安全培訓(xùn)和考核,在全公司內(nèi)建立安全負(fù)責(zé)人制度。
3.風(fēng)險(xiǎn)評(píng)估
通過(guò)黑白盒測(cè)試和檢查機(jī)制,定期產(chǎn)生對(duì)物理網(wǎng)絡(luò)、服務(wù)器、業(yè)務(wù)應(yīng)用、用戶數(shù)據(jù)等方面的總體風(fēng)險(xiǎn)評(píng)估結(jié)果。
4.安全建設(shè)
根據(jù)風(fēng)險(xiǎn)評(píng)估結(jié)果,加固最薄弱的環(huán)節(jié),包括設(shè)計(jì)安全防線、部署安全設(shè)備、及時(shí)更新補(bǔ)丁、防御病毒、源代碼自動(dòng)掃描和業(yè)務(wù)產(chǎn)品安全咨詢等。為了降低可能泄露數(shù)據(jù)的價(jià)值,通過(guò)加密、匿名化、混淆數(shù)據(jù),乃至定期刪除等技術(shù)手段和流程來(lái)達(dá)到目的。
5.安全合規(guī)
為了滿足例如支付牌照等合規(guī)性要求,安全團(tuán)隊(duì)承擔(dān)著安全合規(guī)的對(duì)外接口人工作。
6.應(yīng)急響應(yīng)
建立安全報(bào)警系統(tǒng),通過(guò)安全中心收集第三方發(fā)現(xiàn)的安全問(wèn)題,組織各部門(mén)對(duì)已經(jīng)發(fā)現(xiàn)的安全問(wèn)題進(jìn)行修復(fù)、影響面評(píng)估、事后安全原因追查。
運(yùn)維工作發(fā)展過(guò)程
我們將運(yùn)維發(fā)展過(guò)程劃分為4個(gè)階段:
在整個(gè)運(yùn)維的發(fā)展過(guò)程中,希望所有的工作都自動(dòng)化起來(lái),減少人的重復(fù)工作,降低知識(shí)傳遞的成本,使我們的運(yùn)維交付更高效、更安全,使產(chǎn)品運(yùn)行更穩(wěn)定。對(duì)于故障的處理,也希望由事后處理變成提前發(fā)現(xiàn),由人工處理變成系統(tǒng)自動(dòng)容災(zāi)。