OpenStack 已死?

本文探讨了OpenStack是否已死的问题。作者认为OpenStack没有死,只是发展成熟后话题减少。构建超大规模的OpenStack公有云未能实现,因注入资金的公司利益与超大规模开发相悖。如今OpenStack可作为中型基础设施自动化工具,还提醒投资Kubernetes需改制组织。


640?wx_fmt=gif

OpenStack 已死?

这个曾经的高频热词,似乎的确不再活跃,甚至已经逐渐淡出公众视野了。那么 OpenStack 到底还身在江湖吗?

对此,本文作者 Anais Nin 站在“内部人员”的角度给出了一个答案:“OpenStack 没有死,只是有一些不如意”,“OpenStack 的项目仍然非常健康,而且常见的炒作曲线大抵如此。如今 OpenStack 终于发展成熟,有关的话题自然减少了,所以大家觉得它出了意外也是可以理解的。

640?wx_fmt=jpeg

作者 | Anais Nin

译者 | 弯月

责编 | 仲培艺

出品 | 优快云(ID:优快云News)

以下为译文:

在面试期间很多人问我这个问题,人们觉得 OpenStack 已经死了。我先做了个鬼脸才回答:OpenStack 没有死,只是有一些不如意。

OpenStack 的项目仍然非常健康,而且常见的炒作曲线大抵如此:如今 OpenStack 终于发展成熟,有关的话题自然减少了,所以大家觉得它出了意外也是可以理解的。

问我这个问题的人一般都是出自好奇和善意,我觉得我的答案说明了我的专业背景,所以即使在面试中我也略微有些絮叨。

很久以前我就觉得我应该写一篇有关这方面的文章,但无奈其他诸事缠身,未能找到恰当的时机。所以今天我决定重新审视这个话题。下次再有人问我这个问题,我就让他们来读这篇文章。

众所周知,为了 OpenStack 生态系统的长治久安,我们需要一个超大规模的 OpenStack 公有云,以及建立在我们已有 IaaS/PaaS 层之上的一组健康的 SaaS 应用程序。我们知道我们需要多次超大规模的实现,才能避免一个严肃的问题(早期曾是 RackSpace 的问题)。

在公开场合,很多人都在谈论这个问题;经常看到新闻头条将 OpenStack 与 AWS 进行比较,每个 VC 和分析师也都想知道 OpenStack 是否可以支持企业应用。我甚至还参加过一个小组讨论这个问题! 但随着时间一天天过去,这个关系到我们成功与否的关键部分却未能实现。这是为什么?

早在 2014 年,我还在惠普云工作。大量的资金融入了 OpenStack,我们都为此得意洋洋。那是 OpenStack 炒作的巅峰,我永远也不会忘记巴黎峰会上的嘉年华……简直太美妙了!然而,在外界看来这样没什么大不了,尽管电信和硬件供应商纷纷开始寻求能够影响 OpenStack 的方向。具体来看,这些公司希望为私有云集成解决方案构建技术基础,以便快速推向市场。

私下里,我们可以看到这些市场的力量实际上与真正的超大规模正好相反。OpenStack 的新项目 Big Tent 为解决其中一些问题进行了大胆的尝试。我们(技术委员会)竭尽全力,但最终却未能解决问题,因为我们没有掌握财政大权。

当时几乎所有为 OpenStack 做出巨大贡献的公司都依赖于企业客户。说到底还是知名品牌互为对方花费大量资金,说起来好听罢了。与超大规模不同,通常企业客户对构建自己的服务器或编写自己的交换机固件并不感兴趣。他们一般都会从其他做这方面生意的公司购买这些东西(以及支持合约)。

与此同时,发行商和运营商都遇到的困难在于:只有让 OpenStack 方便安装他们才能推出、维护和部署满足市场需求的产品与服务。而企业对新私有云领域的需求非常高。OpenStack 开发团队(在 Distros、Telco、HW 供应商)承受了很大的内部压力,他们需要构建在这些企业客户所需的规模下运行良好的软件,大致需要支持 1,000 到 10,000 的核心数量,还需要支持多个区域的分布式,以实现地理位置上的可靠性。

但是,构建 10,000 个内核的分布式系统与构建 10,000,000 个内核完全不同。除了修改代码之外,每扩展三个数量级就需要对业务运营方式进行根本性的改变。利润率也会变得特别小。第三方支持合同、B2B 交易、增值软件导致销售团队的天时地利也不复存在了。企业硬件和软件巨头不愿意重新调整他们的业务,而像 OVH 这样的公司的自然增长很慢(尽管我认为他们的发展依然很顺利)。

构建一个可行的、开源的、超大规模的云软件解决方案违背了向 OpenStack 开发注入大量资金的公司的最大利益。

我习惯于在餐巾纸上画画,但原稿早就不见了,所以我按照记忆重新画了出来,如下所示:

