DreamHost 如何通过 OpenStack 重新定义自我

目前还没有读者喜欢这个。
A confusing business organization chart

Opensource.com

DreamHost 成立于 1997 年,DreamHost 是一家经验丰富的互联网企业,拥有超过 40 万满意的客户、150 万个网站和应用程序,以及数十万次 WordPress(占主导地位的开源 CMS)的安装。开源流淌在我们的血液中,自 1997 年以来,开源为我们服务的方方面面提供动力。DreamHost 构建于 Perl、Linux、ApacheMySQL 以及无数其他开源项目的基础之上。在 16 年多的发展历程中,DreamHost 见证了互联网应用和托管的现实发生了巨大的变化。我们的云之旅需要一些历史和背景,让我们深入了解一下。

黑盒云的兴起

大约十年前,亚马逊通过推出广受欢迎的 S3 用于存储和 EC2 用于计算,开创了云基础设施服务市场。随后的几年里,基础设施的消费方式以及更重要的是软件的底层设计和架构发生了翻天覆地的变化。不透明云基础设施服务的兴起也带来了更大的、隐藏的后果。

虽然云计算是革命性的,但它在很大程度上也是一个黑盒。为 Amazon Web Services、Microsoft Azure 和许多其他云平台提供支持的软件和系统对外界是封闭的,这使得用户对其应用程序堆栈中最关键组件的实现一无所知。云计算时代之前代表着开放互联网的兴起——Linux、Apache、MySQL 以及 PHP、Perl、PythonRuby 等语言,开发人员、工程师和 IT 组织对其应用程序所使用的软件具有高度的透明度。在早期云计算时代,大部分透明度消失了。

新的希望

2010 年,两个不太可能的合作伙伴,NASA 和 Rackspace Hosting,创立了 OpenStack 项目,旨在创建用于构建私有云和公共云的开源云软件。自成立以来,OpenStack 项目呈爆炸式增长,旨在实现其作为云计算领域的 Linux 的潜力。现在有 200 多家公司和无数个人参与该项目,共同努力创建开源软件和 API,为全球的私有云和公共云提供动力。

DreamHost 在 OpenStack 项目早期就加入了,为该项目贡献了代码、资金支持和领导力。我们以金牌会员身份加入了 OpenStack 基金会,DreamHost 首席执行官 Simon Anderson 当选为我们在 OpenStack 基金会董事会的代表。我们对该项目成功的承诺是深远的。

为什么选择 OpenStack?

如果没有对开源理念的坚定承诺,DreamHost 今天就不会存在。我们不希望生活在一个再次被封闭、技术上不透明、“神奇”的云平台主导的未来。许多传统的托管客户对采用云服务很感兴趣,无论是作为对其现有共享主机、VPS独立主机的补充还是替代,我们相信他们也在寻找简单且经济实惠的升级途径。鉴于我们的基因,DreamHost 使用一流的开源软件为客户构建他们想要的东西是理所当然的。

介绍 DreamCompute

DreamHost 基于 OpenStack 构建的第一个产品是 DreamCompute,它允许客户通过标准的 OpenStack API 和命令行工具或通过直观的基于 Web 的用户界面按需创建虚拟机、块设备和网络。DreamCompute 为我们的客户提供了比以往任何时候都更大的权力,并且构建在庞大的开源软件库之上。以真正的 DreamHost 风格,即使 DreamCompute 的架构也是开放的。

DreamCompute 在运行 Ubuntu Linux 的高端戴尔服务器上运行。我们有两种基本类型的服务器:存储节点和虚拟机监控程序节点。虚拟机监控程序节点经过优化,可托管在开源 KVM 虚拟机监控程序之上运行的虚拟机,并配备 64 个 AMD 核心和 192 GB 内存。我们的存储节点是低功耗、高密度服务器,每个服务器配备十二个 3 TB 磁盘,并且运行 Ceph,这是一个开源、大规模分布式、容错存储系统,DreamHost 帮助构建了该系统。

DreamCompute 还设有一个“驾驶舱” pod,它代表着云的“大脑”。在驾驶舱中,我们在裸机和虚拟机的混合环境中运行 OpenStack 及其支持服务,包括 HorizonGlanceNovaNeutronKeystoneCinder,以及 Apache、HAProxy 负载均衡器、MySQL 数据库和 RabbitMQ 队列系统。整个系统由 Chef 配置和管理,并使用 logstash、graphite、collectd 和 nagios 等开源工具进行监控。

