树莓派?
首先声明,这可不是吃的
基于Linux的单片机电脑,由英国树莓派基金会开发,目的是以低价硬件及自由软件促进学校的基本计算机科学教育
目前树莓派的最高配置为4B版本,手掌大小,从某宝上买到的树莓派4B带一个64G的SD卡只需要610元
k3s
史上最轻量级Kubernetes, 易于安装,二进制文件小于40 MB,只需512 MB of RAM即可运行。
k3s目前是开源的,并且是CNCF认证的Kubernetes发行版,所以可以放心使用,它跟标准的k8s主要有以下区别
- 移除过时的功能、Alpha功能、非默认功能,这些功能在大多数Kubernetes集群中已不可用。
- 删除内置插件(比如云供应商插件和存储插件),可用外部插件程序替换。
- 添加SQLite3作为默认的数据存储。etcd3仍然可用,但并非默认项。
-
包含在一个简单的启动程序当中,可以处理复杂的TLS和其他选项。
安装也超级简单
so easy!将复杂的事物简单化,这是一种很重要的能力。
树莓派+k3s?
这两者能擦出什么火花呢?一个轻型便宜,一个轻量,两者的共同点都是较小且轻量,功能还不弱,这能省成本吗?
我们可以核算一下成本:
假设一个中小型公司是java技术栈,
- 200个服务,
- 每个java服务内存上限0.5G
那这样下来就需要200*0.5=100G
的工作节点内存, 树莓派每个节点需要1G
内存,预留0.5G
的内存以备不时之需,那就剩下2.5G
可以部署服务:5
个服务,这样算下来工作节点所需要树派派个数至少需要20
个,考虑到特殊情况以及误差等因素,一个树莓派+k3s的全量环境需要25
个树莓派,最后成本也就是25*610=15250
元,这个数量的树莓派放在一个普通主机机箱里面即可。
再来看一下阿里云的成本
通用型2核8G一个月的成本是240,我们只看内存的话,以达到上面的配置,需要25*4/8
大概需要13
个同等配置的ecs, 每个月就是13*240=3120
元,这样算下来5个月之后,树莓派+k3s将会更省钱,因为不用花钱续费,而ecs则需要继续花钱了,初看貌似很美好的样子
树莓派+k3s的优缺点分析
- 最大的优点还是便宜,节省成本,长期使用的话,成本优势是非常明显的,规模越大越明显,因为这个方案一定是内网部署,插电即可运行
- 缺点也很明显,要有专人维护,需要不断积累使用经验,k3s目前还不是特别成熟,用作测试环境还行,用在生产上就有待商榷了,如果说为了节省成本测试环境用k3s,生产环境用官方k8s,会带来环境不一致的问题;还有,树莓派是arm硬件体系,与我们常用的x86体系还不一样,镜像打包时需要额外做一些工作,目前没有太多的生产实践可以借践
还有就是阿里云的ecs出了问题有阿里云兜底,可以提工单找客服,但是哪有不出问题的环境呢?从这个角度讲,风险是一样的,就看投入值不值得了
总结
手里拎着几个装着树莓派的机箱就是一个计算机集群,想想就觉得很酷是不是,目前树莓派与k3s的都在迅速的发展中,散发着勃勃生机,搭载着容器化的快车,很有想像力。如果公司有允许,我觉得还是值得在这块投入一些人力的,参加今年的云栖大会的时候就在想:k3s+树莓派出一套服务容器化方案,在中小企业应该会很市场的,又或许是我想的不够全面,还是希望在这个领域能够会有一些比较好的生产实践。
Refer