云原生的思考


2022年即将到来之际,收到腾讯云服务器友好的提醒:“尊敬的用户,你xxxx云服务器资源将于2021.12.30号到期,到期后将在一天后停止服务,停服后数据为你保留7天,逾期未续费资源将被释放”。我想着企业都不容易,毕竟年底了续个费吧。一打开续费页面,续费的话一年将近2000RMB,虽然自己知道续费肯定会贵一些,但是着实还是震惊了下。毕竟当时买的腾讯云服务器3年也就300多块钱。

续费之路

自己想着年底各种优惠活动应该有优惠券吧,就从腾讯云的官方看了下,果然有,然后美滋滋的领了老用户续费券一年就只要300多块钱了。正准备续费的时候,我思考了下,为啥服务器续费的价格涨的这么离谱,我这台服务器也就自己的博客和一个MySQL数据库,以及自己一些日常自动化的脚本在运行。不至于占用这么多资源吧。

同时我看了下腾讯云的销售政策,新用户注册同样的服务器一年只要79块钱,心里有些不平衡了。腾讯这不就是杀熟客行为,难道腾讯不怕客户跑路么?仔细想了下,这不就是典型的ToB行业的销售套路么?先用底价让你入坑,然后之后一行代码可能就是你原来入坑的几十倍。

迁移成本

其实ToB服务的企业,敢于这样干的本质原因,就是企业服务的迁移成本。典型的像给企业提供CRM服务,当你的企业客户数据都离不开他们的服务时,这时候企业就可以加价了,因为这时候他们在市场上已经没有对手了,被服务的企业也很无奈,因为迁移成本往往会很大,只要价格不要高的太离谱,他们自然会怪怪付费。这就是为什么说做SAAS服务的企业,往往收入相对稳定,比做ToC企业稳定性好很多。ToC的企业一个功能体验没做好,得罪了用户他们立马可能就转头去用另一个企业的产品了,用户花费的成本可能仅仅是重新下载一个新APP而已。

那么这样情况有没有破局那?尤其像云服务市场,如果一个企业的所有服务器都是通过一家公司购买的,想要迁移到另一个家公司成本会有多高哪?虽然自己服务器上也就5,8个服务在跑,和企业服务没发相提并论。不过自己想对比下迁移的成本到底有多高。然后就花了79块钱买了一个新的服务器。下面就描述下自己的迁移过程。

服务迁移

  1. 新购买的服务器首先要配置服务器的秘钥,方便用ssh登陆管理服务器。以及修改sshd_config一些配置。大概花费了半小时时间。

  2. 下载一些常用的软件,其实我这里主要是git和docker。git是因为要下载自己服务的源码而docker是要部署这些服务。这个就看网路了,10几分钟。(现在很多轻量级服务器都自带docker了)

  3. 下载源码开始编译构建所有基于docker的服务,这个构建过程可能比较久大概用了1个小时,自己服务用的环境主要是ruby、node、mysql、php、Nginx。这个过程全称都不需要我操作。

  4. 修改防火墙的配置,开发端口让外面的服务器访问。几分钟左右。

  5. 修改域名解析,自己用的godaddy域名,解析使用的时间,10分钟左右。

总计自己晚上搞了2到3个小时,把所有的服务器迁移好了。然后自己心里美滋滋,毕竟省下了2000块钱。这么顺利的迁移其实自己还是很意外的。

犹记得2011年那时候,当时云计算百家争鸣,自己买过新浪的云服务SAE(新浪当时的服务对标Google App Engine(GAE))。然后部署了一个网站和几个接口的服务,用的环境是Python。新浪SAE可以选择服务器自带python环境,由于自己的服务时基于Python的web2py框架,用了SAE后,只要简单的增加一些和平台的相关的配置就很快可以运行了。

只有由于一些业务迭代,接入他们的MemCache已经使用了SAE的MySQL数据库。这个服务运行一年后,感觉费用成本方面已经远远超过了阿里云。所以就想迁移到阿里云服务器,买了阿里云服务器后,部署了自己的源码,发现各种各种报错和接口不同,改动这些问题,花了1,2天的时间才迁移成功。

从上面看出当时服务器迁移的成本还是挺高的,自己就一个简单的服务就迁移了这么久,可想如果是一个企业那肯定要更高的成本。其中迁移困难的本质原因,就是每个云服务器配置都有他们自己特殊定制的功能,虽然SAE有Python环境,但是要完全使用平台的环境,需要侵入自己的源码,增加一些平台相关的配置。阿里云的服务和新浪的这些标准都各不相同,就造成了迁移的成本非常的巨大。

云原生

