sealos爆火后依然要开发sealer,背后原因有哪些?

Sealos和Sealer发起人、阿里云原生技术专家方海涛在“2022云原生超级英雄会”直播中分享了他的两个开源项目:Sealos和Sealer。

sealos诞生及商业化

Sealos诞生的过程是很有趣的。K8s早期版本时,官网上找不到可用度高的安装工具。最初的方海涛写了一个可用度较高的安装脚本放在阿里云市场上,有很多人下载,可见需求量之多。但是此脚本也存在很多问题,程序十分复杂。于是第二个版本——ansible诞生了。但ansible只是使用起来方便许多,并没有解决根本的安装复杂问题,很多用户安装ansible本身都不成功,特别是在离线的环境中更容易出错,需要把ansible放到docker中。为了解决这个问题,他思考了很长时间,最后在kubeproxy源码上找到了灵感。借用负载均衡器的实现方式,去掉很重的组件,使整个脚本变得简单,于是第三个版本golang解决了以往的问题。把事情做到简单极致,一条命令解决一切。Sealos已经诞生三年,即使在今天依然非常先进,这也是Sealos有竞争力的地方。

Sealos从诞生之日起就是商业化的,最早的脚本便放在市场上进行售卖了。在云市场上架,人工审核要一周的时间,需要人为催促或者手动上传,整个过程非常消耗精力和时间。为了解决这个问题,方海涛创造一个网站售卖Sealos,机器人通过网站的API将Sealos传到云市场,保持最快的更新速度。整个过程全部由机器人自动构建、自动测试、自动上架。

早期开发团队的运营每天写代码写到24点左右,之后开始在云市场上找客户,拿到他们的联系方式与他们联络,积累了一些种子客户。后续的发展主要通过技术博客引流,目前已经到了用户口碑传播的阶段,真正进入了爆发期,甚至有一段时间短短两周的增长超过之前两年总和。所以把作品做到极致是实现爆发增长的必要因素,在产品还不够极致时去推广很多时候反而适得其反。

sealos爆火后依然要开发sealer,背后原因有哪些?_第1张图片

从Sealos到Sealer

为什么Sealos出现了爆发性增长,还要再开发Sealer呢?

因为Sealos是单纯地为适应K8s构建的,但是用户的需求非常复杂,所以需要Sealer来解决这些各不相同的问题。Sealer参考吸收了Docker的设计思想,它将整个集群以及所有依赖做成镜像,将用户的中间件、数据库、SARS等糅合成集群镜像,最后运行整个集群。

Sealer诞生的几个月后便在两三家客户的生产环节落地了,大概一年的时间增长到40余家。需求十分旺盛,Sealer可以解决专员交付、自定义开发、自集群等问题。无论是在云上、云下或者转云,Sealer都是很便捷的方式。

Sealer更是特别重视使用体验而不是一味的堆功能,并不满足于只是实现需求,而是会思考实现的方案是否优雅,是否会给不用这块功能的人带来困扰。方海涛寻求的是全局最优解而不是局部某个客户的最优解,所以在Sealer从Kubefile到Clusterfile到配置管理插件等设计都能看到在追求极致。多一分则嫌多,少一分则嫌少,通过大道至简的高度抽象满足各种奇葩复杂的需求,极大的降低了整个云原生领域生态软件的落地和交付门槛。

云链合一的未来

从应用的视角观察,会发现应用的开发者关心的是业务逻辑而不是底层的问题。对于应用开发者而言,应当让他们不用关心底层复杂应用的基础设施、弹性伸缩以及监控流程等问题,所以Serverless、Faas、低代码等会成为一个趋势。现在很多比较敏感的公司都采用这些技术,节省开发成本和基础设施费用,它确实不用消耗很多资源,按需扩容和按需弹性各方面都会非常好,在开发时不用写很复杂的逻辑,可以最简程度解决问题。

有意思的是区块链合约的发展。从最早的比特币脚本开始,早期的比特币脚本比较单一,只能进行简单出栈入栈的操作,不是图灵完备。向后发展以太坊合约可以跑在EVM容器上,solidity语言用来写合约,此时合约与Faas已经非常像了。

再往后发展,可以看到今天的一些公链很多以wasm作为合约,如polkadot的ink,通用性大大提高,甚至可以用任意语言来写合约。

合约本质上与Faas十分相似,FaaS对应几个函数接口,合约也是同样,可以使用前端js调用合约或者function。Js相当于前端,合约相当于后台,写合约的人不用去关心服务器的存在,只需要关心是否运行。两个地方朝着一个方向发展,开发者不用再关心后端很复杂的基础设施。

在未来,会有一个强大的云操作系统使世界级计算机运行起来,所有的业务都可以基于计算机上的云计算体系产生颠覆效应。

sealos爆火后依然要开发sealer,背后原因有哪些?_第2张图片

开发过程中的感悟

第一,静心学习,巧妇难为无米之炊。很多想法并不是凭空诞生的,多沉淀知识,才能够有想法,将想法组合组装,一些灵感就会诞生。多去了解市场行情,听听用户的想法,发现用户的痛点,结合自己的想法付诸实践,解决用户的问题。不要急躁,专心打造优雅的作品然后很自豪的去分享你的作品。

第二,持续的写代码,对于开发者来说这是根本。不要担心写代码没出路,没出路一定是代码写的不够好。国外已经有很多码农写出百亿美金的公司了,随着时代发展国内也会出现很多这样的例子,管理并非我们的唯一出路。

第三,若是通过开源运营一家公司,有三要素。

1.要了解市场时空,有足够的市场空间和好的时机。

2.根本灵魂在于好作品,以产品为驱动,我自己会花80%以上精力在产品上。

3.合理运营,让用户知道你的好东西,并形成口碑传播。以前我认为商业模式也应当是要素之一,后来我觉得这不重要,解决了用户痛点有就可以有100种商业模式。

以上是方海涛关于开源项目Sealos与Sealer的全部分享。云原生是应用开发的大变革,在开发者的共同努力下,会挖掘出更多有意义的开源项目促进云往简单开放的方向发展。

云原生志愿者计划正在招募

精准把握技术趋势,深度学习新技术、新实践

sealos爆火后依然要开发sealer,背后原因有哪些?_第3张图片

 扫描图片二维码立即申请加入

你可能感兴趣的:(云原生)