NVIDIA 初创加速计划,免费加速您的创业启动 了解详情
写点什么

VMware 在 DockerCon EU 宣布开源“Photon Controller”基础设施控制器

  • 2015-12-02
  • 本文字数:1757 字

    阅读完需:约 6 分钟

在 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


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群(已满),InfoQ 读者交流群(#2))。

2015-12-02 18:001226
用户头像

发布了 218 篇内容, 共 65.0 次阅读, 收获喜欢 75 次。

关注

评论

发布
暂无评论
发现更多内容

基于 Flink CDC 的现代数据栈实践

Apache Flink

大数据 flink 实时计算

治理告警风暴,告警降噪的一些典型手段

龙渊秦五

告警风暴 告警降噪

Spring Boot 实现接口幂等性的 4 种方案

做梦都在改BUG

Java Spring Boot

揭秘云原生时代企业可观测体系落地实践

嘉为蓝鲸

云原生应用 云原生(Cloud Native) 可观测宇宙

python统计程序耗时 | python小知识

AIWeker

Python python小知识 三周年连更

SpringBoot2.x系列教程——整合使用JPA

会踢球的程序源

Java

Flomesh 软负载 FLB GA 版本发布

Flomesh

负载均衡 云原生 Pipy

大型SRE组织设计与建设落地,且看腾讯蓝鲸如何做?

嘉为蓝鲸

腾讯 运维自动化 蓝鲸

【FAQ】关于华为推送服务因营销消息频次管控导致服务通讯类消息下发失败的解决方案

HMS Core

HMS Core

Oracle 23c 新特性实操体验优质文章汇总

墨天轮

数据库 oracle sql 新版本/特性解读

FastAPI 快速开发 Web API 项目: 连接 MySQL 数据库

宇宙之一粟

Python FastApi 三周年连更

多家大厂CTO鼎力推荐的微服务架构设计模式真的硬核

小小怪下士

Java 程序员 微服务 后端

把脉分布式事务的模型、协议和方案

小小怪下士

Java 分布式 分布式事务 后端

代码质量难评估?一文带你用 SonarQube 分析代码质量!

Java你猿哥

架构师 代码 SSM框架 sonar

从「搭子」文化,看融云如何助力垂类社交应用增长

融云 RongCloud

融云 Z世代 通讯 交友 搭子

不懂就问,Milvus 新上线的资源组功能到底怎么样?

Zilliz

非结构化数据 Milvus Zilliz

阿里全新推出:微服务突击手册,把所有操作都写出来了

Java你猿哥

微服务 微服务架构 Spring Cloud SSM框架

我在 20 年的软件工程师生涯中学到的 20 件事

宇宙之一粟

翻译 软技能

HummerRisk V1.0 :架构升级说明

HummerCloud

开源 云安全 云原生安全

改写同事代码——血压操作集锦第一弹

Java你猿哥

Java IDEA java编程 SSM框架 表单设计

多云转晴:Databend 的天空计算之路

Databend

测试工程师为什么要关注研发效能?

思码逸研发效能

软件工程 研发效能 测试工程师

互联网工程师Java面试题及答案整理(2023速成版,7天就能吃透)

采菊东篱下

java面试

阿里P7了!全靠死磕这份阿里全彩版"并发编程笔记",大厂必备!

Java你猿哥

Java 并发编程 架构师 java面试 Java工程师

中船互联与嘉为科技共同打造“IT运维管理”融合解决方案

嘉为蓝鲸

自动化运维 IT 运维 中船集团

字节跳动正式开源分布式训练调度框架 Primus

字节跳动开源

开源 算法 流批一体

3月寒窗!啃透美团保姆级分布式进阶技术手册,4月终入美团定L8

Java你猿哥

Java 分布式 SSM框架 分布式数据 分布式消息

Alibaba最新神作!耗时182天肝出来1015页分布式全栈手册太香了

Java你猿哥

Java 分布式 SSM框架 分布式核心原理解析 分布式开发

Redis删除键命令: 新手用del,老手用unlink,有何区别?

Java你猿哥

Java redis SSM框架 Java工程师 delete

90%的Java开发人员都会犯的5个错误

做梦都在改BUG

Unity 之 月签到累计签到代码实现(ScriptableObject应用 | DoTween入场动画)

陈言必行

Unity 三周年连更

VMware在DockerCon EU宣布开源“Photon Controller”基础设施控制器_DevOps & 平台工程_Daniel Bryant_InfoQ精选文章