歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> 系統運維的85條軍規

系統運維的85條軍規

日期:2017/2/27 15:59:01   编辑:Linux教程
1. 承載能力優先 ——隨後再進行優化 —— 不遵守這條規則必定帶來故障停機時間。不要在故障停機時間的壓力下進行優化——要先集中精力提高承載能力。

2. 以Postgres為例,一定要確保你的每一個網絡都能匹配得上你的WAL文件、Slony復制、快照技術以及基於磁盤的DB版本化(快照的衍生品)

3. 不要把問題‘優化’到你的架構之中。為了解決問題而新加進來的一些東西往往後來都會變成運維沉重的負擔。 要確保在運維工程化中開發出來的工具交接完整。過後再回頭進行進一步的開發往往不靈。更重要的是,變更請求可能會破壞已經安排好的工程計劃。

4. 保持簡單。保持簡單,因為你很聰明 別把事搞的太復雜 因為你行的。

5. 應該非常謹慎地使用 緩存 ,為了保護資源一致性,它很難進行水平縮放。
  • 如果你作的是一個可以橫向擴展的東西
  • 明智或審慎的做法是不要添加的緩存層
  • 如果非要使用,它應該是為最終用戶獲得性能
  • 不是為了贏得一個網站的容量

6. 不要所有代碼都自己寫; 不要所有東西都外包; 在合適的時間使用合適的工具,完成你的工作.

7. 協商-真正有效的談判唯一方式是先作一些調研,制定一些可行的性方案.這樣你可以挑選你的首席開發商,如果你真的需要. 別虛張聲勢.

8. 一直保持N+1。如果N=1,無論任何情況下不要輕易使用+1,這個1只用於當N down機情況下。當使用冗余服務器來承載負載時候,不要讓你的系統超過49%的負荷。當有機會能只用N+2的架構時候,使用它。

9. 數據丟失不是任何一個公司所能承擔的風險--這是舉世所知的真理。數據丟失造成的損失遠遠大於保持數據不丟失所花的成本。

10. 無論何時何地盡可能並行化。這是復路考慮最重要的手段。比如,如果利用MogileFS來做位置感知,並且需要實時的復制數據,一個可行的方法是每一台MogileFS服務器可以復制它的數據去MogileFS的負載均衡中心。盡可能多的啟用多的平行。

11. 閱讀手冊。至今,我還是堅持要先通讀RAID卡的手冊,以確認是否有什麼細微的差別。惡魔都隱藏在細節裡。做足功課吧!

12. 知道瓶頸所在,並知道怎麼去定位它,一層層排查,查找是不是硬盤、內存或者cpu的阻塞了。通常這個很簡單。

13. 定期做系統容量管理程序。積極一點。如果沒有容量數據的曲線,你很難知道你系統的薄弱之處。

14. 不要促成失敗,不要害怕改變。

15. 別挖陷阱給自己跳。不要認為你的工作成果將能作為未來的工作的動力。
16. 運維人員寫的代碼應該是運維工具,而不是應用軟件。

17. 在運維團隊中,不要低估了項目管理、文檔撰寫以及財務分析人員的價值。他們比給予工資更有價值。

18. 監控一切。報警異常問題。其他部分記錄數據用來做趨勢分析信息。

19. 定期的流程查看各個地方的趨勢數據。

20. 不要把監控弄的很亂,不然他就沒有啥意義了。

21. 要確保監控系統簡單到讓公司的每個人都能上手。你可能會很吃驚監控數據指標轉換成為業務指標、市場指標和銷售等等指標有多頻繁。

22. 只在可以做出相應改善的地方做檢查。 否則就不要浪費時間了。

23. 公開你的檢查報告,並附上相關數據,以便他人可以容易的閱讀到關鍵點,並能關聯到響應的數據。

24. 在每一個技術點都分配人手。

25. 要給重要人員配備後備人手。

26. 要不斷的招聘。甚至是當你沒有名額,也要一直招聘。

27. 要嚴於律己。無論你有多聰明或者你認為你多NB,你也要不斷的提高自己。

28. 要盡可能多的把自己和其他公司做比較。眼光要往外看。

29. 挑選一個展會或回憶,只有一個,一年一次,去參加。如果展會一年舉辦多次,之參加一次。

30. 購買你需要的,而非你想要的。永遠都不要摘掉企業這頂帽子帶上“什麼對我是最簡單最安全的”這頂帽子。

31. 永遠只做最生意有益的事情,即使這意味著你需要離開。

32. 正式問責機制——記錄承諾,標記它們,揭示為兌現的承諾。

33. 你不應失敗兩次以上。恐懼感有點好處。但要知道長期犯錯和無意犯錯的區別。

34. 無情一些——你的對手如此。

35. 視工作為在你完成時需要簽上你的名字。這也意味著完成你的工作。

36. 變得對別人有用。

37. 與初創公司合作——提供你的專業技術和規模,你將獲得免費的產品作為回報,有時甚或一生。

