云计算 频道

无服务器功能构建简单化 功能即服务—OpenFaaS介绍

  【IT168 技术】OpenFaaS是一个构建无服务器功能的框架,它拥有对指标的第一个类支持。任何流程都可以打包为一个功能,使你能够使用一系列web事件,而无需重复的样板化编码。

  亮点

  ·通过UI入口和单击安装轻松使用

  ·为Linux或Windows的任何语言编写函数,以docker/oci图像格式编写包

  ·便携式——在现有的硬件或公共/私有云上运行——Kubernetes或Docker集群

  ·用于模板和定义函数的YAML格式的CLI

  ·Auto-scales随着需求的增加

  OpenFaaS概述


  监督功能

  通过添加功能监视程序(一个小型的Golang HTTP服务器),您可以将任何Docker映像都添加到一个无服务器函数中。

  函数监视程序是入口点,允许通过STDIN将HTTP请求转发到目标进程。通过将应用程序写入STDOUT,将响应发送回调用方。

  网关

  API网关为您的函数提供了一个外部路由,并通过Prometheus收集云的原生数据。

  您的API网关将根据需求来扩展功能,通过更改Docker Swarm或Kubernetes API中的服务副本数。

  UI允许您在浏览器中调用函数,并根据需要创建新的函数。

  CLI

  Docker容器中的任何容器或流程都可以是FaaS中的一个无服务器功能。通过使用FaaS CLI,您可以部署您的函数,或者从诸如Node.js或Python这样的模板中快速创建新的函数。

  CLI演练

  让我们快速查看一个示例函数urlping,它连接到一个远程web服务器,并从响应返回HTTP代码。它是用Python编写的。

  handler.py

  安装faas-cli,也可以在brew中使用

  克隆来自Github的样例和模板:

  在YAML中定义您的函数,或者通过API网关的UI进行部署。


  示例函数YAML文件-urlping.yaml

  在./sample/url ping中使用Python处理程序构建一个Docker映像

  将新映像部署到在YAML文件中定义的网关。

  如果您的网关是远程或多主机集群的一部分,您还可以使用CLI将您的映像推送到远程注册中心或使用faas-CLI-action push的中心

  使用URL https://cli.openfaas.com=200来测试该函数

  在Github库中,可以使用一系列编程语言提供样例函数。

0
相关文章