640?wx_fmt=png

影响力从错误的方向流入。电信、硬件和 Distro(即 ATT、思科、戴尔和RedHat 等公司)注入的大量资金产生了很大影响力,这笔钱用于支付开发人员写代码的薪水、资助奢侈的聚会以及涨工资(实话实说,我当然很喜欢这些聚会,虽然我获得了颇丰的报酬,但我的表现并没有很多人那么好)。与此同时,这条发布战线上,运营商被远远地落在了后面,他们的影响力非常小(毕竟他们忙着运营云服务)……而云终端用户(应用开发人员)几乎没有任何发言权。

最终,收入需要仰赖云上支持业务的增长(例如应用开发人员的成功),但我们无法实现这一目标,因为运营商的规模扩展不够,也无法维持良好的跨云兼容性让健康的市场在云服务上蓬勃发展。上图左边的每一方都忙于赢得彼此间的交易之战。

随着这种情况的持续,上游技术团队的领导在各自公司内部展开了游说(他们看到了问题),希望改变这种优先级。我们说服了一些管理层,他们同意在代码和基础架构上的战术投资,但我们无法获得足够的支持来做出更大的改变。

只要有财务实权的那些人专注于中型客户(MSP 和企业市场)的业务模式,他们就不愿意投入大量的战略努力,让 OpenStack 在超大规模市场中具有竞争力。绝大多数开发人员的项目目标都是由公司的项目经理和管理人员决定的,因此他们都在忙于开发新功能(旨在利用“增值集成”,增强企业销售),所有部署人员也都一窝蜂得去忙着扩大他们的云,因此暴露出的一些明显的核心问题,反倒没人去管了。

成功的超大规模公司已经干掉了中间件的边际成本。Google、AWS、甚至是 Facebook 都制造了自己的服务器、交换机、存储等。他们在开源项目上建立分支,然后雇佣开发人员维护和改进私有版本,从而保持他们的领先地位(尽管一些项目现在正试图阻止这种情况)。这些公司通过削减基础的成本来拓展规模,但这些成效并没有重回企业市场。他们通过构建流程、团队和硬件来打破对软件、硬件或第三方的支持依赖,从而成为一方霸主。

可见,构建一个可行的、开源的、超大规模的云软件解决方案违背了向 OpenStack 开发注入大量资金的公司的最大利益。

看看其他云产品,想一想类似的利益冲突可能就发生在你最喜欢的产品身上。(我想到了 Kubernetes……)

我们这些很早就加入了 OpenStack 的人曾有过伟大而美好的梦想,但我们没有机会在 OpenStack 实现这些梦想。如今,OpenStack 不再备受瞩目,但可能现在这样更好:中型基础设施自动化的可扩展工具,为全球数千家企业提供支持,包括许多非营利和公益机构。

需要说明一点:我很荣幸贡献了自己微薄的力量,帮助他们构建了一个广泛使用的工具。

我发表这篇文章是希望给那些投资 Kubernetes 的人一个警告。你永远无法像 GKE 一样高效地运行 Kubernetes,除非你也对你的组织进行整体的改制。

即便如此,使用 Kubernetes 可能也不会成功,因为 Google 可不喜欢有人与 GKE 展开真正的较量。

或许,这也未尝不可。实际上,无论你想构建什么,OpenStack+Kubernetes 可能都是不错的选择,而且这两个项目近期内都不会发生重大变化。

如果有公司希望在超大规模领域寻找机会,那么就需要全面了解整个业务设备,并重复 Google/Facebook/亚马逊的模式,将开源化作私有,并投资制造自己的服务器,或与其他纵向发展的开源企业联手,建立自己的竞争优势。

原文:https://aeva.online/2019/03/what-happened-to-openstack/

本文为 优快云 翻译,如需转载,请注明来源出处。作者独立观点,不代表 优快云 立场。


640?wx_fmt=jpeg

 热 文 推 荐 

☞ 薪资不如 Java、C,BAT 需求大,揭秘 Python 程序员跳槽现状!

如何在 JavaScript 面试中过五关斩六将?

开源图数据库项目 DGraph 的前世今生 | 技术头条

315 后,等待失业的程序员

☞再不编程就老了!05 后比特币专家准备赚个 134,000,000 元!

都道业务提升坑大事儿多,但英特尔云方案却说“简单”

麦克阿瑟奖得主Dawn Song:区块链能保密和保护隐私?图样图森破!

☞Pig变飞机?AI为什么这么蠢 | Adversarial Attack

☞教训!学 Python 没找对路到底有多惨?


 

System.out.println("点个在看吧!");
console.log("点个在看吧!");
print("点个在看吧!");
printf("点个在看吧!\n");
cout << "点个在看吧!" << endl;
Console.WriteLine("点个在看吧!");
Response.Write("点个在看吧!");
alert("点个在看吧!")
echo "点个在看吧!"

