《解決現代大數據服務部署的最佳方案: Mesosphere DC/OS》要點:
本文介紹了解決現代大數據服務部署的最佳方案: Mesosphere DC/OS,希望對您有用。如果有疑問,可以聯系我們。
首先,運維人員在安裝像Kafka或者Cassandra這類的數據服務時,需要掌握一些特殊的知識;即使對于大牛和專家來說,部署這類數據服務也是非常耗時間的.舉個例子,最早的時候,AirBnB的運維人員用了差不多幾個月的時間才部署Kafka成功.其間碰到了無數的問題,踩了無數的坑.還有一點就是,有一些沒有架構好的數據服務,可能只有少數大牛知道如何正確的維護這些系統,可能你都找不到填坑的方法.
在過去的5到10年間,涌現出了很多數據存儲和分析引擎.它們之中很多都是開源的.因為維護和部署這些系統相當復雜,工程師和數據專家沒法很方便地去嘗試這些新的數據技術和框架.這也是為什么簡化部署數據服務能夠大大提高開發者效率的原因.
存儲和分析引擎的井噴
運維數據服務也是主要的挑戰之一;通常,運維人員需要人工地處理升級,更新,錯誤后回滾,健康監控,存儲管理等工作.這些人工處理的工作都是非常容易出簍子的.企業通常需要化很多人力在運維上,間接導致了在其他創新領域上投入的減少.
通常運維人員需要不斷的更新軟件使得開發人員能夠用上新的特性,修復重要的問題.同時,新的版本也通常可以降低運維的開銷.軟件更新通常是一個非常耗時的工作.運維人員要么人工進行更新,或者需要編寫一些腳本來進行自動化更新.同時,運維人員還需要保證在上生產環境之前,更新和回滾都在測試環境下被完整的測試過.
還有一個很大的挑戰是保證數據服務能有一個很好的資源利用率.數據中心一般的平均利用率在6%到12%之間.這個數字在2006年到2012年之間基本沒有什么變化.究其主要原因,是大部分公司都希望能夠保證在流量頂峰時候服務的質量.
傳統的靜態分割,非常的低效
通過虛擬機來增加資源利用率的方法在分布式系統里面并不適用.運維人員通常創建單獨的Spark, Kafka, Cassandra等集群.這樣做的原因是因為這些系統是分布式系統,它們有著自己彈性伸縮邏輯,所以運維人員會在不同的集群里面運行這些系統,從而來保證沒有資源上的沖突.
舉個例子來說,Spark會希望拿到盡可能多的資源來完成一個任務.Kafka可能需要能夠支持高吞吐量的磁盤資源.Cassandra則需要穩定的磁盤資源來存儲數據.顯而易見,在單獨集群部署這些服務的后果就是資源的嚴重浪費.如果在集群層面上使得這些服務能夠共享資源,這樣就可以很好的提高資源利用率.
公有云是出路么?
很多公司正在往公有云(或者混合云)遷移數據服務.往公有云遷移主要有以下兩個原因:
在最近的一次調查中,只有不到三分之一的公司在私有云中部署數據流水線,其他的公司都在公有云中部署. 雖然公有云在數據服務上有著明顯的優勢,缺點也非常明顯.主要缺點是可能會被公有云提供商綁架.針對公有云服務開發的應用通常會和公有云提供的API綁定.當應用開發完成后,想要遷移基本沒有可能.
最近有個很好的例子:Snapchat上市前,在它們的公開招股書中提到了一些數據.從中不難發現,Snapchat其實已經被Google公有云綁架了.
在去年5億美金的虧損中,有80%是因為其在Google公有云上的花銷.在招股書中,Snapchat宣稱它們的應用非常針對Google公有云的服務,沒有其他公有云提供商可以提供備選.這樣導致的結果就是,除非Snapchat花很大的力氣去重新構建它們的應用,否則它們永遠地和Google公有云綁定了.
還有很多其他公司在盲目地往公有云里面跳,導致的被綁定的風險大大的提高.你可能會問,有沒有公有云之外的選擇呢?
Mesosphere DC/OS:
簡化數據服務的部署和運維
Mesosphere致力于簡化現代化彈性分布式軟件的開發. Mesosphere DC/OS是市面上唯一一個在生產環境中被驗證的能夠同時運行容器和數據服務的平臺. DC/OS 能夠提高很多數據服務的部署速度,并簡化它們的運維.這些數據服務包括數據庫,消息隊列,大數據分析引擎等等.
DC/OS的核心是Apache Mesos?,一個分布式系統內核. 它擁有一個兩層資源調度機制,使得分布式系統之間能夠更好的分享集群資源.正因為有了兩層調度機制,使得DC/OS能夠在和其他容器編排系統(Kubernetes,Docker Swarm)的對比中脫穎而出.它簡化了數據服務的部署和運維,并且大幅度提高了資源利用率.
Mesosphere DC/OS:
部署數據服務最理想的平臺
文章來自微信公眾號:云計算開源產業聯盟