運維工程師主要工作是做什么?

總結兩句話:

1、保障業務長期穩定運行(如網站服務器、游戲服務器等)。

2、保障數據安全可靠(如用戶名密碼、游戲數據、博客文章、交易數據等)。

由這兩句話推演運維工程師要學些什么?

一、保障業務長期穩定運行

出一點點差錯,用戶就要投訴了。

1、業務跑在什么上面?

網站服務器一般是apache,nginx,tomcat等。但是真正跑通流程還需要Mysql數據庫來存儲用戶密碼及其它。很多程序都要php的解析,所以LNMP、LAMP(即nginx、apache、mysql、php)環境部署是必須掌握的技能。

2、業務出了問題怎么及時知道?

這就需要監控軟件來郵件或短信來通知你,常用的有zabbix,nagios等。報警發郵件,也得一個郵件程序呀,sendmail或postfix。

3、在家里收到報警,但服務器是內網IP,怎么也得解決問題吧?

在公司搭建open***或pptp或openswan,在家里通過×××撥入內網,24小時解決問題…唉,半夜爬起來解決問題也沒工資。

二、保障數據安全可靠

出一點點差錯,領導要找你喝茶了。

1、有時需要手動改數據庫內容?

所以要會基本的Mysql數據庫增刪查改命令。

2、萬一數據庫服務器硬件壞了怎么辦?

需要有個備庫以備不時之需,所以需要Mysql主從復制。

3、數據庫要還原怎么辦?

所以需要在crond中定期全備Mysql數據,以便還原使用。如果要還原到指定時間點,還要學會Mysql增量備份與恢復。

4、如果是用戶上傳的圖片或文件服務器壞了怎么辦?

定時備份可能還不夠,需要使用rsync加inotify來實時備份。以便任一時刻主服務器壞掉,也能保障所有圖片有備份可以用來恢復。

5、小心***,要增加服務器安全性?

ssh輕易不能讓外人訪問,那么就設置只允許公司的IP或跳板機IP訪問,這些都通過iptables來控制。

三、大性能

1、越來越多的用戶來訪問我們的網站,一臺web服務器抗不住了怎么辦?
那就需要多臺web服務器來負擔,但多臺服務器之間怎么進行負載均衡呢,這就需要用到nginx反向代理或LVS+keepalived或haproxy+heartbeat了。

2、用戶注冊發表的文章與評論太多,一臺數據庫抗不住了怎么辦?
數據庫壓力分為讀和寫,如果寫抗不住,需要進行分表分庫到多個服務器上。如果是讀壓力不夠了,可以使用mysql-proxy讀寫分離,
來分擔讀的壓力。更簡單方便的方法,把數據庫里的內容放到內存上,這就用上memcache或redis了。

3、N多用戶上傳下載文件,磁盤抗不住了怎么辦?
把多塊磁盤做成raid,或者使用分布式存儲文件系統如MFS,GlusterFS來提高磁盤的讀寫能力。

4、網站上好多圖片,總有用戶反應網站加載太慢,怎么辦?
這時可以把網站上的圖片通過squid或varnish緩存到網站前端,盡可能的增加訪問速度,當然,最好是購買商業的CDN加速。

5、運營商是個大難題,他們之間的帶寬好像很小,聯通IP訪問我電信網站怎么就這么慢呢?
這時可以使用bind自建一個DNS服務器,把網站的DNS記錄指向自建DNS服務器上,配置好解析規則,以后聯通IP解析到聯通網站上,
電信IP解析到電信網站上,體驗就會好很多啦。

四、自動化

終極目標:跑死機器,閑死人。
1、公司新買100臺服務器,公司竟然就1個移動光驅,這裝系統得到什么時候?
使用kickstart或cobbler來網絡遠程自動安裝系統吧。

2、每次裝完機要優化很多內容,什么文件描述符、端口、軟件安裝啊,手動操作不累死去?
趕緊學會shell,將解放非常多的工作量。

3、系統裝完后登陸要輸入密碼,這么多臺啊?
使用expect吧,自動讀取提示來輸入密碼,并執行命令。

