自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

大數(shù)據(jù)干貨分享:大數(shù)據(jù)集群的自動化運維實現(xiàn)思路

大數(shù)據(jù) 自動化
本文將從大數(shù)據(jù)集群面臨的挑戰(zhàn)、自動化運維系統(tǒng)的設(shè)計原則、工具選擇等方面闡述大數(shù)據(jù)集群的自動化運維實現(xiàn)思路。

摘 要

IT公司的數(shù)據(jù)平臺是支撐大規(guī)模數(shù)據(jù)處理、數(shù)據(jù)決策支持的重要基礎(chǔ)設(shè)施,隨著大數(shù)據(jù)及人工智能技術(shù)的發(fā)展,大數(shù)據(jù)集群規(guī)模變得越來越大。然而,如何快速、高效的管理好成千上萬臺的大數(shù)據(jù)集群成為了很多大數(shù)據(jù)工程師的奮斗目標,設(shè)計實現(xiàn)合理的自動化運維系統(tǒng)將使大數(shù)據(jù)集群的管理事半功倍。

本文將從大數(shù)據(jù)集群面臨的挑戰(zhàn)、自動化運維系統(tǒng)的設(shè)計原則、工具選擇等方面闡述大數(shù)據(jù)集群的自動化運維實現(xiàn)思路。

大數(shù)據(jù)集群面臨的挑戰(zhàn)

Hadoop生態(tài)系統(tǒng)組件: 

大數(shù)據(jù)干貨分享:大數(shù)據(jù)集群的自動化運維實現(xiàn)思路

1、服務(wù)器規(guī)模大

由于海量數(shù)據(jù)的存儲需求,大數(shù)據(jù)集群通常服務(wù)器規(guī)模比較大,例如,阿里巴巴云梯Hadoop集群、騰訊TDW系統(tǒng)單個集群均超過5000臺的服務(wù)器,幾百臺至上千臺服務(wù)器規(guī)模的集群非常普遍,集群規(guī)模的增長對故障響應、跨機房容災等方面提出了更高的需求。

2、組件之間的依賴關(guān)系復雜

大數(shù)據(jù)集群通常需要部署多個框架,Hadoop生態(tài)系統(tǒng)包含了分布式存儲、分布式就算、NoSQL系統(tǒng)、實時計算、流式計算、數(shù)據(jù)倉庫等各個組件,以Hadoop本身為例,YARN及Hbase依賴HDFS系統(tǒng),而HDFS系統(tǒng)又包括Namenode、SecondaryNamenode、Datanode等不同的角色,各個角色之間的啟動也有依賴順序關(guān)系。

3、 橫向/縱向擴展需求多

從橫向擴展來看,大數(shù)據(jù)集群通常需要隨著數(shù)據(jù)量的增長而進行集群的擴容,從縱向擴展來看,每個公司的不同產(chǎn)品、不同業(yè)務(wù)線需要部署多個不同的集群。

4、故障處理頻繁

由于集群規(guī)模大,服務(wù)器多,大數(shù)據(jù)集群的硬件故障、系統(tǒng)故障等問題發(fā)生頻繁,以我曾經(jīng)負責的大數(shù)據(jù)集群來看,總計三千臺服務(wù)器,超過6萬塊硬盤,每周更換的損壞磁盤在40塊左右,這種故障頻率對傳統(tǒng)的故障處理流程帶來了挑戰(zhàn),亟須建立自動化的故障處理方式來簡化工作量。

為什么大數(shù)據(jù)平臺更適合自動化運維?

1、軟件體系高度標準化

目前,IT公司的的大數(shù)據(jù)平臺普遍采用Hadoop生態(tài)系統(tǒng)各個組件,開源產(chǎn)品的工具設(shè)計更注重通用性、標準化等方面的要求,因此,在軟件的自動構(gòu)建(普遍采用Maven工具)、API、測試用例(普遍實現(xiàn)了單元測試)、指標監(jiān)控(http接口)等均具比各類自研系統(tǒng)更加規(guī)范。

2、服務(wù)器配置高度收斂

盡管大數(shù)據(jù)集群的規(guī)模大,但是集群在達到一定規(guī)模后,服務(wù)器的配置趨向于收斂特性,即大量的服務(wù)器的硬件、系統(tǒng)、部署的軟件均是一致的,這就為自動化運維系統(tǒng)的設(shè)計帶來了巨大優(yōu)勢。

自動化運維系統(tǒng)設(shè)計原則

1、標準化

自動化前提是標準化,在實現(xiàn)系統(tǒng)自動化之前,應該對操作流程進行一次完善的標準化

2、高可用

大數(shù)據(jù)系統(tǒng)往往都是高可用的系統(tǒng),為了提升整個系統(tǒng)的穩(wěn)定性和可用性,自動化運維系統(tǒng)也需要設(shè)計成高可用,避免因為自動化運維系統(tǒng)的故障導致大數(shù)據(jù)平臺出現(xiàn)無法服務(wù)的情況。

3、冪等性