38. 容量是一個業務/產品問題。這意外著每個頁面、每個請求、每次登錄的網絡成本等等在做正確的業務/產品決策時候都必須是都透明

39. 一直打破預算。運維團隊通常是最大的花費者。通常沒有收入沒有達到預算,但是運維團隊可以有很多方法來延期采購。

40. 過去能正常的做的事,不見得現在或者未來都會正常。所以做的時候,先用工具測試一下。

41. 文檔化。把所有東西都寫成文檔。要讓新人挨個去問怎麼做事。

42. 用一張大尺寸的圖繪制你數據中心的網絡拓撲。

43. 用一張圖描繪出你每一個產品的業務流程圖。

44. Faq-O-Matic, Wiki, 在這裡人們可以很容易的發布“這是如何修復這個”的文章,並讓它容易被找到的地方。這裡是技術編寫者能派上用場的地方,但是,最重要的是使文檔更容易,即使是非正式的。

45. 確保所有人,任何人都可以被替換。

46. 多數人在家裡做的比在辦公室裡更多,有些人則不然。

47. 捆綁下單——你可以要求更多折扣,更好的條款等等。當你成批購進硬件時。你可以要求一切——最低價格,備件包,租賃期限,只要他們還沒有得到訂單。

48. 同你的供貨商保持長期關系——確保你在下份工作時依然能夠聯系他們。

49. 給運維團隊的每一個人配置可以用來遠程工作的超級裝備:掌上電腦、無線上網卡、24英寸液晶顯示器等等。雇傭大拿得到回報要遠大於遠程雇傭的本地人員。記住運維工程師都是用電達人,能充分的利用屏幕上的每一個像素點。

50. 完全陷入IT標准的泥潭。直到Mac運行office 2007和outlook,你必須運行windows。間斷的。除非全用mac本,否則這會破壞會議日程表、聯系人或者郵件列表的辦公效率。如果有個員工願意工作的在 xp環境。這是非常少。這條法則,現在是陳舊的/未公認的,陷入泥潭不一定是最好的方法。這個列表非常的07化。

51. 有個合理的采購流程。知道你的預算,確信能管好它。從財務得到實際的金額。在技術驅動的預算/報告和財務驅動的預算/報告直接往往有一定的差距。作為一個搞的運維管理者要能形成模型把這些差距計入銷售總成本中。一個理解這些事情的CFO有助於推動業務決策。

52. 周會一定要持續進行。對上次會議的事件逐一落實結果和追責。

53. 建立一個分離的逐級升級系統,用以消除由於開發者代碼的問題對線上系統的不良影響。這主要是運維問題、代碼問題都存在的情況下在開發跟蹤系統或者運維跟蹤系統中往往會丟掉,最後無人理睬。建立一個獨立的跟蹤系統來解決這些問題可以使得問題簡單清晰。

54. 產品開發從設計開始的每個階段都要和運維相結合。這樣,擴展性,監控和可靠性都融入到產品裡。這樣同時也可以確保運維負責的硬件采購、監控系統按時到位,運維手冊得到及時更新,最後產品按照預計時間上線運行並且都符合運維標准。

55. 在公司真正的實踐——Sarbanes,WebTrust 安全審計認證,SAS 70 審計標准,Visa 和銀行等等。如果你真的成功了,這些都是你不得不打交道的。早點開始這些准備其實很簡單,不需要太多的知識。部署一個工單/任務跟蹤工具,使用它。把變更控制和變更管理納入同樣的系統裡,使用它。其他信息也可以放進來。系統就可以幫助我們找出像“上周變更了什麼”這類信息。

56. 簡化給冗余留和多點登錄的流程。一開始或許很難,但是一個沒有真正的擴展性和可靠性的系統,才會真正耽誤你獲得成功的時間。

57. Oracle 標准版(SQL Server 標准版)是值得購買的。如果你可以限制住自己不超過標准版的需求,那就絕對值得買,哪怕你剛剛開始創業還不需要他。

58. Postgres 和 MySQL 是一個免費的考慮。如果你不是特別在意事務完整性,MySQL 是很好的選擇。直到"真空"和Postgres單詞的強制鏈被打斷,Postgres代表一個不可預知的,通常消極詭異的數據庫

59. 容量設計應該按照每日峰值再上拋 20% ~ 30% 的冗余。除非你是個遷移技術熱衷者。

60. 盡量多讀一些經濟雜志。它們通常是免費的,只需你填寫一些調查問卷就可以免費獲得。新聞的價值是巨大的。讓他們投遞到你家裡,工作的時候讀雜志的機會趨近於零。

61. 保障安全。開發人員不應該有線上環境的權限,應該做代碼復核。這是和運維之間的職責分離。運維團隊中應該有人控制其他運維人員權限的權限。制定員工手冊,告知違反安全條例所帶來的嚴重後果。從開始就要從物理的、邏輯的、功能的各個方面來保護客戶的數據安全和隱私。萬一有客戶要和你對峙起來,你發現起來發現自己只是靠勇氣和勤奮來保護客戶數據,那你就傻了。

