您不需要所有复杂/昂贵/分散注意力的基础架构(2019)

2021-03-11 21:07:19

Kubernetes集群?跨多个云区域的负载均衡器?基于连续部署管道的实时指标零点击,蓝绿色部署?

这一切都很酷。如果您花了很多时间在黑客新闻中,或者阅读来自Faang Devops巫师的最新曲目,那么您确信它对您的网站绝对必不可少。但这都是噩梦。设置它全部是一个复杂的时间汇。如果你不想自己滚动它,那就太昂贵了。即便如此,它仍然是一个噩梦,你刚刚支付了这个特殊的噩梦的特权。

(*嗯,你需要一些......但比你想象的要少得多

在Twitter Pieter级别 - 年度追捕员的多个产品亨特制造商,一个日益增长的网站名单的创始人,在收入中产生数千个,基本上是“独立制造商”社区的上帝 - 被问到他曾经举办过什么样的基础设施他疯狂成功的独立项目?

现在,我并不是说我确切地知道基础设施的兴奋剂到位。但这是一个非常坚定的猜测,没有复杂的自动缩放组,没有昂贵的云机队伍支付,没有复杂的kubernetes集群。

您的目标是在启动产品时,是构建一个为您的用户解决问题的产品。不建立冯先生部署管道,或多区,多区域,多云核冬季证明高可用性设置。我已经看到了在基础设施上度过的每一分钟都是一分钟的运输功能。现在显然这并不完全是真的;除非您拥有服务器,或者某种方式将功能放在服务器上(并且最好将其保留在那里,至少有点),否则无法发货但这不是一个糟糕的心态。您需要最简单,最短的耗时的基础架构,让您到达那个点。

当我建立我的侧面项目策划设计精品时,我花了几个小时的时间建立一个简单和免费的连续部署管道。提交Git,信号量CI构建了Docker映像,将图像上载到容器注册表,然后提取&在我的服务器上重新启动容器。这个真的很酷。一旦我工作了,我就像一个巫师一样......它是免费的!我实际上在这里坐下来写一切关于如何自己做到这一点,直到我意识到我花了多长时间以及它向我的用户提供了多少价值(以及结果:它将其存入我的银行账户多少钱) - 绝对没有。当然,自动建立和amp;上传到注册表?伟大的!为我节省了很多重复错误易于标记&打字。但真的耗时,而且fiddly&系统的不可靠部分是自动部署。手动运行“我的服务器上的Docker撰写”脚本(在我这样做的情况下,我也要注意,所以我不需要额外的自动监控基础设施来告诉我,当我搞砸了)。

您的用户不关心您的代码如何进入您的服务器。 99.9%的时间它们不关心您的幻想高可用性设置。显然,如果您是Caang-Level或一些建立的网站,那么0.1%的停机时间转化为从您的书中消失的大量现金,这一切都很棒。你有资金做事“正确”。您的花式零点击连续部署系统每年可为您节省数千美元/百万。但在独立制造商,“嘿,嘿,我建造了这件很酷的东西......请有人看看它(并在产品亨特上拆卸它,THX)”尺度 - 几乎每一个网站的尺度 - 0.1%越来越微不足道。

“工程师被制作工程师兴奋的东西散步,而不是解决用户的真正问题 - 我们以前都听过了这一切。这里没有令人震惊的启示(你毕竟在中间......)。但是,似乎是一种普遍的感觉,您无法在没有K8S集群的情况下启动产品,或者在几个地区的负载平衡,哦,如果您必须手动部署任何东西,您可能希望怎样期望流入利润?

所以,最后将下一个独角兽想到代码?您不需要所有计划的所有基础架构。