1. 程式人生 > >運維——運維的認識

運維——運維的認識

先說說的對運維的認識吧。一開始聽到運維是老師在課堂上提了一下,說雙十一買家瘋買賣家賺的盆滿鉢滿的公司裡的運維人員可給愁死了,一點差錯都不能有。在大型活動之前公司就會買入伺服器為了活動因為人多而使伺服器癱瘓,然後活動做完了就開始賣伺服器。之前進一個網頁會出現502,進不去,這是不是就說明伺服器出現了問題。所以我想我對運維很膚淺的認識可能就是運營維護,不讓伺服器崩潰吧。
再深一點的理解那我只好百度一下了。
運維的職責覆蓋了產品從設計到釋出、執行維護、變更升級及至下線的生命週期。
看了一下這幾個階段,之前的認識停留在執行維護,原來運維是一個週期裡面包含很多階段都是必要的。
運維工作的職責及在業務中的位置決定了運維工程師需要具備更加廣博的知識和深入的技術能力:
紮實的計算機基礎知識,包括計算機系統架構,作業系統,網路技術等;
通用應用方面需要了解作業系統、網路、安全,儲存,CDN,DB等,知道其相關原理;
程式設計能力,小到運維工具的開發大到大型運維繫統/平臺的開發都需要有良好的程式設計能力;
資料分析能力:能夠整理、分析系統執行的各項資料,從中發現問題及找到解決方向;
豐富的系統知識,包括系統工具、典型系統架構、常見的平臺選型等;
綜合利用工具和平臺的能力;
看了這幾點,我覺得我離運維從業人員更遠了一步,哈哈,距離可為是“遙遙無期”啊。
這些能力的要求是我從百度複製貼上過來的,為什麼我沒有選擇去貼上一下比如運維的含義,或者運維技術方向之類一些實質性的東西呢,因 為我是這樣認為的如果真的想了解運維的話,我複製貼上也沒有意思,百度解釋的很清楚,不需要我在做無謂的解釋。主要是這些能力需求我想對我有幫助,運維可不是簡簡單單像我想的那樣,自己的技能也要過關。
運維工程師使用的運維平臺和工具包括:
Web伺服器:apache、tomcat、nginx、lighttpd
監控:nagios、ganglia、cacti、zabbix
自動部署:ansible、sshpt、salt
配置管理:puppet、cfengine
負載均衡:lvs、haproxy、nginx
傳輸工具:scribe、flume
備份工具:rsync、wget
資料庫:mysql、oracle、sqlserver
分散式平臺:hdfs、mapreduce、spark、storm、hive
分散式資料庫:hbase、cassandra、redis、MongoDB
容器:lxc、docker
虛擬化:openstack、xen、kvm
安全:kerberos、selinux、acl、iptables
問題追查:netstat、top、tcpdump、last
廣義上所有開源的軟體都是運維工程師會使用到的平臺和工具,同時也包括運維各個技術方向上自行研發的各類平臺
不過這也算是對運維的認識又進了一步吧。不管以後從不從事這個專業,目前這就是我的學習任務,就算考研,也需要多瞭解一下。