Nomad提供FaaS服务

通过搜索到的材料 https://www.google.com/search?q=nomad+faas&oq=nomad+faas 整理

  1. Katacoda上有一个Nomad整合OpenFaaS的实验环境但是尝试一下,实验环境初始化有问题。

  2. 官方faas-nomad项目OpenFaaS provider for the Nomad scheduler,描述了如何在本地搭建实验环境,文档描述清晰,上手简单。

这篇博客纯命令行,注意修改网关地址,验证可行。

  1. OpenFaaS官方博客Introducing Serverless with Hashicorp Nomad, Consul, and Vault基于Nomad v0.9

  2. Youtube OpenFass 介绍及源码分析 https://www.youtube.com/watch?v=bZtgrAVR9HQ


除了Amazon functions等商业服务外,开源FaaS项目有很多:OpenFaaS, OpenWhisk, Knative, Kubeless, Fission, Fn Project, and Nuclio.

看到Istio 可以在 Nomad+Consul上部署,但是没有严谨地测试过,Knative是基于Kubernetes和Istio的Serverless框架;当前,还是faas-nomad项目可以用于生产环境。

hashicorp宣布对Kubernetes的第一等支持


Jet公司的所有微服务都部署在Nomad上,与Consul、Vault等进行透明集成,Consul用于服务发现,Vault用于秘密管理,Prometheus和Grafana用于监控,Splunk用于日志管理。这意味着如果可以在Nomad上部署公司选择的Serverless运行时,可以以几乎零成本获得所有这些集成。

Jet公司分享的一篇FaaS运行时选型调研中,有这么一张FaaS运行时对比: FaaS运行时对比

在性能考虑上,选用的指标是冷启动时间自动扩缩容效率。文章中关于cold-start time 和 auto-scaler efficiency的性能测试方法可以借鉴,有时间希望复现

提出的观点很犀利:

Don’t call it serverless yet, if you don’t have production ready controllers abstracting away IO interactions between different functions, between functions and external systems, and between functions and their triggers.

文章认为,如果企业已有微服务架构、CI/CD等敏捷开发工具链,使用现有FaaS架构既没有抽象IO,也没有实现预期的降低成本,提高开发人员工作效率的承诺。

该技术选型结论是:目前serverless技术栈不够成熟,与当前的微服务策略相比,无法更加节约成本和改进生产力。

发布者

jahentao

挖掘概念,创造工具