【实战】用kubeless搭建本地无服务器计算环境
无服务器计算(Serverless Computing,以下简称SC)的概念最近很流行,甚至被解读为第四代技术架构。就像出行服务:最早的时候,我们需要有辆车才能驾车出行(Physical Machine);后来我们只需要从提供汽车租赁服务的公司租辆车就可以满足出行需求(VM及微服务);再后来我们不需要自己开车,通过手机就可以即时或者定时地给自己或他人安排接送服务(Serverless)。
SC在保障企业基础架构代运维的同时,又完全满足了应用开发的客制化。它首次提出了“功能即服务(Function-as-a-Service,FaaS)”的概念,它将一些常用的服务预打包好,比如AWS Lambda(AWS的SC云)的SES(邮件服务)、队列服务、CI/CD管道服务等等。
严格意义上说,FaaS只是SC服务的一类形式,此外还有后端即服务(Backend-as-a-Service,BaaS)以及基于FaaS的数据库。前者提出了无运维(NoOps)的概念,开发上线的应用不用担心可用性的问题;后者将传统意义的数据库服务变得更灵活,无需担心容量不够或超分问题,按实际使用收费,适用于无法预知的读写压力(如新站点)、周期性压力(如定期交付的开发测试项目)以及间断性压力(如博客)。
相较于PaaS服务,SC架构的自动化程度更高,对于开发环境的依赖度更低,且应用只在被调用时唤醒因此收费更加合理。
除了AWS有自己的SC云Lambda之外,知名的云服务厂商Azure也有自己的SC云Functions,Google有Cloud Functions。除此之外我们也可以借助一些开源工具,比如Kubeless来搭建本地的SC环境。
Github上有kubeless的安装包,截至小编访问的时候,版本是上月的V1.0.2。
下载下来后,根目录下的README.MD文件里有详尽的使用介绍。参照帮助文档,我们首先解压zip包,安装kubeless。
然后按照实例,创建命名空间和触发器,触发器包括http调用的触发器和cron计划任务的触发器。
接下来按照帮助文档,我们安装python和nodejs的运行时。根据需要,您可以选择自己擅长的编译语言。
拿NODEJS为例,实例程序是获取输入,然后输出“Hello World!”
NODEJS的function名为myfunction,测试时根据帮助文档获得的命令kubeless function call myfunction --data '字符串'可验证测试结果。同时通过kubeless logs可以查看function被调用的日志。
除了定义SC相关服务外,Kubeless还可以定义网络规则,限定不同客户机对服务的访问权限,这里就不一一赘述了,对无服务器计算感兴趣的同学可以上github.com/kubeless/kubeless站点自己试一把哈~
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里云云计算专业认证考试(Alibaba Cloud Certified Professional,ACP)
认证介绍 阿里云云计算专业认证(ACP级-Alibaba Cloud Certified Professional)是面向使用阿里云云计算产品的架构、开发、运维类人员的专业技术认证,主要涉及阿里云的计算、存储、网络、安全类的核心产品。通过该技术认证可以有效证明该认证人员具备以下能力: 具备IT、云计算及网络安全相关从业的基础知识 能够根据企业的业务需求,基于阿里云的产品制定有效的技术解决方案和企业最佳实践 能够熟练的使用和操作阿里云的云服务器ECS、负载均衡SLB、对象存储OSS、专有网络VPC、弹性伸缩(Auto Scaling)、内容分发网络CDN、云盾及云监控产品 能够诊断基于阿里云云计算产品构建的业务系统在运行中出现的常见问题并找到相应的解决方案 认证考试的报名方式 通过阿里云官网提供的入口进行在线报名: 报名入口 认证所需具备的知识 阿里云相关的知识: 熟悉阿里云云计算相关产品的基本概念,包括云服务器ECS、负载均衡SLB、弹性伸缩(Auto Scaling)、对象存储OSS、内容分发网络CDN、专有网络VPC、云盾和云监控(下同) 了解阿里云云计算相关产品的主要应用场景及组...
- 下一篇
一文了解Kubernetes的前世今生
近十几年来,IT领域新技术、新概念层出不穷,例如DevOps、微服务(Microservice)、容器(Container)、云计算(Cloud Computing)和区块链(Blockchain)等,直有“乱花渐欲迷人眼”之势。另外,出于业务的需要,IT应用模型也在不断地变革,例如,开发模式从瀑布式(Waterfall)到敏捷(Agile)再到精益(Lean),甚至是与QA和Operations融合的DevOps,应用程序架构从单体(monolithic)模型到分层模型再到微服务,部署及打包方式从面向物理机到虚拟机再到容器,应用程序的基础架构从自建机房到托管再到云计算,等等,这些变革使得IT技术应用的效率大大提升,同时却以更低的成本交付更高质量的产品。尤其是以Docker为代表的容器技术的出现,终结了DevOps中交付和部署环节
相关文章
文章评论
共有0条评论来说两句吧...