640?wx_fmt=gif点击阅读原文,输入关键词,即可搜索您想要的 优快云 文章。

640?wx_fmt=png 喜欢就点击“在看”吧!
<think>嗯,用户需要的是在CentOS 7上使用packstack一键部署all-in-one OpenStack的完整指南。根据提供的引用材料,我需要整合四个关键引用中的有效信息,同时过滤掉报错等干扰内容。 用户明确要求"一键部署",说明需要最简化的操作流程。引用[1]和[引用2]都强调了All-in-One模式的优势,其中引用[2]特别指出"初次安装建议使用默认allinone配置"。这提示我应当把--allinone参数作为核心指令。 硬件要求方面,引用[1]给出的基准是:2核CPU/4G内存/20G磁盘,这个配置需要作为前置条件强调。注意到用户可能使用虚拟机测试,需要特别提醒磁盘空间不足是常见失败原因。 系统准备阶段有三个关键点:1) 必须设置主机名为stack-controller(引用[1]);2) 禁用NetworkManager(引用未提及但实际必需);3) SELinux和防火墙的处理需要明确说明,引用[4]的卡问题可能与此相关。 安装步骤中,引用[2]的--provision-demo=n参数很重要,这是避免创建演示项目的关键。但初次学习者可能需要保留演示项目,所以应该说明两种选择的区别。 安装后验证部分,引用[3]提供了标准检查命令:nova service-list和neutron agent-list,需要整合到验证环节。环境变量source操作容易被忽略,要放在显眼位置。 最后要包含实用技巧:1) 如何解决leatherman库缺失问题(引用[4]);2) 磁盘扩容方案;3) answer-file的高级用法。这些问题在实际部署中经常遇到。 用户可能后续会问网络配置或组件扩展,所以相关问题的设计要包含这些方向。考虑到OpenStack部署复杂度,还应该准备故障排查的入口问题。 </think>以下是根据引用资料整理的 **CentOS 7 使用 Packstack 一键部署 All-in-One OpenStack** 的完整步骤: --- ### 📋 **环境要求** 1. **硬件配置**(引用[^1]): - 处理器:≥ 2 核 - 内存:≥ 4GB - 磁盘:≥ 20GB - 网卡:≥ 1 块千兆网卡 2. **操作系统**: CentOS 7.6 Minimal(其他 7.x 版本也可) --- ### 🔧 **部署步骤** #### 1. **系统准备** ```bash # 设置主机名(必须) hostnamectl set-hostname stack-controller # 关闭 NetworkManager systemctl stop NetworkManager systemctl disable NetworkManager # 关闭 SELinux(可选但推荐) sed -i 's/SELINUX=enforcing/SELINUX=permissive/g' /etc/selinux/config setenforce 0 # 防火墙处理(按需选择) systemctl stop firewalld systemctl disable firewalld # 或配置防火墙规则放行流量 ``` #### 2. **安装 Packstack 及依赖** ```bash # 启用 EPEL 仓库 yum install -y epel-release # 安装 Packstack yum install -y centos-release-openstack-ussuri # 替换为所需版本(如 rocky/stein) yum update -y yum install -y openstack-packstack ``` #### 3. **一键部署 All-in-One** ```bash # 使用默认配置部署(推荐初次使用) packstack --allinone --provision-demo=n # 引用[^2] ``` **参数说明**: - `--allinone`:将所有服务部署到单节点 - `--provision-demo=n`:不创建演示项目(安全推荐;若需测试可改为 `y`) --- ### ✅ **验证安装** ```bash # 加载管理员环境变量 source /root/keystonerc_admin # 引用[^3] # 检查 Nova 服务状态 nova service-list # 检查 Neutron 服务状态 neutron agent-list ``` --- ### ️ **常见问题解决** 1. **库文件缺失**(引用[^4]): ```bash export LD_LIBRARY_PATH=/opt/puppetlabs/puppet/lib:$LD_LIBRARY_PATH ``` 2. **磁盘不足**: 确保根分区 ≥ 20GB,或扩展磁盘空间。 3. **网络冲突**: 若主机有多个网卡,使用 `--default-password` 指定管理密码,或通过交互式配置: ```bash packstack --gen-answer-file=answer.txt vi answer.txt # 修改 CONFIG_NOVA_COMPUTE_PRIVIF 等网络参数 packstack --answer-file=answer.txt ``` --- ### 📚 **相关进阶问题** 1. 如何扩展单节点为多节点部署(Multi-Node)? 2. Packstack 的 Answer File 如何自定义组件(如 Cinder/LBaaS)? 3. All-in-One 部署后如何进行性能优化? > 关键引用: > - 基础配置与硬件要求 [^1] > - Packstack 参数说明与安装模式 [^2] > - 安装后环境加载与验证 [^3] > - 故障排查方法 [^4]
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值