4、要批量把新代碼發布到線上服務器,怎么辦?
使用saltstack或puppet或ansible吧,絕對爽歪歪。

五、其他

1、搭整套測試環境需要5臺服務器,但公司窮的只有一臺空閑服務器?
學會xen或kvm或docker吧,虛擬出多臺服務器,就能解決資源問題了。特別是docker,強烈推薦,以后某個研發人員讓你部署一套新環境,分分鐘幫他解決。

2、研發人員的代碼控制,權限控制,總要運維人員管呀?
svn或git,這個是肯定要有的。

結尾:

現在我們在回過頭來思考,運維工程師平時干些啥呢?

1、 隨時解決報警故障。

2、 業務程序更新。

3、 編寫一些腳本,監控或完成其他可自動完成功能。

4、 運維架構完善,部署一些用起來更方便更可靠或性能更好的開源工具以及制定運維流程規范。

5、 打雜,如調交換機,裝系統,部署新環境等。

轉載于:https://blog.51cto.com/14033933/2306971

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/277050.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/277050.shtml
英文地址,請注明出處:http://en.pswp.cn/news/277050.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

python3.7 安裝cx_Freeze

遇到的問題簡單描述: 1,直接 pip install cz_freeze 安裝失敗 2,pip cx_Free-*.*.*.tar.gz 安裝失敗 解決辦法: 1,下載 cx_Freeze-5.1.1-cp37-cp37m-win_amd64.whl (地址:https://www.lfd.uci…

SiteMesh參考

SiteMesh參考 作者:kongxx (kongxxgmail.com)安裝 首先從sitemesh下載安裝包,這里使用的是2.2.1版本。 創建一個Web應用程序,這里我創建一個名為myapp的Web應用程序; 復制sitemesh-2.2.1.jar文件到{myapp}/WEB-INF/lib目錄下&am…

精通Spring Boot——第十一篇:使用自定義配置

2019獨角獸企業重金招聘Python工程師標準>>> 今天這篇文章給大家介紹自定義配置的兩種方式 第一式: 使用ConfigurationProperties,且看代碼 package com.developlee.customconfig.config;import org.springframework.boot.context.properties…

MySQL 高可用架構在業務層面的應用分析

MySQL 高可用架構在業務層面的應用分析 http://mp.weixin.qq.com/s?__bizMzAxNjAzMTQyMA&mid208312443&idx1&snf9a0d03dd9a1cf3b3575c0241291e421&scene22&srcidseLU5tmZumKLzwVBIHzM#rd http://mp.weixin.qq.com/s?__bizMzAxNjAzMTQyMA&mid20831244…

使用Expresso學習.net正則表達式

什么是RE?想必各位大大在做文件查找的時侯都有使用過萬用字符”*”,比如說想查找在Windows目錄下所有的Word文件時,你可能就會用”*.doc”這樣的方式來做查找,因為”*”所代表的是任意的字符。RE所做的就是類似這樣的功能,但其功…

數據結構與算法學習筆記之 從0編號的數組

數據結構與算法學習筆記之 從0編號的數組前言數組看似簡單,但掌握精髓的卻沒有多少;他既是編程語言中的數據類型,又是最基礎的數據結構;一個小問題:為什么數據要從0開始編號,而不是 從1開始呢?正…

JAVA四種基本排序總結

JAVA四種基本排序,包括冒泡法,插入法,選擇法,SHELL排序法.其中選擇法是冒泡法的改進,SHELL排序法是 插入法的改進.所以從根本上來說可以歸納為兩種不同的排序方法:即:插入法&冒泡法一 插入法:遍歷排序集合,每到一個元素時,都要將這個元素與所…

Windows 故障轉移+Hyper-V 虛機自動遷移高 可用

Windows 故障轉移Hyper-V 虛機自動遷移高 可用 Windows 故障轉移Hyper-V 虛機自動遷移高... 1一、系統原理... 31.1 高效率的 VMbus 架構... 31.2 完美支持 Linux 系統... 4二、架構拓樸... 52.1 網絡及系統架構拓樸... 52.2 域結構拓樸... 5三、實驗資源列表... 63.1 網絡設備…

MSSqlServer基礎學習01

1.新建登陸用戶名,須賦予數據庫訪問權限方可訪問已有的數據庫,可以參考如下圖片轉載于:https://www.cnblogs.com/MyVision/p/11242417.html

js,java時間處理

1.JS獲取時間格式為“yyyy-MM-dd HH:mm:ss”的字符串 function getTimeStr(){var myDate new Date();var year myDate.getFullYear(); //獲取完整的年份(4位,1970-????)var month myDate.getMonth(); //獲取當前月份(0-11,0代表1月)month month > 9 ? month : &quo…

框架和模式

1.什么是模式? 模式,即pattern。其實就是解決某一類問題的方法論。你把解決某類問題的方法總結歸納到理論高度,那就是模式。 Alexander給出的經典定義是:每個模式都描述了一個在我們的環境中不斷出現的問題&#xff0c…

人月神話第三章

對于效率和概念的完整性來說,最好由少數干練的人員來設計和開發, 而對于大型系統, 則需要大量的人手, 以使產品能在時間上滿足要求。 文章參照外科手術隊伍對10個人的編程隊伍進行專業化的角色分工。并為如何運作做出詳細說明。…

評上了7月份的Microsoft MVP

昨天晚上覺得困,于是躺到床上去休息了一會兒,沒想到醒來以后就發現了一封信,告訴我當選了7月份的MVP(我們的Cat Chen也同樣當選了,園子里肯定還有其它朋友)。自從去年9月份登陸博客園以來,寫技術…

javascript刪除數組,索引出現問題解決辦法。

var data [{ isRemove: 0, name: "項目1" },{ isRemove: 1, name: "項目2" },{ isRemove: 1, name: "項目3" },{ isRemove: 0, name: "項目4" },{ isRemove: 0, name: "項目5" },{ isRemove: 0, name: "項目6" }…

知識點 - 學習過程中積累

優化數據庫查詢訪問&#xff1a;使用存儲過程&#xff0c;利用連接池打開關閉數據庫&#xff1b;操作數據是&#xff0c;盡量避免裝箱&#xff1b;數據庫中為<NULL>的字段&#xff0c;sql語句中用is null讀取&#xff1b;開發復合控件的主要步驟&#xff1a;1&#xff09…

Mircosoft 正式把Windows Mobile改名為Windows Phone,你會因此而購買Windows Phone嗎?

簡介 本文講述Windows Phone改名事件&#xff0c;以及Windows Phone發展歷史和今后發展策略的想法。 事件 今天下班的時候看報紙&#xff0c;有一段新聞關于昨天(2009年10月6日)Mircosoft正式使用Windows Phone這個名字。我去到原先Windows Mobile的主頁&#xff0c;已經全部由…

【課后服務】20181022切蛋糕

權當拋磚引玉吧&#xff0c;掌握記搜的方法最重要。 #include<iostream> #include<cstring> #include<cstdio> using namespace std; int n,m,k; bool book[21][21]; int cake[21][21]; int dp[21][21][21][21]; int yt(int x,int y,int w,int h)//返回蛋糕…

我也來記錄我的一些開發心得和筆記!

博客園&#xff0c;我來了&#xff01; 轉載于:https://www.cnblogs.com/rose2007/archive/2007/07/11/814435.html

經典vim插件功能說明、安裝方法和使用方法介紹(已更新)

1 # 2 轉載請注明出處: http://blog.csdn.net/tge7618291 http://nuoerlz.is-programmer.com 8 # 9 1. 查看 key 相關信息說明的命令 :help keycodes 10 11 # 12 2. ctags 13 (1). 幫助手冊查看 14 :help usr_29 15 16 (2). 功能 17 ctags的功能, 只要在unix/lin…

【哈利波特】Sherbert Lemon對HP的解讀之11

NINEScar FaceThe characteristics of Harry’s scar change considerably.PS/SS – BurningQUOTEHarry, who was starting to feel warm and sleepy, looked up at the High Table again. Hagrid was drinking deeply from his goblet. Professor McGonagall was talking to P…