欧美精品免费专区在线观看,少妇一级aa一区二区三区片,激情6月丁香婷婷色综合,深夜A级毛片催情精视频免费

初識運維:運維是什么,要怎么做,需要掌握哪些技術?

2024-07-02 14:25:19 Jinyu

運維是什么:通常屬于技術部門,與研發、測試、系統管理同為互聯網產品技術支撐的4大部門,這個劃分在國內和國外以及大小公司間都會多少有一些不同。

運維的內容:對于初創公司,運維工程師的工作可能需要從申請域名開始購買/租用服務器,上架,調整網絡設備的設置,部署操作系統和運行環境,部署代碼,設計和部署監控,防止漏洞和攻擊等等。對于大型的公司,對于運維工作的要求越來越高,也催生了更細化的運維分工:大致可以分為網站運維,系統運維,網絡運維,數據庫運維,IT運維,運維開發,運維安全等方向。(也就是說運維工程師需要負責部署服務器、預防攻擊、維護數據庫等等,可以說是和網絡與服務器打交道的技術工作者)

運維要怎么做:運維的職責覆蓋了產品從設計到發布、運行維護、變更升級及至下線的生命周期,各個階段的職責包括:

產品發布前
這個階段運維工程師的職責是參與設計并把有關運維準入,主要包括:
(1) 產品的業務熟悉;
(2) 產品架構設計的合理性評估,包括是否存在單點,是否可容錯,是否有強耦合等,同時需要提供產品設計的合理性建議以使產品能夠滿足上線發布并穩定運行的基本要求;
(3) 資源評估,包括所需的服務器資源、網絡資源以及資源的分布等,同時把相關產品對資源預算申請的合理性,控制服務成本;
(4) 資源就位,將申請的服務器及基礎環境/域名準備就位。
產品發布
這個階段運維工程師負責發布的具體工作,將具體的軟件和系統/硬件資源整合形成產品并對外提供服務。
對于已在線服務的更新也屬于發布范疇,這個時候的產品發布一般要保障在線發布,在不中斷對外服務的情況下完成產品的升級。對于大型復雜的變更也存在中止服務部署完成后再重新提供服務的情況,但這種情況需要運維工程師通過盡可能的技術手段來避免。
產品運行維護
這個階段的主要工作包括:
(1) 監控:對服務運行的狀態進行實時的監控,隨時發現服務的運行異常和資源消耗情況;輸出重要的日常服務運行報表以評估服務/業務整體運行狀況,發現服務隱患;
(2) 故障處理:對服務出現的任何異常進行及時處理,盡可能避免問題的擴大化甚至中止服務。這之前運維工程師需要針對各類服務異常,如機房/網絡故障、程序bug等問題制定處理的預案,問題出現時可以自動或手動執行預案達到止損的目的。除了日常小故障外,運維工程師還需要考慮產品不同程度受損情況下的災難恢復,包括諸如地震等不可抗力導致大規模機房故障、在線產品被刪除等對產品造成致命傷害的情況。
容量管理:包括服務規模擴張后的資源評估、擴容、機房遷移、流量調度等規劃和具體實施。
產品性能/成本優化
產品對外提供服務最重要的一點是用戶體驗,用戶體驗中非常重要的是產品的可用性和響應速度。而如何用最合理的資源(如機器、帶寬等)支持產品提供高可用和高速度的用戶體驗,這也是運維工程師的重要職責。
產品下線
發展良好的互聯網產品將始終在線對外提供服務,但互聯網產品快速迭代,也存在相當多孵化的產品最后被淘汰的情況,這些產品都需要做下線處理,這個過程運維工程師主要做好資源回收的工作,將機器/網絡等資源回收后納入資源池中供其它服務使用。
運維工程師需要掌握哪些技術:

1、Linux系統基礎 
  這個不用說了,是基礎中的基礎,連這個都不會就別干了,參考書籍,可以看鳥哥linux基礎篇,至少要掌握這書60%內容,沒必須全部掌握,但基本命令總得會吧。