即使 DreamCompute 中的网络硬件和软件也基于开放平台和技术。DreamHost 直接从制造商处采购了高性能的 48 端口 10 千兆交换机。这些交换机运行 Cumulus Linux,这是我们 Cumulus Networks 的朋友提供的 Linux 网络操作系统。这种独特的设置使我们能够使用与计算和存储节点相同的工具和流程来配置、监控和操作我们的网络基础设施,从而大大减少运营开销。

DreamCompute 与标准的 OpenStack Compute、Network、Image 和 Storage API 兼容,并且其核心是 OpenStack 部署。尽管如此,DreamCompute 也有一些独特的特性,使其与其他云平台区分开来。毫不奇怪,这些特性的基础实际上是基于 DreamHost 创建的开源软件。

无惧头足纲

DreamCompute 中的每个虚拟机都从由多 PB Ceph 存储集群支持的虚拟块设备启动。操作系统镜像本身与这些块设备存储在同一集群中,这使 DreamCompute 能够利用 Ceph 的写时复制 (COW) 功能。Ceph 使我们的虚拟机能够从操作系统镜像的精简配置副本几乎立即启动,而不是从中央存储下载操作系统镜像到虚拟机监控程序(这很耗时),然后再配置新的块设备。因此,DreamCompute 中的虚拟机可以在短短 40 秒内创建并完全运行。

Ceph 还让 DreamCompute 用户确信他们的数据是安全的,因为存储在集群中的每条数据都总共复制了三次。当磁盘、服务器或机架发生故障时,Ceph 集群会立即采取行动自动修复自身,确保存在适当数量的副本。当添加新容量时,Ceph 会立即响应,充分利用新容量,并在集群中重新平衡数据。

一切皆虚拟化。包括网络!

服务器和存储虚拟化对大多数人来说是非常熟悉的概念,但网络虚拟化是一个相对较新的概念。DreamCompute 从一开始就构建为为每位客户提供完整的网络虚拟化。在 DreamCompute 中,物理网络代表“底层网络”,对客户是不可见的。然后在上面分层一个虚拟网络结构——“覆盖网络”,为 DreamCompute 中的每位客户提供一个虚拟 OSI 第 2 层 (L2) 交换机,该交换机在 L2 层与所有其他客户完全隔离。

在这个虚拟 L2 网络之上,租户被提供了一个虚拟化软件路由器,该路由器提供 L3+ 服务,如路由、防火墙等。DreamHost 已经开源了这个项目,将其命名为 Akanda,并在 GitHub 上以宽松的开源许可证发布。

DreamCompute 也是从一开始就构建为支持 IPv6 的,因为 IPv4 地址空间的耗尽即将到来。DreamCompute 中的每个虚拟机都会自动分配一个 IPv6 地址以及其私有 IPv4 地址。

通过将网络虚拟化技术与 OpenStack 的 Neutron 网络 API 连接起来,客户可以完全编程控制其从 L2 到 L7 的网络,并具有隔离性。

开源云的未来是光明的

DreamCompute 代表着 DreamHost 与开源社区之间长期合作伙伴关系的延续。我们很高兴能够进一步为 OpenStack 做出贡献,并成为提供基于 OpenStack 服务的充满活力的云服务提供商生态系统的一部分。开源云的未来非常光明,我们很高兴能够走在前沿。

DreamHost 的 DreamCompute 目前处于私有 Beta 测试阶段。要注册您对加入免费 Beta 测试期的兴趣,请访问 DreamCompute 并立即注册。

User profile image.
Jonathan LaCour 是 DreamHost 的云副总裁,DreamHost 是一家领先的共享主机、VPS 和独立主机提供商。Jonathan 从小就开始编程,并在佐治亚理工学院学习计算机科学,在那里,他通过学习心理学、认知科学和教育课程,培养了对用户体验的热情。

评论已关闭。

Creative Commons License本作品根据 Creative Commons Attribution-Share Alike 4.0 国际许可协议获得许可。
© . All rights reserved.