09 | 搭建私有Serverless(二):基于K8s的Serverless
搭建 Serverless 的前提
- 深入了解
- 翻译
- 解释
- 总结
本文深入介绍了如何在基于K8s的基础上搭建私有的Serverless环境。作者首先回顾了微服务、Service Mesh和Serverless的关系,强调了它们之间的联系。接着详细介绍了Serverless底座的搭建,重点讲解了Service Mesh的应用原理和作用。作者指出,Service Mesh通过无侵入的方式接管网络流量,将微服务中的网络通信逻辑抽离出来,从而减少对微服务SDK的依赖,实现了轻量化的微服务通讯。文章通过图示和具体案例,清晰地展示了Service Mesh的数据面板和控制面板的运作原理,以及其在Serverless网络通讯中的重要作用。整体而言,本文深入浅出地介绍了基于K8s的Serverless搭建过程,为读者提供了清晰的技术指导和实践思路。文章还介绍了如何在Service Mesh的底座上,通过Knative实现Serverless的完整实现,强调了Knative在Istio的基础上加强了流量管控、灰度发布能力、路由控制等功能,为Serverless应用提供了更全面的支持。文章内容丰富,涵盖了Service Mesh、Istio和Knative等关键技术,为读者提供了搭建私有Serverless环境的全面指南。
《Serverless 入门课》,新⼈⾸单¥29
全部留言(6)
- 最新
- 精选
- 我来也折腾了一番,在老师的帮助下终于调通了. 在此给有需要的小伙伴一个参考: 1. 需要新建一个OTS表user 主键:id 主键类型:INTEGER 顺带,需要插入一条记录,比如: 主键id: 1 属性列名称: users 属性列类型:字符串 属性值: "" 2. 文中的'然后修改项目 k8s-myapp 目录中的 YAML 文件,改成你自己仓库中的 URI。' 可能是`knative-myapp` 代码仓库中后来重命名为了 knative-myapp ---------------------------- 之前在阿里云k8s上看到了"应用目录""服务网格"选项,后来也逐步的尝试了helm,istio. 虽然之前也看到了"Knative(公测)"选项,但一直未尝试. 直到看了老师这篇文章,才知道原来是做这个的.正好这次把它用起来. 话说使用了这个后,k8s的节点负载就开始报警. 原来istio/knative自身就有些系统的pod需要创建,额外每个服务还会多2个sidecar. 导致以下集群中就多了很多pod. 看来老师文中提到的4CPU8G内存还是有必要的. 目前来看,感觉Knative安装还是没有istio方便. 我是跟着另外一个专栏,在集群中安装的Istio 1.5.2版本. 想着阿里云上的Knative才0.11.0版本,而官方已经到了1.14.0版本. 本打算自己按着官方文档安装一番,结果很多镜像拉取不了.最后还是放弃了. 后来在安装阿里云自带的Knative时走了些弯路,花了不少时间. 主要是卸载Knative不干净,导致重装时怎么也装不成功,需要手动删除k8s上的一些资源才行.
作者回复: 每次看到你认真的执行课后作业,我都想给你点赞~! Serverless和K8s,都是要多实践体验,才能有更好的掌握。
2020-05-075 - 程序员二师兄了解到云原生,三驾马车:K8s、Service Mesh、Serverless。还有其他的知识点:lstio、docker、Knative
作者回复: docker容器其实是基础。Istio就是ServiceMesh的一种实现。Knative是Serverless的一种实现。
2020-05-0624 - 小黑小小黑阿里的函数计算是基于knative来实现的吗?
作者回复: 据我所知不是基于Knatvie实现的,阿里巴巴早年的中间件沉淀很深厚,不过没有开源而已。另外,其实不同的语言的FaaS实现方案是不同的。
2020-06-281 - 邵萍kiali控制台的用户名和密码是什么?登不进去呀
作者回复: 默认的应该是admin/admin
2020-12-25 - 小谢同学请问下作者生产环节当中的serverless架构有哪些实践可以优化faas的这个请求联路,因为经过虚拟化、容器、overlay好多层之后网络性能有很多损耗,现在有些企业尝试cilium+istio的方式来尽量减少过多的用户与内核态切换
作者回复: 目前底层的这些性能损耗云服务使用者不用担心,FaaS还没有到如此极致性能压榨阶段,目前Google做的最好,物理机的CPU利用率也只是在50%。 我们只看FaaS的响应时间能否满足业务场景,如果对延迟敏感的应用,还是建议采用CaaS方案。 istio也不是减少用户与内核态切换,istio是给Pod里面加辅助容器接管网络通讯,让应用本身的容器轻量化,单一化。
2020-07-04 - 小谢同学请问下为何不用istio和k8s hpa的原生功能来做服务发现、负载均衡、版本管理等实现呢?感觉knative有些多余啊
作者回复: Knative的底层是建立的istio上的,当然也可以不建立。Knative主要是自动化维护应用生命周期:文稿中拓扑图红色的模块,不仅仅是微服务。
2020-07-01