使用Ambari搭建大數據平台

PYTHONPYTHON

圖 19. Sample Service 的目錄結構

使用Ambari搭建大數據平臺

Python 腳本的示例代碼:

Master.py:

import sys, os
from resource_management import *
from resource_management.core.exceptions import ComponentIsNotRunning
from resource_management.core.environment import Environment
from resource_management.core.logger import Logger

class Master(Script):
def install(self, env):
print "Install My Master"

def configure(self, env):
print "Configure My Master"

def start(self, env):
print "Start My Master"

def stop(self, env):
print "Stop My Master"

def status(self, env):
print "Status..."

if __name__ == "__main__":
Master().execute()

Slave.py:

import sys, os
from resource_management import *
from resource_management.core.exceptions import ComponentIsNotRunning
from resource_management.core.environment import Environment
from resource_management.core.logger import Logger

class Slave(Script):
def install(self, env):
print "Install My Slave"

def configure(self, env):
print "Configure My Slave"

def start(self, env):
print "Start My Slave"


def stop(self, env):
print "Stop My Slave"
def status(self, env):
print "Status..."

if __name__ == "__main__":
Slave().execute()

第四步,需要重啟 Ambari Server。因為 Ambari Server 只有在重啟的時候才會讀取 Service 和 Stack 的配置。命令行執行:

1

ambari-server restart

第五步,登錄 Ambari 的 GUI,點擊左下角的 Action,選擇 Add Service。如下圖:

圖 20. Add Service 按鈕

使用Ambari搭建大數據平臺

這時候就可以看到我們自定義的 Service:SAMPLE。如下圖:

圖 21. Sample Service 列表

使用Ambari搭建大數據平臺

選擇左側 My Sample 後,就可以一路 Next 了,這個過程其實和我們在搭建 Hadoop2.x 集群的時候是類似的。由於這個 Service 沒有真的安裝包,所以安裝過程會非常的快,啟動命令也沒有真正的邏輯,所以啟動過程也是很快的。等最後點擊完 Complete,整個安裝過程也就結束了。再回到 Ambari 的 Dashboard 的時候,我們就可以看到這個 My Sample 了,如下圖:

圖 22. My Sample 的 Service 頁面

使用Ambari搭建大數據平臺

到此就可以和第四節中管理 Hadoop 集群一樣管理我們的 My Sample。例如下圖,Stop 我們的 My Sample。

圖 23. Stop Sample 頁面 1

使用Ambari搭建大數據平臺

圖 24. Stop Sample 頁面 2

使用Ambari搭建大數據平臺

圖 25. Stop Sample 頁面 3

使用Ambari搭建大數據平臺

進階的篇幅中,將會探討如何給我們的 My Sample 自定義一些 Actions,以及 Action 之間的依賴關係如何定義。篇幅有限,這裡就先到此為止。希望以上的介紹能夠燃起大家對 Ambari 的熱情。

總結

大數據與雲計算可謂是如今數據中心中最火的兩項技術領域,幾乎所有的 IT 服務商都想在這兩項技術中有所建樹。相信 Ambari 可以幫助一些 Hadoop 的初學者。長遠看來,大數據的發展離不開雲計算,雲計算中 IaaS 可謂已經很成熟,並且價格低廉。這時候許多公司將目光聚集在了 PaaS。大數據的流行更是加速了相關 PaaS 產品的發展,而 Ambari 的出現必然可以拉近 IaaS 和 PaaS 的距離。也就是說有了 Ambari,或許再加上 Docker,那麼快速從 IaaS 演進到 PaaS 就顯得不是那麼困難了。

當然這裡 Ambari 要跟 IaaS 更好的切合,還有個對手那就是 Sahara。它是另一個土生土長的 OpenStack 的子項目,其目的也是為了在 Openstack 上面快速搭建 Hadoop 等集群。期望著這些項目能夠快速成長,將來對大家都有所幫助。

相關主題

  • Apache Ambari:官方的介紹文檔。
  • developerWorks 開源技術主題:查找豐富的操作信息、工具和項目更新,幫助您掌握開源技術並將其用於 IBM 產品。

原文地址:https://www.ibm.com/developerworks/cn/opensource/os-cn-bigdata-ambari/


分享到:


相關文章: