了解最新公司動態(tài)及行業(yè)資訊
互聯(lián)網(wǎng)運維工作以服務為核心,以穩(wěn)定、安全、高效為三個基本點,確保公司互聯(lián)網(wǎng)業(yè)務能夠7×24小時為用戶提供優(yōu)質(zhì)服務。
運維人員加強公司互聯(lián)網(wǎng)業(yè)務所依賴的基礎設施、基礎服務、線上業(yè)務的穩(wěn)定性,進行日常巡查,發(fā)現(xiàn)服務中可能存在的隱患,優(yōu)化整體架構(gòu),屏蔽常見的運行故障。接入提高了業(yè)務的容災能力。
通過監(jiān)控、日志分析等技術手段,及時發(fā)現(xiàn)并響應服務故障,減少服務中斷時間,使公司互聯(lián)網(wǎng)業(yè)務達到預期的可用性要求,為用戶提供持續(xù)穩(wěn)定的服務
在安全方面,運維人員需要關注業(yè)務運營所涉及的各個層面,確保用戶能夠安全、完整地訪問在線業(yè)務。
從網(wǎng)絡邊界劃分、ACL管理、流量分析、DDoS防御,到操作系統(tǒng)和開源軟件的漏洞掃描和補丁,再到應用服務的XSS和SQL注入防護;
從安全流程梳理、代碼白盒黑盒掃描、權(quán)限審計,到入侵檢測、業(yè)務風控等。
運維人員需要保證公司提供的互聯(lián)網(wǎng)行業(yè)在安全可控的狀態(tài)下運行,保證公司業(yè)務數(shù)據(jù)和用戶隱私數(shù)據(jù)的安全,同時需要具備抵御能力各種惡意攻擊。
在保證業(yè)務穩(wěn)定安全的前提下,還要保證業(yè)務的高效運作和公司內(nèi)部的快速產(chǎn)出。運維工作需要對業(yè)務的各個方面進行優(yōu)化。
比如IO優(yōu)化提升數(shù)據(jù)庫性能,圖片壓縮降低帶寬占用等。提供的互聯(lián)網(wǎng)服務以更少的資源投入,帶來最大的用戶價值和體驗。
同時,還需要通過各種工具平臺提高內(nèi)部產(chǎn)品發(fā)布和交付的效率,提高公司內(nèi)部與運維相關的工作效率。
工作分類運維
操作和維護有許多工作方向。隨著業(yè)務規(guī)模的不斷發(fā)展,互聯(lián)網(wǎng)公司越成熟,運維崗位的劃分也會越細。
目前,很多大型互聯(lián)網(wǎng)公司只在初創(chuàng)期進行系統(tǒng)運維。隨著服務規(guī)模和服務質(zhì)量的要求,他們的工作也逐漸細分。
總體而言,運維團隊的工作分類和職責如下。
系統(tǒng)運維
系統(tǒng)運維負責IDC、網(wǎng)絡、CDN和基礎服務(LVS、NTP、DNS)的建設;負責資產(chǎn)管理、服務器選擇、交付和維護。具體工作職責如下。
1.IDC數(shù)據(jù)中心建設
收集業(yè)務需求,預估數(shù)據(jù)中心未來發(fā)展規(guī)模,從骨干網(wǎng)分布、數(shù)據(jù)中心樓宇、接入、網(wǎng)絡防攻擊能力、擴容能力、空間預留、外租專線能力、現(xiàn)場服務等方面進行評估支持能力。選擇數(shù)據(jù)中心。負責數(shù)據(jù)中心的建設和現(xiàn)場維護。
2.網(wǎng)絡建設
設計和規(guī)劃生產(chǎn)網(wǎng)絡架構(gòu),包括:數(shù)據(jù)中心網(wǎng)絡架構(gòu)、傳輸網(wǎng)絡架構(gòu)、CDN網(wǎng)絡架構(gòu)等,以及網(wǎng)絡調(diào)優(yōu)等日常運維工作。
3.LVS負載均衡和SNAT構(gòu)建
LVS是整個站點架構(gòu)中的流量入口,根據(jù)網(wǎng)絡規(guī)模和業(yè)務需求構(gòu)建負載均衡集群。完成網(wǎng)絡與業(yè)務服務器的連接,提供高性能、高可用的負載調(diào)度能力,以及統(tǒng)一的網(wǎng)絡層攻擊防御能力。NAT。在數(shù)據(jù)中心集中提供公網(wǎng)接入服務,通過集群部署保證出站服務的高性能和高可用性。
4.CDN規(guī)劃建設
CDN工作分為第三方和自建兩部分。建立第三方CDN的選擇和調(diào)度控制;根據(jù)業(yè)務發(fā)展趨勢規(guī)劃新CDN節(jié)點的建設和布局;完善CDN服務和監(jiān)控,確保CDN系統(tǒng)穩(wěn)定高效運行。分析服務加速通道的文件特征和數(shù)量,制定最優(yōu)的加速策略和資源匹配;負責用戶劫持等日常CDN故障排除。
5.服務器選型、交付和維護
負責服務器測試和選型,包括整臺服務器及組件的基礎測試和業(yè)務測試,降低整臺服務器的功耗,增加機架部署密度。
結(jié)合對公司業(yè)務的了解,推廣新的硬件和新的解決方案,降低業(yè)務中服務器的投資規(guī)模。負責診斷和定位服務器硬件故障,開發(fā)和維護服務器硬件監(jiān)控和健康檢查工具。
6.OS、內(nèi)核選擇及OS相關維護
負責整個平臺的操作系統(tǒng)選擇、定制和內(nèi)核優(yōu)化,以及補丁更新和內(nèi)部版本發(fā)布;建立基本的YUM包管理和分發(fā)中心,提供常用的包版本庫;跟進日常各種與操作系統(tǒng)相關的故障;業(yè)務類型,提供針對性的優(yōu)化支持。
7.資產(chǎn)管理
記錄和管理與運維相關的基本物理信息,包括數(shù)據(jù)中心、網(wǎng)絡、機柜、服務器、ACL、IP等資源信息,制定有效的流程,確保信息的準確性;開放API接口,提供自動化運維數(shù)據(jù)支持。
8.基礎服務建設
業(yè)務嚴重依賴DNS、NTP等基礎服務,需要設計高可用架構(gòu),避免單點,提供穩(wěn)定的基礎服務。
應用運維
應用運維負責在線服務變更、服務狀態(tài)監(jiān)控、服務容災和數(shù)據(jù)備份等,以及日常服務檢查和故障應急處理。具體工作職責如下。
1.設計評審
在產(chǎn)品開發(fā)階段,參與產(chǎn)品設計評審,從運維角度提出評審意見,使服務滿足運維接入的高可用需求。
2.服務管理
負責制定線上業(yè)務升級變更和回滾計劃,并實施變更。掌握負責的服務,服務之間的關系,以及服務所依賴的各種資源。能夠發(fā)現(xiàn)服務缺陷,及時報告并推進解決。制定服務穩(wěn)定性指標和準入標準,同時不斷完善和優(yōu)化流程和系統(tǒng)的功能和效率,提高運行質(zhì)量。完善監(jiān)控內(nèi)容,提高報警準確率。當在線服務出現(xiàn)故障時,立即響應,將已知在線故障按流程上報并按計劃執(zhí)行,并組織相關人員共同排除未知故障。
3.資源管理
管理各項服務的服務器資產(chǎn),梳理服務器資源狀況、數(shù)據(jù)中心分布、網(wǎng)絡專線和帶寬,合理使用服務器資源。根據(jù)不同業(yè)務的需求,分配不同配置的服務器,保證服務器資源的充分利用。
4.例行檢查
制定服務例行檢查點并不斷改進。根據(jù)既定的服務檢查點對服務進行定期檢查。對檢查過程中發(fā)現(xiàn)的問題,要及時追溯,消除可能存在的隱患。
5.計劃管理
確定服務所需的各種監(jiān)控、系統(tǒng)指標的閾值或臨界點,以及如果發(fā)生這種情況該怎么辦。建立和更新服務計劃文件,并根據(jù)日常故障情況不斷補充和改進,提高計劃的完整性。能夠制定和審核各類計劃,并定期進行計劃演練,確保計劃的可執(zhí)行性。
6.數(shù)據(jù)備份
制定數(shù)據(jù)備份策略,按規(guī)范開展數(shù)據(jù)備份工作。確保數(shù)據(jù)備份的可用性和完整性,并定期進行數(shù)據(jù)恢復測試。
數(shù)據(jù)庫運維
數(shù)據(jù)庫運維負責數(shù)據(jù)存儲方案設計、數(shù)據(jù)庫表設計、索引設計和SQL優(yōu)化,以及數(shù)據(jù)庫的變更、監(jiān)控、備份、高可用設計。具體工作職責如下。
1.設計評審
在產(chǎn)品開發(fā)初期,參與設計方案的評審,從DBA的角度提出數(shù)據(jù)存儲方案、數(shù)據(jù)庫表設計方案、SQL開發(fā)標準、索引設計方案等,使服務滿足數(shù)據(jù)庫使用的高可用性和高性能要求。
2.容量規(guī)劃
掌握負責服務的數(shù)據(jù)庫的容量上限,清楚地了解當前的瓶頸點。當服務尚未達到容量上限時,及時優(yōu)化、拆分或擴容。
3.數(shù)據(jù)備份與容災
制定數(shù)據(jù)備份和容災策略,定期完成數(shù)據(jù)恢復測試,確保數(shù)據(jù)備份的可用性和完整性。
4.數(shù)據(jù)庫監(jiān)控
提高數(shù)據(jù)庫生存和性能監(jiān)控,及時了解數(shù)據(jù)庫運行狀態(tài)和故障。數(shù)據(jù)庫安全 建立數(shù)據(jù)庫賬戶體系,嚴格控制賬戶權(quán)限和開放范圍,降低誤操作和數(shù)據(jù)泄露風險;加強離線備份數(shù)據(jù)管理,降低數(shù)據(jù)泄露風險。
5.數(shù)據(jù)庫高可用和性能優(yōu)化
針對數(shù)據(jù)庫的單點風險和故障設計相應的切換方案,降低故障對數(shù)據(jù)庫服務的影響;不斷優(yōu)化數(shù)據(jù)庫的整體性能,包括引入新的存儲方案、硬件優(yōu)化、文件系統(tǒng)優(yōu)化、數(shù)據(jù)庫優(yōu)化、SQL優(yōu)化等。在保證成本不增加或不增加的情況下,數(shù)據(jù)庫可以支持更多的業(yè)務請求小幅增加。
6.自動化系統(tǒng)建設
設計開發(fā)數(shù)據(jù)庫自動化運維系統(tǒng),包括數(shù)據(jù)庫部署、自動擴容、分庫分表、權(quán)限管理、備份與恢復、SQL審計與上線、故障轉(zhuǎn)移等功能。
7.運維研發(fā)
運維研發(fā)負責資產(chǎn)管理、監(jiān)控系統(tǒng)、運維平臺、數(shù)據(jù)權(quán)限管理系統(tǒng)等通用運維平臺的設計開發(fā)。為運維或研發(fā)人員提供各種API,封裝更高級別的自動化運維系統(tǒng)。具體工作職責如下。
8.運維平臺
記錄和管理服務及其關聯(lián),協(xié)助運維人員自動化處理日常運維操作,包括機器管理、重啟、更名、初始化、域名管理、流量切換、故障預案執(zhí)行等。
9.監(jiān)控系統(tǒng)
負責監(jiān)控系統(tǒng)的設計與開發(fā),完成公司服務器及各類網(wǎng)絡設備資源指標、在線業(yè)務運行指標等的采集、告警、存儲、分析、展示和數(shù)據(jù)挖掘,不斷提高時效性和告警準確 靈活智能,促進公司服務器資源的合理配置。
10.自動化部署系統(tǒng)
參與部署自動化系統(tǒng)的開發(fā),負責自動化部署系統(tǒng)所需的基礎數(shù)據(jù)和信息,負責權(quán)限管理、API開發(fā)、Web端開發(fā)。結(jié)合云計算,我們開發(fā)并提供PaaS相關的高可用平臺,進一步提升服務部署速度和用戶體驗,提高資源利用率。
運維安全
運維安全負責網(wǎng)絡、系統(tǒng)和業(yè)務的安全加固,定期進行安全掃描、滲透測試、安全工具和系統(tǒng)的研發(fā)、安全事件的應急處理。具體工作職責如下。
1.安全系統(tǒng)建立
根據(jù)公司內(nèi)部的具體流程,制定切實有效的安全體系。
2.安全培訓
定期對員工進行有針對性的安全培訓和考核,在全公司建立安全責任人制度。
3.風險評估
通過黑白盒測試檢查機制,定期生成物理網(wǎng)絡、服務器、業(yè)務應用、用戶數(shù)據(jù)等整體風險評估結(jié)果。
4.安全建設
根據(jù)風險評估結(jié)果,加強最薄弱環(huán)節(jié),包括設計安全防線、部署安全設備、及時更新補丁、防病毒、自動掃描源代碼、咨詢業(yè)務產(chǎn)品安全等。為了降低可能泄露的數(shù)據(jù)的價值,通過加密、匿名化、混淆甚至定期刪除等技術手段和流程來達到目的。
5.安全合規(guī)
為了滿足支付許可等合規(guī)要求,安全團隊負責安全合規(guī)的對外接口。
6.應急響應
建立安全報警系統(tǒng),通過安全中心收集第三方發(fā)現(xiàn)的安全問題,組織各部門對發(fā)現(xiàn)的安全問題進行修復,評估影響,事后追查安全原因。
運維工作開發(fā)流程
前期運維團隊主要進行數(shù)據(jù)中心建設、基礎網(wǎng)絡建設、服務器采購和服務器安裝交付工作,人員較少。它很少涉及在線服務的更改、監(jiān)控和管理。
這時候運維團隊更多的扮演著基礎設施的角色,提供一個簡單可用的網(wǎng)絡環(huán)境和系統(tǒng)環(huán)境。
隨著業(yè)務產(chǎn)品的逐漸成熟,對服務質(zhì)量提出了更高的要求。此時運維團隊也會承擔一些服務器監(jiān)控工作,同時也會負責LVS、Nginx等4/7層與業(yè)務邏輯無關的運維工作。
這時候服務變更更多的是手動操作,或者有一些簡單的批處理腳本。監(jiān)控的重點更多是服務器狀態(tài)和資源使用情況,對服務應用狀態(tài)的監(jiān)控很少,更多的監(jiān)控使用Cacti等各種開源系統(tǒng)。
由于業(yè)務規(guī)模和復雜性的不斷增加,運維團隊將逐漸劃分為應用運維和系統(tǒng)運維。應用運維開始接手線上業(yè)務,逐步開展服務監(jiān)控整理、數(shù)據(jù)備份和服務變更等工作。
隨著服務的深入,應用運維工程師有能力開始對服務進行一些簡單的優(yōu)化。同時,為了應對每天大量的服務變更,我們也開始編寫各種運維工具,可以方便地批量變更某些服務。
隨著業(yè)務規(guī)模的擴大,由于容量規(guī)劃不足或抗風險能力弱導致的基礎設施故障越來越多,迫使運維人員開始將更多的精力投入到多數(shù)據(jù)中心的容災和計劃管理上。方向。
業(yè)務規(guī)模達到一定程度后,開源監(jiān)控系統(tǒng)在性能和功能上已經(jīng)無法滿足業(yè)務需求;大量的服務變更和復雜的服務關系,過去依賴人工記錄和工具更換,效率或準確性均不高。兩者都不能滿足業(yè)務需求。
安全方面也發(fā)生了大大小小的各種事件,迫使我們將更多的精力投入到安全防御中。運維團隊逐漸形成了上述5大類崗位,每一類都需要專門人才。
此時系統(tǒng)運維更側(cè)重于基礎設施建設和運維,提供穩(wěn)定高效的網(wǎng)絡環(huán)境,將服務器等資源交付給應用運維工程師。應用運維更關注服務運行狀態(tài)和效率。
數(shù)據(jù)庫運維屬于應用運維工作的精細化,更側(cè)重于數(shù)據(jù)庫領域的自動化、性能優(yōu)化和安全防御。運維研發(fā)和運維保障提供各種平臺和工具,進一步提高運維工程師的工作效率it運維,讓業(yè)務服務運行更加穩(wěn)定、高效、安全。
我們將運維開發(fā)過程分為4個階段:
人工管理階段:業(yè)務流量不大,服務器數(shù)量比較少,系統(tǒng)復雜度不高。對于日常的業(yè)務管理操作,大家更有可能一一登錄服務器進行手動操作。他們每個人都在以自己的方式戰(zhàn)斗。每個人都有自己的操作方法,缺乏必要的操作標準和流程機制。例如,業(yè)務目錄環(huán)境都是不同的。各種各樣的。
工具批量操作階段:隨著服務器規(guī)模和系統(tǒng)復雜度的增加,全手工操作模式已經(jīng)不能滿足業(yè)務快速發(fā)展的需要。因此,運維人員逐漸開始使用批量操作工具,針對不同的操作類型出現(xiàn)了不同的腳本程序。
但是每個團隊都有自己的工具it運維,每次運營需求發(fā)生變化時都需要對其進行調(diào)整。這主要是由于環(huán)境和操作規(guī)范不足,導致可編程處理能力較弱。至此,雖然效率有了一定的提升,但很快又遇到了瓶頸。
操作的質(zhì)量并沒有太大的提升,甚至可能由于批量執(zhí)行而導致更大規(guī)模的問題。我們開始建立大量的流程規(guī)范,比如審核機制,先用服務器上線觀察10分鐘再繼續(xù)后續(xù)操作,升級完成后至少觀察20分鐘。
這些主要靠人來監(jiān)督和落實,但在實際過程中,往往落實不到位,降低了工作效率。
平臺管理階段:此階段對運維效率和誤操作率有較高要求。我們決定開始建設運維平臺,通過平臺承載標準和流程,從而解放人力,提高質(zhì)量。
這時服務的變更動作被抽象出來,形成了操作方法、服務目錄環(huán)境、服務操作方式的統(tǒng)一標準。比如程序的啟停界面必須包括啟動、停止、過載等。運行過程受平臺約束,比如上面提到的在線服務器觀察10分鐘。
在平臺中強制設置暫停檢查點。第一臺服務器運行完成后,運維人員需要填寫相應的檢查項,然后才能繼續(xù)后續(xù)的部署動作。
系統(tǒng)自調(diào)度階段:規(guī)模更大的服務數(shù)量,更復雜的服務關聯(lián),各種運維平臺的建立,原來將批量操作轉(zhuǎn)化為平臺操作的方式已經(jīng)不適用,需要改進服務變化。一層抽象。
每臺服務器被抽象成一個容器,調(diào)度系統(tǒng)根據(jù)資源使用情況,將服務調(diào)度部署到合適的服務器上,并自動完成與周邊運維系統(tǒng)的聯(lián)動,如監(jiān)控系統(tǒng)、日志系統(tǒng)、備份系統(tǒng)等。
通過自調(diào)度系統(tǒng),可以根據(jù)業(yè)務運行動態(tài)擴展容量,自動處理常見業(yè)務故障。運維人員的工作也將推進到產(chǎn)品設計階段,協(xié)助研發(fā)人員進行服務改造,接入自調(diào)度系統(tǒng)。
在運維的整個開發(fā)過程中,我們希望所有的工作都實現(xiàn)自動化,減少人的重復性工作,降低知識轉(zhuǎn)移的成本,讓我們的運維交付更高效、更安全,讓產(chǎn)品運行起來更穩(wěn)定。對于故障的處理,也希望后處理變成早期檢測,人工處理變成系統(tǒng)自動容災。
福利
圈子搭建,學習資料獲取【ITIL/數(shù)字化轉(zhuǎn)型/IT規(guī)劃各種文檔解決方案報告】,歡迎加入知識星球(掃描下方二維碼)~~~