62. 控制好訪問入口。首先要保證大家可以正常完成工作;其次要確保你知道他們是從哪裡登錄的。啟用雙因素身份驗證方法。

63)對於人們訪問生產環境必經之路的壁壘和網關宿主,擊鍵記錄很重要。對於 Windows 可能稍微有點難度,不過有些網關可以提供自動截屏功能。

64. 如果有狀況的情況下,確保有冗余登錄點連線到生產環境。不要期望公司的 VPN 在網絡中斷的時候還能連上生產環境。直接把 VPN 架設在線上環境裡。

65. 使用 LDAP 認證,哪怕你只有 10 台機器,通過復制 passwd 和 shadow 文件的方式來管理,你也需要 LDAP 認證。

66. 不要低估在 UNIX 環境中一台 Windows Server 2003(2008)設備的作用。如果只是因為不懂 Windows,那麼去學,而不是排斥它。

67. 不要在無效的無線方案上浪費大家的時間。人們都機動的,他們希望在沙發上,會議室裡,門口,到處都要上網。一定要保證無線ad的可靠。

68. 總有人把額外的精力和時間都投入到工作上——直接通過他們的請假單好了。而另一些人恰恰相反只把注意力放在怎麼通過自己的請假單。在個人時間安排上,運維人員總是做出巨大的犧牲,他們隨時准備凌晨3點爬起床快速響應排障需求。

69. 通過集中式的關系數據庫管理你所有的產品成果。然後通過數據復制分發到資產,人員,網絡,合同等所有數據到異地。沒錯,要的是一個在線的實時可用的復制,而不是每天晚上備份到磁帶。

70. 盡可使用自動化流程以確保安全,包括操作系統或者產品的上線,文件的分發,日志的分析等。

71. 自動化操作通過運維數據庫獲得配置(真理來源)。

72. 服務器通常有三種狀態——離線,在線,產品態。在線就是說正在通過 cfengine、rsync 或者其他你在使用的工具完成配置。產品態表示已經走流量了。同時還需要一個狀態,這個狀態下的設備可以在不提供生產服務的情況下收集或者測試數據。

73. 注重日志數據。在設備下線或者重建之前,一定要先導出日志。

74. 如果規模發展太快以至於沒有太多時間來做優化,那就盡力鎖定一切——流程還能進行即可,就不要改變它,直到後來有了絕對必要的理由。總之,鎖定默認值,等待成長到必要時再審視。

75. 你永遠無法避免運維工程師在你基礎設施最關鍵的地方犯錯——比如在哪台機器上不小心執行 rm -rf / 命令。

76. 為團隊保持好玩和有趣的氣氛——如果他們不再享受他們的工作,他們就會找別的事情來消遣。要讓團隊有主人翁意識,運維不是哪個經理的個人任務。

77. 提供 99.999% 可用性的真正價值在於讓我們有能力保持靈活。這意味著當你需要的時候可以充分利用冗余。這會讓物理變更、設備登入點變化、代碼修改和回退等等都游刃有余。這個對於公司本身價值巨大,甚至比對客戶還大。

78. 如果你能做到 99.999%,給客戶100% 的服務承諾。

79. 不要丟掉按流程發布軟件的能力。應該丟掉的是你自己回滾或者轉移到舊版本代碼的能力。壓根就不應該“處理”這種徒勞的失敗轉移。當事情變得不 如人意的時候,你更應該做的是找個大玩意兒來擋住你的肥屁股。CYA = 保持敏捷 = 成功的公司。

80. 在腦子裡要清楚知道為什麼以及這樣做的為了達到的目的,為客戶構建產品每一個具體步驟。不管你部署給最終用戶的是什麼,把這些放在最先考慮,即你所有(基礎設施、流程和人員)的設計都是為了提供最好的服務和產品。

81. 第一次就要做對了。很少有機會讓你回去在做一遍的。重做是對公司資源的巨大浪費。要提高命中率,一次就要成功。

82. 接觸業內人士、盟友和類似的企業,看看他們的運維是怎麼做的。很可能他們碰到了跟你一樣的挑戰,而解決的方法更好。不要害怕分享自己的經驗和處理過程,因為別人也會回饋的。他山之石,可以攻玉!

83. 招人要招那些好到可以讓你擔心位子不保的那樣的人,招你欣賞和可以學習的榜樣,招那些你願意和他一起工作的。這感覺甚至超過你招聘一個工作考評為A的員工。

84. IT 和運維是完全不同的兩個概念。一個不錯的運維經理應該可以管理好企業IT,但是一個傳統的 IT工程師很難有能力處理互聯網運維任務。

85. 當你開始一份新工作或者在每年的起始,都應該去爭取預算。這不是說推車那老破車往前走,而應該是基 於歷史數據做出最佳推薦方案。如果你正在評估一份新工作,請確認你完完全全的知道預算以及預算的來源。同時,還應該有完善這份預算的權利。
Copyright © Linux教程網 All Rights Reserved