MAAS

MAAS Overview

What is MAAS?

MAAS 全名為 Metal As A Service,它提供一些介面及方式,讓使用者可以用類似管理雲端虛擬機器(VM)的彈性方式,來管理實體的伺服器(bare metal),此外如 KVM 等虛擬機器也能被視為Node被管理。在此平台上,所有的機器都能夠快速的被調配及摧毀,如同Amazon AWS、Google GCE、Microsoft Azure提供的服務一樣。

MAAS 可以視為一個獨立的 PXE 服務,或者與其他技術相結合。尤其是,它與 Juju (the service and model management service)之間的工作相容性特別好。

完美的組合:使用 MAAS 管理機器(machines),並使用 Juju 管理在這些機器上運行的服務(services)。

MAAS 相當於是 Juju 的 backend (resource pool) ,換句話說也就是 Juju 的 “cloud provider"。 因此在 Juju 所做的操作也會衍伸影響到 MAAS 的狀態。例如: Juju 端移除了一台機器, MAAS 端也會有一台機器被釋放回pool。


What MAAS offers?

MAAS 能夠創建一個額外的單一資源池(single resource pool),去管理大量的實體機器。參與的機器都可以被自動配置(Debian preseed)和正常使用。當不再需要這些機器時,他們也會被釋放回池中。MAAS提供了一些必要的功能,包括:

  • web UI
  • API/CLI support
  • HA(high availability)
  • IPv6 support
  • open source IP address management (IPAM)
  • Ubuntu, CentOS, or Windows installation support
  • inventory of components
  • DHCP and DNS for other devices on the network
  • VLAN and fabric support

How MAAS works?

MAAS 管理節點(a pool of nodes)的流程,簡單分為幾個階段狀態:

  1. “Enlisting" state: 註冊新系統
  2. “Commissioning" state: 預備被用來開啟service
  3. “Ready" state: 已經準備完成
  4. “Allocated" state: 配置給user
  5. “Deployed" state: 佈署service
  6. “Releasing" state: 使用完畢後,可以釋放資源回到pool

MAAS 是透過如 IPMICisco UCS 這樣的介面來管理實體機器。

  • IPMI: 智慧平台管理介面(Intelligent Platform Management Interface),能夠橫跨不同的作業系統、韌體和硬體平台,可以智慧型的監視、控制和自動回報大量伺服器的運作狀況,以降低伺服器系統成本。
  • Cisco UCS: Cisco整合運算系統(Cisco Unified Computing System),與IPMI概念十分接近。

Key components and colocation of all services

MAAS 中最重要的兩個組件是 region controller 與 rack controller ,透過這兩個控制器才能完整的控制所有的部屬工作。
若要達成HA的話,在系統架構下,就要同時存在許多的region controller 與 rack controller。此外,DHCP的配置也是使服務能成功運作的關鍵。


文章參考資料

  1. MAAS 官方文件
  2. MAAS 運作流程
  3. wiki – IPMI

發表留言