簡單來說,冪等性指的是一個操作多次執(zhí)行所產(chǎn)生的影響均與一次執(zhí)行的影響相同。在大數(shù)據(jù)系統(tǒng)架構(gòu)中,經(jīng)常存在部分失敗的情況,需要多次運行相同的部署命令,這就需要系統(tǒng)在重復執(zhí)行的情況下,不會出現(xiàn)異常。

4、可回滾

所有自動化操作均需涉及為可回滾,任何一種改變操作,都應該保留相應的數(shù)據(jù)、代碼、日志,并做合理備份,保證在任何一個步驟出現(xiàn)問題的時候,自動化運維系統(tǒng)可以實現(xiàn)回滾至之前的狀態(tài)。

5、高效率

大數(shù)據(jù)系統(tǒng)集群可以達到成千上萬臺服務(wù)器的規(guī)模,一次操作需要在短時間內(nèi)完成所有服務(wù)器的覆蓋,因此自動化系統(tǒng)的運行效率需要提高,一般需設(shè)計可配置的并發(fā)運行數(shù),達到對上線效率的要求。

實現(xiàn)路徑

典型的大數(shù)據(jù)平臺自動化運維系統(tǒng),應該包含OA系統(tǒng)(實現(xiàn)頁面操作、工作流管理)、CMDB(配置管理數(shù)據(jù)庫)、配置管理工具、堡壘機(中控機)、定時任務(wù)系統(tǒng)、持續(xù)集成系統(tǒng)等。

Hadoop自動化運維系統(tǒng)典型架構(gòu): 

大數(shù)據(jù)干貨分享:大數(shù)據(jù)集群的自動化運維實現(xiàn)思路

自動化運維工具選擇

1、Ansible

Ansible是目前github上最受歡迎的開源自動化工具,使用Python語言開發(fā),與Puppet、Slat等工具相比,Ansible無需在被管理的機器安裝agent,而是通過ssh進行管理,Ansible的更加的簡單易用并且功能強大。

2、Puppet

puppet是一種Linux、Unix平臺的集中配置管理系統(tǒng),基于C / S架構(gòu),使用ruby語言,可管理配置文件、用戶、cron任務(wù)、軟件包、系統(tǒng)服務(wù)等。puppet把這些系統(tǒng)實體稱之為資源,puppet的設(shè)計目標是簡化對這些資源的管理以及妥善處理資源間的依賴關(guān)系。

3、SaltStack

SaltStack是一個服務(wù)器基礎(chǔ)架構(gòu)集中化管理平臺,具備配置管理、遠程執(zhí)行、監(jiān)控等功能。SaltStack基于Python語言實現(xiàn),結(jié)合輕量級消息隊列(ZeroMQ)與Python第三方模塊(Pyzmq、PyCrypto、Pyjinjia2、python-msgpack和PyYAML等)構(gòu)建。

通過部署SaltStack環(huán)境,可以在實現(xiàn):在成千上萬臺服務(wù)器上做到批量執(zhí)行命令;根據(jù)不同業(yè)務(wù)特性進行配置集中化管理、分發(fā)文件、采集服務(wù)器數(shù)據(jù)、操作系統(tǒng)基礎(chǔ)及軟件包管理等。

綜上所述,Ansible是目前Devops業(yè)界非?;钴S的工具,在使用和部署上也非常方便(僅需安裝控制端,無需部署agent),在小批量的集群上建議使用Ansible。如果集群規(guī)模較大(超過1000臺)且對運行速度要求更高,可以考慮Salt和Puppet(對Python做二次開發(fā)選用Salt,熟悉Ruby則可選擇Puppet)。

 

責任編輯:未麗燕 來源: 今日頭條
相關(guān)推薦

2024-06-11 10:41:14

2017-01-17 16:12:26

數(shù)據(jù)中心運維技術(shù)故障

2017-12-07 15:36:48

數(shù)字化大數(shù)據(jù)數(shù)據(jù)治理

2017-01-17 16:02:29

運維技術(shù)數(shù)據(jù)

2012-10-22 14:54:48

2014-08-04 10:10:35

IT運維自動化運維

2024-08-15 17:25:04

2013-05-06 15:10:18

IT運維管理大數(shù)據(jù)

2015-11-26 17:49:05

商務(wù)大數(shù)據(jù)工業(yè)

2022-06-09 13:45:18

vivoK8S集群Kubernetes

2022-06-10 13:58:49

大數(shù)據(jù)營銷策略

2018-05-02 11:16:27

數(shù)據(jù)中心

2021-11-19 10:55:03

GitOps運維自動化

2023-10-10 07:43:15

2017-10-13 13:14:35

互聯(lián)網(wǎng)

2013-12-25 13:49:00

2013年度IT博客大IT博客大賽博客

2018-06-23 07:31:05

2019-10-28 15:14:53

Python腳本語言Java

2016-11-09 15:23:44

2015-12-10 10:14:10

運維自動化DevOps
點贊
收藏

51CTO技術(shù)棧公眾號