OpenStack Sahara (1)
OpenStack中的Sahara專案是為了提供OpenStack平台快速布建hadoop服務,
為了瞭解Sahara, 我們要先了解hadoop是甚麼,
以hadoop 2.0為例, hadoop提供的運算平台有以下三種特色:
但對於IaaS架構而言, 利用VM提供hadoop架構有以下好處:
同時, 在其他公有雲平台, 如Amazon和Azure都有提供相對應的服務,
提供使用者一個快速布建與測試hadoop cluster的服務,
以簡化的架構來說, Sahara透過rest api控制,
由glance提供預先裝載hadoop服務的image在nova上開啟虛擬機,
透過預先撰寫的script, 就可以自動建立一組hadoop cluster,
這樣的過程並沒有太困難, 參考之前hadoop的安裝流程,
為了瞭解Sahara, 我們要先了解hadoop是甚麼,
以hadoop 2.0為例, hadoop提供的運算平台有以下三種特色:
- 以資料為基礎的計算架構, 也就是MapReduce
- 資料備份與提取機制, HDFS, 用以處理雲端節點故障的錯誤
- 在YARN(hadoop 2.0)中, 則加入了運算資源調度的功能
但對於IaaS架構而言, 利用VM提供hadoop架構有以下好處:
- 通常一個hadoop cluster只會提供一種特殊應用,
在有多個cluster下, VM可以減低管理cluster的麻煩 - 對於早期布署與小規模應用, IaaS提供一個友善的環境發展演算法與scaling機制
同時, 在其他公有雲平台, 如Amazon和Azure都有提供相對應的服務,
提供使用者一個快速布建與測試hadoop cluster的服務,
以簡化的架構來說, Sahara透過rest api控制,
由glance提供預先裝載hadoop服務的image在nova上開啟虛擬機,
透過預先撰寫的script, 就可以自動建立一組hadoop cluster,
這樣的過程並沒有太困難, 參考之前hadoop的安裝流程,
對於一個預載完hadoop程式的虛擬機而言,
只需要設定網路, slave名單, 頂多加上hostname就可以了,
因此, 對於OpenStack Sahara來說, 最大的困難應該在於:
如何讓hadoop這個對實體機設計的雲端運算平台,
能夠適應虛擬機的環境, 甚至能有更佳的效能?
這也是這一系列文章之後會去探討的目標.
預計寫3-4篇文章記錄自己看到的文件, 包括:
OpenStack Sahara的資料流程, Elastic Data Processing (EDP), OpenStack的特殊修改, 等,
若有餘力, 則會去讀虛擬機的script, 確定Sahara目前能夠處理的範圍與限制.
留言
張貼留言