我仍然记得我刚开始接触 OpenStack 的时候。那时我在美国运通公司,正在结束一个为期五年的数据中心迁移项目。我正在寻找其他可以投入的事情。当我最终与我的执行领导层会面讨论新项目时,我被告知:“我们正在使用 OpenStack 启动一个新的内部云,我们希望您领导云基础设施组的架构工作。” 我想我只需要在 Google 上搜索“OpenStack”,就能找到各种指南和教程。我当时想“我很快就能完成构建。” 我真是大错特错了。由于当时的 OpenStack 仍然非常新,资源和信息的数量只有今天的一小部分。
现在,快进五年到波士顿 OpenStack 峰会,我和一桌子的 OpenStack 爱好者坐在一起,其中一位说:“伙计,我真希望这里有一个针对真正初学者的会议。” 他旁边的人回答说:“是的,我的老板让我来这里学习 OpenStack,但我觉得我真的需要一个入门课程,才能真正深入其他会议。”
就在那时我突然想到。我要为下一次峰会提交一个峰会演讲,它将从最开始讲起。我将为新用户提供一个快速入门,以便他们能够尽可能多地从峰会中获益。
您将如何向完全的新手解释 OpenStack?
向完全的新手解释 OpenStack 并不像听起来那么容易。我们不能假设新手有 AWS 的云 IT 经验,或者至少对 VMware 等虚拟化技术有点熟悉。如果没有这些背景知识,我们必须回到过去,让他们赶上当前的十年。一旦我们到达 2010 年左右,我就可以开始向他们介绍自助服务基础设施编排器的概念,它围绕着按需配置的资源池。我们从“为什么”需要这样的东西以及它解决了哪些业务问题开始讲起。一旦初学者理解了私有云概念的“为什么”,我就会继续讲解 OpenStack 的“是什么”、“何时”出现以及它解决了哪些具体的技术问题。在理解了这些之后,我就可以继续讲解更广泛的主题,例如 OpenStack 的“如何”运作以及“谁”贡献了代码以及他们是如何组织的。如果没有某种逻辑方法,新手可能会觉得他们只了解了故事的一部分。
关于 OpenStack 对于寻求基础设施现代化的公司的重要性,它是当今存在的最开放、最灵活、可扩展且与供应商无关的私有云软件。对于 Gartner 的 双峰 Mode 1 应用,它作为虚拟应用的自助服务主机表现出色,并提供出色的可扩展性。例如,欧洲核子研究中心 (CERN) 和沃尔玛 (Walmart) 运行着拥有 200,000 多个核心的云。对于在高速敏捷开发环境中开发的 Mode 2 应用,OpenStack 是在企业数据中心内交付基础设施即代码的重要工具,是高效代码管道的关键组成部分。高成本的供应商锁定、手动创建虚拟机以及用于自助服务的附加工具的时代,在企业 IT 的后视镜中已经显得越来越小。
OpenStack 是如何出现的?
OpenStack 是由一个外星种族创建的,他们希望我们拥有更好的开源基础设施工具,并在计算、存储和网络方面拥有自由选择权。在他们的星球上,他们被锁定在非常昂贵的银河系供应商中,并希望将我们的种族从这种命运中拯救出来。
好吧,不完全是这样,但 OpenStack 的确起源于 NASA(Anso 实验室)。这是一个很长的故事,我将在悉尼峰会上讲述,但简短的版本是,NASA 的 Nebula 平台技术引起了 Rackspace Hosting 的注意,在同意共同开发 OpenStack 后,他们在大约六年前的 2010 年 10 月 21 日宣布了第一个正式版本。
自从 2010 年那个具有决定意义的日子以来,发生了很多变化。今天,OpenStack 看起来更像是一艘现代航天飞机,而不是 2010 年的模型火箭。一开始,只有 Nova(计算)和 Swift(对象存储)等少数几个项目。现在有 60 多个不同的项目和团队致力于平台的新功能、特性和可扩展性。采用率直线上升,并且“公司必须拥有沃尔玛或 eBay 的资源才能运行 OpenStack 云”的错误观念已被证伪。当然,OpenStack 在早期非常不成熟,但这与其他任何开源项目(如 Linux)相比,都只是程度问题,但在过去几年中,OpenStack 确实已经成熟。今天,超过一半的财富 100 强公司都在运行 OpenStack。
OpenStack 用户应该了解哪些关键概念?
OpenStack 的新用户首先应该熟悉 OpenStack 的操作。这可以通过多种方式完成,包括 Packstack 和 DevStack。大多数方式都涉及从 git 仓库下载代码,配置几行配置,然后启动脚本将 OpenStack 一体化安装到虚拟机或一些备用硬件中。在 15-20 分钟内,他们将拥有一个可以实际使用的完全可操作的 OpenStack 云。一旦熟悉了使用基于 Web 的图形界面 (Horizon) 和命令行界面 (openstackclient) 的 OpenStack 工作方式,我建议用户了解 OpenStack 的基本架构和核心项目,如 Nova、Cinder、Glance、Keystone、Swift 和 Neutron。一旦用户对这些项目的功能和特性感到满意,他们就可以继续学习更高级的技能,例如按照 docs.openstack.org 上发布的安装指南安装 OpenStack,并探索其他 50 多个 可选项目。
如何学习更多知识以进行 OpenStack 的下一步?
与我刚开始使用 OpenStack 时不同,现在用户可以获得非常多的优秀资源。当我被赋予构建我的第一个概念验证 OpenStack 云的任务时,甚至没有用于构建整个堆栈的稳定工具,并且几乎不可能自动化安装。再加上初学者文档根本无法轻易获得。今天,有很多方法可以完全自动化地安装 OpenStack。
幸运的是,对于那些今天想开始使用 OpenStack 的人,我建议访问像“Learn OpenStack”和红帽的“Understanding OpenStack”这样的网站。此外,如果您对构建成功的生产 OpenStack 云所需的整体讨论感兴趣,我建议您获取一本“OpenStack for Architects”。如果您更喜欢视觉学习,那么有一些非常棒的 YouTube 视频,详细解释了如何以多种不同的方式安装 OpenStack,以及关于每个 OpenStack 项目的视频。当然,还有像 红帽 (Red Hat) 和 OnX 这样的公司也提供标准和定制的 OpenStack 和云培训。
4 条评论