正应了那句名言“天下大势合久必分,分久闭合”,自从云计算服务出来后,各家公司都在争夺这个领域,然后亚马逊、微软、谷歌、阿里云这几个厂商在各自的区域拔得头筹。但是云计算各个平台的标准并不统一,本质上很容易造成上面我说的局面,也因为这些弊端,一些中小企业并不是很乐意上云,毕竟迁移成本还是很大的问题。所以统一云服务的标准势在必得,云原生的概念顺势而出了。

云原生的概念,由来自Pivotal的MattStine于2013年首次提出,被一直延续使用至今。这个概念是Matt Stine根据其多年的架构和咨询经验总结出来的一个思想集合,并得到了社区的不断完善,内容非常多,包括DevOps、持续交付、微服务、敏捷基础设施和12要素等几大主题,是一套典型上云指导思想和方法论,同时提供具体的操作工具。采用基于云原生的技术和管理方法,可以更好地把业务生于“云”或迁移到云平台,从而享受“云”的高效和持续的服务能力。

云原生的概念提出来以后。拥抱最多的企业就是谷歌。并且一直在推动和实践这个行为,谷歌这种做法也不无道理。为何要统一化云计算服务的标准哪?因为谷歌看到了亚马逊在云服务市场赚到盆满钵满。谷歌用的打法和当年的Android如初一辙,指定标准和开源,推出了k8s和docker这两种云原生的利器。

谷歌用这种方式对云服务市场进行的破局方式。当年的Android的套路很像通过统一标准,来降低企业依赖平台的系数。让企业可以更放心的选择迁移自己的云服务厂商。就跟Android一样,出来一个开源的标准所有厂商接入就行了。这样就消除了很多企业的顾虑,大家自然就都原因干这个事情,同时竞争也就会上来了。所以当时Android和微软、苹果的竞争中,才能后来居上。

不过谷歌的这种打法,必然会造成云计算行业厂商的利润下降,但是整体的云服务质量就会上升。其实长远来看还是很有利行业的发展。下面引用下云原生的常用概念。

其实从云原生概念上来看,云原生比上云更进一步,不再是一个方向或者指导思想,而是明确了上云的方式和最佳实践。CNCF TOC张磊分享他对云原生的理解:“云原生是一条最佳路径或者最佳实践。更详细的说,云原生为用户指定了一条低心智负担的、敏捷的、能够以可扩展、可复制的方式最大化地利用云的能力、发挥云的价值的最佳路径。

从上面可以看出云原生本质上就是为了解决各家云厂商标准的问题,如果大家都遵循了这个原则,那么企业只要关注自己业务的代码。写完之后想从一个云上迁移到另一个都很容易,因为标准是统一的不会出现不兼容。

未来展望

云计算服务行业是典型的ToB企业,ToB的企业价值做到最后,往往就像工业时代的水电煤一样,成本会回归到事物本身的价值。往往不像ToC的行业利润可以做到很高,很重要的一点就是Toc行业很难形成统一的服务标准。对于Toc行业来说,首先有庞大的用户群体,并且每个用户的需求都不一样,要各种定制化的需求,统一就很难。但是如果是服务企业的话,本身群体不会特别大,并且标准统一反而有利于企业做迁移,所以统一就相对容易一些。

其实这也是市场发展的必然过程。任何行业想要降低成本的过程中,提供更好的服务,一定是大家形成统一的标准,可以自由的竞争,然后回归到价值本身了。这也是为什么很多国家会有垄断法,因为一旦一个行业被垄断了,用户迁移成本无限大的时候,垄断的企业就可以漫天要价。

从云计算的发展中也可以看出现在市场经济,往往价值最高的产品就是市面上没有统一的标准,需要给用户特殊定制的(这里的价值是说对提供的企业赚钱的多少,并不代表对整个行业的价值很高)。一旦一个行业形成了标准,大家都可以按照这个标准产出东西的时候,就意味着这个行业的利润已经基本回归到价值本身了。其实本质上这更利于行业的蓬勃发展,就跟现在的建筑、硬件制造、汽车制造行业,大家可以百家争鸣,同时消费者也能享受到更好的服务。这才是健康有利的发展。

所以所谓红海市场,本质上是行业还处于标准不统一的节点,同时也是企业最能赚到原始资本的地方,一旦行业形成标准,最终市场都会归于冷静,也就回归到理性的价格。不仅想起一句俗语”尘归尘,土归土,及尽繁华,不过一掬细沙”。所以云原生现在蓬勃的发展也是印证了这个道理。

如果你喜欢这篇文章,谢谢你的赞赏

图3

如有疑问请联系我