VMware在DockerCon EU宣布開源“Photon Controller”基礎設施控制器
在2015年 DockerCon EU 中,VMware通過企業的 Github賬號 開源了他們的 Photon Controller 產品。Photon Controller是 VMware中Photon platform 的一個組件。它為了優化“容器與云”工作負載,作為一個基礎結構堆棧被設計出來。這個虛擬化平臺通過許多框架,例如 Kubernetes 、 Docker Swarm 或 Mesos ,提供了API優先的用戶體驗、可擴展的控制平面和原生容器支持。
VMware blog 聲明,Photon platform是一個新型基礎結構堆棧,為了優化“原生云應用”,它基于VMware ESXi 管理程序,但是“它更傾向于在規模和速度上超過 vSphere 提供的豐富的管理功能”。此平臺由Photon Machine,一個輕量級的、基于 ESX 的、有內置 Photon OS 的“microvisor”,和Photon Controller,一個分布式的、API驅動的、多租戶的、包括 Project Lightwave 容器安全性項目的控制平面組成,并且為“極高的規模與改動”而設計。
Photon platform在八月份的VMworld中被發布,并承諾了“將Photon Controller開源,讓開發者、客戶和伙伴直接參與進來”。Photon Controller網站聲明這個項目交付了:
- 一個API優先的模型:一種用戶體驗,利用RESTful API、SDK和CLI工具的,專注于基礎結構消費與操作的自動化;
- 一個快速、可擴展的控制平面:一種新的用于優化規模和速度的基礎結構控制平面,允許每分鐘創建1000個新的VM隔離的工作負載,并且支持總數100000個的同時發生的工作負載;
- 原生容器支持:Photon Controller為了“用來運行為原生云(分布式的)app而設計的工作負載的大型環境”而建立,開發團隊可以用各種各樣的容器編排框架,例如 Kubernetes、Docker Swarm、Pivotal CF/Lattice和Mesos來部署基于容器的應用。
Photon Controller架構由若干低耦合的部件或是由“分布式協作”管理的服務組成。端點在 Apache Zookeeper 注冊,服務可能作為“橫向擴展”(主動/主動)操作,使用備用服務器(主動/被動),或有明顯分區的工作(例如計劃程序)。Photon Controller的技術架構如下圖:
圖1. Photon Controller的技術架構
Photon Controller的外部API以 REST (基于HTTP的JSON)接口提供,用基于Java的 Dropwizard 框架實現。這些外部REST API是為了被水平擴展的、共享一個持久數據庫(“CloudStore”)的API服務器顯示而設計的。其中的持久數據庫充當了一個容器狀態、簇、VM、磁盤、網絡和物理宿主的單一事實來源。面對API服務器,負載平衡器(例如 haproxy )將典型地被取代。
Photon Controller的大多數管理平面是用java實現的,其中有一些服務是在VMware的 Xenon框架 上實現的。這個框架是一個“分散的系統開發框架”,現在只能作為技術預覽得到。ESX代理用Python實現,Photon Controller CLI,作為完備產品的集成測試,用Ruby實現。
每個由Photon Controller控制的物理宿主都有一個代理在其之上運行,提供用 Apache Thrift 實現的RPC接口,被其他所有部件用于與宿主交流。有很多特殊的部件用于監督其他部件的運行狀況和開支管理。例如,“Chairman”負責計劃程序的運行狀況和樹狀拓撲結構。
VMware網站聲明Photon Controller還實現了一種新奇的分布式計劃程序:
它是計劃程序服務節點的層次結構,其中樹中的每個節點只能訪問它的直接子節點。其中由父節點決定的負載/使用上的重要統計(stats)在計劃程序中不斷涌現,父節點沿計劃程序樹向下發送請求來解決配置需求。這樣的話計劃程序就避免了單一權值/配置數據庫上的重負載。
有關Photon Platform和 Photon Controller 的更多信息可以在項目網站上找到,開源的代碼可以在 VMware的Github庫 中查看。開發者們可以使用項目的“ Devbox ”下載并運行一個小型的、單機的、測試用Photon Controller部署。有關項目的問題可以在 Photon Controller Google Group 中提問,也可以通過在 Stack Overflow 使用“photon-controller”標簽提問。
查看英文原文: VMware Open Source 'Photon Controller' Infrastructure Control Plane at DockerCon EU