2、網絡服務 
  服務有很多種,每間公司都會用到不同的,但基礎的服務肯定要掌握,如FTP, DNS,SAMBA, 郵件, 這幾個大概學一下就行,LAMP和LNMP是必須要熟練,我所指的不是光光會搭建,而是要很熟悉里面的相當配置才行,因為公司最關鍵的絕對是WEB服務器,所以nginx和apache要熟悉,特別是nginx一定要很熟悉才行,至少有些公司還會用tomcat,這個也最好學一下。其實網絡服務方面不用太擔心,一般公司的環境都已經搭建好,就算有新服務器或讓你整改,公司會有相應的文檔讓你參照來弄,不會讓你亂來的,但至少相關的配置一定要學熟,而且肯定是編譯安裝多,那些模塊要熟悉一下他的作用,特別是PHP那些模塊。 
  這上面2點只是基礎,也是必要條件,不能說是工具,以下才是真正的要掌握的工具。

3、shell腳本和另一個腳本語言 
  shell是運維人員必須具備的,不懂這個連入職都不行,至少也要寫出一些系統管理腳本,最簡單也得寫個監控CPU,內存比率的腳本吧,這是最最最基本了,別以為會寫那些猜數字和計算什么數的,這些沒什么作用,只作學習意義,寫系統腳本才是最有意義,而另一個腳本語言是可選的,一般是3P,即python, perl和php,php就不需要考慮了,除非你要做開發,我個人建議學python會比較好,難實現自動化運維,perl是文本處理很強大,反正這兩個學一個就行了。

4、sed和awk工具 
  必須要掌握,在掌握這兩個工具同時,還要掌握正則表達式,這個就痛苦了,正則是最難學的表達式,但結合到sed和awk中會很強大,在處理文本內容和過濾WEB內容時十分有用,不過在學shell的同時一般會經常結合用到的,所以學第3點就會順便學第4點。

5、文本處理命令 
  sort, tr, cut, paste, uniq, tee等,必學,也是結合第3點時一并學習的。

6、數據庫 
  首選mysql,別問我為什么不學sqlserver和oracle,因為Linux用得最多絕對是mysql,增刪改查必學,特別要學熟查,其它方面可能不太需要,因為運維人員使用最多還是查,哪些優化和開發語句不會讓你弄的。

7、防火墻 
  不學不行,防火墻也算是個難點,說難不難,說易不易,最重要弄懂規則,如果學過CCNA的朋友可能會比較好學,因為iptables也有NAT表,原理是一樣的,而FILTER表用得最多,反正不學就肯定不合格。

8、監控工具 
  十分十分重要,我個人建議,最好學這3個,cacti,nagios,zabbix,企業用得最多應該是 nagios 和 zabbix,反正都學吧,但nagios會有點難,因為會涉及到用腳本寫自動監控,那個地方很難。

9、集群和熱備 
  這個很重要,肯定要懂的,但到了公司就不會讓你去弄,因為新手基本不讓你碰,集群工具有很多,最好學是LVS,這是必學,最好也學學nginx集群,反向代理,還有熱備,這個就更多工具能實現了,像我公司是自己開發熱備工具的,mysql熱備也要學,就是主從復制,這個別告訴我容易,其實不容易的,要學懂整個流程一點也不容易,只照著做根本沒意思。

10、數據備份 
  不學不行,工具有很多,但至少要把RAID的原理弄懂,特別是企業最常用的1+0或0+1,自己做實驗也要弄出來,備份工具有很多,如tar, dump, rsync等,最好多了解一下。 


我要咨詢
主站蜘蛛池模板: 石家庄市| 大港区| 荣成市| 新乡县| 汕尾市| 新余市| 东辽县| 西丰县| 嘉定区| 龙口市| 永兴县| 明水县| 乐昌市| 舒兰市| 彭山县| 大厂| 卓资县| 乐亭县| 夏邑县| 都昌县| 望奎县| 府谷县| 普宁市| 元朗区| 英吉沙县| 招远市| 栾城县| 贵阳市| 西丰县| 沅陵县| 西青区| 三明市| 鄂州市| 万州区| 循化| 旬邑县| 勃利县| 富蕴县| 洛川县| 泸州市| 循化|