掌握財富密碼,運維需要了解這些技術

Linksla發表於2022-08-08

環境部署

一開始世界是開發的,然後才是運維的。

開發實現產品邏輯,將產品開發完成後,然後提交運維進行部署。此時允許就需要準備好部署環境,如部署在Linux伺服器上,安裝相應的軟體,如Apache、Nginx、tomcat、JDK、PHP、MySQL等等。

除了軟體,還需要看看具體是哪個版本,java 7 和java 8 的差別還是有點的,php5和php7也有些語法不相容。把軟體都安裝好了,就可以上線了?還是不行。還需要測試吧,那就還需要部署一套測試環境。有些時候,開發環境也是需要運維來部署的。


事情從來都不是一帆風順的。

上線沒多久,服務就502了,老闆要瘋狂輸出。儘管你有一肚子小委屈,我只是個運維,程式碼不是我寫的,為什麼要我來背這鍋?!委屈歸委屈,服務訪問不了了,就是運維的事。儘快定位問題,解決問題才是王道。怎麼來定位問題呢?最簡單直接的辦法就是看日誌,看系統日誌,看軟體相關的日誌,結合故障現象和經驗,快速地進行定位和恢復。然後就是總結經驗,吸取教訓,寫事故報告。OK,現在你知道,需要對系統環境需要進行一定的調優操作,不再做背鍋俠。

相關技術:  top, vmstat, iftop, awk, sed, sar, iostat, strace, ...


做最好的計劃,做最壞的打算。

前不久的gitlab刪庫事件的教訓猶在眼前,丟失了幾小時的資料,雖然大部分的備份策略都失效了,但還是挽救了幾小時前的一個備份,才沒有造成更大的資料丟失和公司損失。我們需要對裝置進行備份冗餘,需要對資料庫進行備份及離線備份,需要對網站靜態進行備份冗餘,需要對機房進行備用,能做到雙活,那是更好的啦。

相關技術:  rsync, crontab, lvm快照, mysqldump, extrabackup, 完全備份, 差異備份, 增量備份, 離線異地備份, ...


沒有永垂不朽,我們不能保證硬體24小時線上,但需要保障服務24小時線上。

出現故障後,如果做好高可用和冗餘,故障自動切換,移除故障節點,那樣也就保障了服務的實時線上。在老闆和使用者不知情的情況下,悄麼的把故障處理好的,KPI算是保住了,獎金也許就會有的吧。

相關技術:  F5, Nginx, LVS, HA-proxy, MHA, Zookeeper, 各種其他分散式叢集方案, ...


運維工程師的第一次解放運動。

時刻擔心網站掛掉,一年365天、每週7天、每天24小時,時刻保持精神高度緊張,就算你是神仙都會撐不住的。我們需要一個機器來監督其他的機器工作,我們需要解放我們自己。當有故障發生的時候,透過簡訊、微信、釘釘、郵件等等通知對應的運維工程師來處理,甚至是自動切換或摘除故障節點,然後我們離線對故障節點進行問題排查。

相關技術: Zabbix, Nagios, Cacti, Prometheus, open-falcon, Ganglia, sar, ...


安全和審計

狂奔在網際網路的高速大道,不過有些人是在裸奔。

不安全的網路環境和伺服器配置,無異於在網路世界裸奔,任何人都可以窺探你的隱私。你的應用是否做了SQL防注入?你的防火牆是否開啟?是否還在用root+密碼的方式登入伺服器?網站開啟了https麼?是否對系統操作進行審計?

相關技術:   iptables, firewalld, waf, auditd, 各服務的正確配置, ...


運維工程師的第二次解放運動。

偷懶是社會進步的第一動力。聰明的我們怎麼會讓自己一直在重複枯燥的事情上浪費時間,裝系統、部署環境、發版本、批次操作,把這一切交給程式去實現吧,我們需要的是享受生活。

相關技術:  shell, python, go, rundeck, ansible, saltstack, puppet, chef, cobbler, fabric, ...

虛擬化和雲服務正在發生的一場運維革命。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70013542/viewspace-2909415/,如需轉載,請註明出處,否則將追究法律責任。

相關文章