什麼是大數據運維工程師java
做者:尹正傑linux
版權聲明:原創做品,謝絕轉載!不然將追究法律責任。數據庫
業內有這麼一句話說:雲計算可能改變了整個傳統IT產業的基礎架構,而大數據處理,尤爲像Hadoop組件這樣的技術出現,將是改變IT業務模式的一種技術。另外,不少小夥伴可能還搞不明白雲和Hadoop有什麼關係,事實上這是兩種大相徑庭的技術。今天咱們就來聊一聊大數據運維工程師。安全
一.Linux發展與學習線路 網絡
二.大數據運維的工做職責架構
一.集羣管理 大數據須要分佈式系統,也就是集羣:Hadoop,Hbase,Spark,Kafka,Redis等大數據生態圈組建。 二.故障處理 1>.商用硬件使用故障是常態。 2>.區分故障等級,優先處理影響實時性業務的故障。 三.變動管理 1>.以可控的方式,高效的完成變動工做; 2>.包括配置管理和發佈管理; 四.容量管理 1>.存儲空間,容許連接數等都是容量概念; 2>.在多租戶環境下,容量管理尤爲重要; 五.性能調優 1>.不一樣組建的性能概念不同,如kafka注重吞吐量,Hbase注重實用性可用性; 2>.須要對組建有深入的理解 六.架構優化 1>.優化大數據平臺架構,支持平臺能力和產品的不斷迭代; 2>.相似架構師的工做;
三.大數據運維所需的能力負載均衡
一.DevOps DevOps(英文Development和Operations的組合)是一組過程,方法和系統的統稱,用於促進開發(應用程序/軟件工程),技術運營和質量保障(QA)部門之間的溝通,寫做與整合。 二.硬件,OS,網絡,安全的基礎知識 大數據平臺和組建設計範圍廣,各類都須要懂一點,這些知識出問題的時候不可能問人,由於別人也有本身的工做要作。 三.腳本語言能力 Shell,SQL(DDL),Python.Java(加分) 四.大數據各個組件知識 設計思想。使用範圍,底層架構,經常使用命令,經常使用配置或參數,常見問題處理方法。 五.工具能力 Zabbix,Open Falcon,Ganglia,ELK等,企業自研工具。我推薦使用集羣自帶的工具。 六.Trouble shooting能力 搜索能力(搜索引擎,stackoverflow等),java能力(異常堆棧要看得懂,最好能看懂源碼),英文閱讀能力。 七.意識,流程 良好的意識,什麼能作什麼不能作。同用的流程如ITIL,各企業也有本身的流程。
四.大數據運維的主要工做運維
一.運維三板斧 三板斧能夠解決90%以上的故障處理工做。 1>.重啓 重啓有問題的機器或常常,使其正常工做。 2>.切換 主備切換或主主切換,連接正常工做的節點。 3>.查殺 查殺有問題的進程,連接等。 4>.三板斧的問題 第一:只能處理故障處理問題,不能解決性能調優,架構優化等問題; 第二:只能治標,不能治本; 5>..大數據運維和傳統運維的不一樣 第一:傳統運維面對的底層軟硬件基本穩固,大數據運維面對的是商用硬件和複雜linux版本; 第二:傳統運維面對的是單機架構爲主,大數據運維面對複雜的分佈式架構; 第三:傳統運維大多維護閉源商業版系統,大數據運維一般面對開源系統,文檔手冊匱乏,對閱讀源碼要求高。 第四:大數據運維對自動化工具的依賴大大增長; 二.Iaas層(基礎設置及服務)運維工做 通常中大型企業有本身的基礎設施維護團隊,這部分工做不會交給大數據運維來作。小公司可能須要大數據運維鍵值這部分工做,主要關注三個方面: 1>.硬件 大數據系統大多使用廉價PC Server或虛擬機,硬件故障是常態,經過告警,日誌,維護命令等識別故障,並支持硬件更換。 2>.存儲 大多使用PC Server掛本磁盤的存儲方式,極少狀況會使用SAN(存儲區域網絡)或NAS(網絡附屬存儲),熟悉分區,格式化,巡檢等基本操做。 3>.網絡 網絡的配置變動更須要比較專業的知識,若有須要可學習CCNA,CCNP等認證課程,但網絡硬件和配置出問題機率很低,主要關注丟包,延時。 三.HDFS運維工做 1>.容量管理 第一:HDFS空間我使用超過80%要警戒,若是是多租戶環境,租戶的配額空間也能用完; 第二:熟悉hdfs,fsck,distcp等經常使用命令,會使用DataNode均衡器; 2>.進程管理 第一:NameNode的進程是重點 第二:熟悉dfsadmin等Ingles。怎麼作NameNode高可用。 3>.故障管理 Hadoop最多見的故障就是硬盤損壞。 4>.配置管理 hdfs-site.xml中的參數設置。 四.MapReduce運維工做 1>.進程管理 第一:jobtracker進程故障機率比較低,有問題能夠經過重啓解決; 第二:瞭解一下HA的作法; 2>.配置管理 mapred-site.xml中的參數設置。 五.Yarn運維工做 1>.故障管理 主要是當任務異常這停止時看日誌排查,通茶故障緣由會集中在資源問題,權限問題中的一種。 2>.進程管理 ResourceManager主要是學會配置HA NodeManager進程掛掉不重要,重啓便可。 3>.配置管理 yarn-site.xml中的參數設置,主要分三塊配置,scheduler的,ResourceManager的,NodeManager的。 六.Hive/Impala運維工做 1>.SQL問題排查 第一:結果不對,主要緣由多是SQL錯誤,數據不存在,UDF錯誤等,須要靠經驗排查 第二:慢SQL,這類問題開發常常會找運維排查,有多是劣勢SQL,數據量大,也有多是集羣資源緊張; 2>.元數據管理 Hive和Impala公用的元數據,存在關係型數據庫中。 七.其它組件 根據組件用途,特性,關注點的不用,運維工做也各不相同,如: 1>.HBase關注讀寫性能,服務的可用性 2>.Kafka關注吞吐量,負載均衡,消息不丟機制 3>.Flume關注屯度量,故障後的快速恢復
五.大數據運維技能概覽tcp
六.大數據運維職業素養分佈式
1>.人品 2>.嚴謹 3>.細心 4>.心態 5>.熟悉操做系統 6>.熟悉業務(開發) 7>.熟悉行業 8>.喜歡大數據生態圈