OpenFunction 0.7.0 发布: OpenFunction Gateway、多语言及 Helm 安装支持
OpenFunction 是一个开源的云原生 FaaS(Function as a
Service,函数即服务)平台,旨在帮助开发者专注于业务逻辑的研发。在过去的几个月里,OpenFunction 社区一直在努力工作,为 OpenFunction 0.7.0 版本的发布做准备。今天,我们非常高兴地宣布
OpenFunction 0.7.0 已经正式发布了!感谢社区各位小伙伴的贡献和反馈!
OpenFunction 0.7.0 为您带来了许多新功能,包括新增 OpenFunction Gateway 作为同步函数入口、 新增 Java 和 NodeJS 同步函数和异步函数支持、新增 Helm 安装方式。
同时, 我们对 OpenFunction 依赖的组件都进行了版本升级。
OpenFunction Gateway
OpenFunction 从 0.5.0 开始采用 Kubernetes Ingress 来提供同步函数的统一入口,并且必须安装一个 nginx-ingress-controller。
在 OpenFunction 0.7.0 中,我们基于 Kubernetes Gateway API 实现了 OpenFunction Gateway 替代之前基于
Kubernetes Ingress 的 Domain 来访问同步函数的方法。
OpenFunction Gateway 提供了更强大、更灵活的函数网关,包含以下特性:
- 可以选择任意支持 Kubernetes Gateway API 的 Gateway 实现,如 Contour, Istio, Apache APISIX, Envoy Gateway 等。
- 可以选择安装默认的 Gateway 实现(Contour), 此时 OpenFunction 将自动创建 Kubernetes Gateway。OpenFunction 也可以使用您环境中现有的 Kubernetes Gateway,只需要您在 OpenFunction Gateway 中引用它即可。
- 可以自定义访问函数的模式,如基于
host的路由模式和基于path的路由模式,在您没有定义函数路由时 OpenFunction 默认提供基于host的路由模式来访问函数。 - 可以在函数路由部分自定义流量应该如何到达函数,OpenFunction 基于 Gateway API HTTPRoute 为您提供了强大的函数路由功能。
- 可以通过函数外部地址在集群外部访问函数,只需要在OpenFunction Gateway 中配置好集群外部可以访问的域名即可(同时支持 Magic DNS 和 Real DNS)。
- 现在 OpenFunction 将流量直接转发到 Knative Revision 而不再经过 Knative 的 Gateway。 如果不需要直接访问 Knative 服务, 您可以忽略 Knative Domain 相关的错误。
将来,OpenFunction 将支持在函数的不同版本之间进行流量分发。
多语言支持
OpenFunction 社区一直在努力完善多语言的支持:
Go
functions-framework-go 发布了 v0.4.0,支持在一个函数中定义多个子函数,并且可以通过不同的 Path 和 Method 分别调用。
Java
functions-framework-java 现在支持同步函数和异步函数。
NodeJS
functions-framework-nodejs 发布了 v0.5.0, 支持同步函数和异步函数,并且支持同步函数触发异步函数。
我们将在近期发布 functions-framework-nodejs v0.6.0,为您带来更多功能比如插件机制、与 SkyWalking 集成等。
OpenFunction 将会在后续版本支持更多语言如 Python、Dotnet 等。
Helm 安装 OpenFunction 及所有依赖组件
原来基于 CLI 安装的方法已弃用。
现在 OpenFunction 支持通过 Helm 安装 OpenFunction 及所有依赖的组件,相比原来通过 CLI 安装的方式更加云原生, 并且解决了部分用户访问 Google Container Registry(gcr.io)镜像受限的问题, 并且将长期维护。
TL;DR
helm repo add openfunction https://openfunction.github.io/charts/
helm repo update
helm install openfunction openfunction/openfunction -n openfunction --create-namespace
依赖组件升级
| Components | OpenFunction 0.6.0 | OpenFunction 0.7.0 |
|---|---|---|
| Knative Serving | 1.0.1 | 1.3.2 |
| Dapr | 1.5.1 | 1.8.3 |
| Keda | 2.4.0 | 2.7.1 |
| Shipwright | 0.6.1 | 0.10.0 |
| Tekton Pipelines | 0.30.0 | 0.37.0 |
本文由博客一文多发平台 OpenWrite 发布!
OpenFunction 0.7.0 发布: OpenFunction Gateway、多语言及 Helm 安装支持的更多相关文章
- Nacos发布0.5.0版本,轻松玩转动态 DNS 服务
阿里巴巴微服务开源项目Nacos于近期发布v0.5.0版本,该版本主要包括了DNS-basedService Discovery,对Java 11的支持,持续优化Nacos产品用户体验,更深度的与Sp ...
- Nacos Committers 团队首亮相,发布 0.9.0 版本
223 天,发布 14 个版本,19 位 Committers,39 位 Contributors. 在宣布开源后的第 223 天,Nacos 发布了其第14个版本 - 0.9.0,该版本提升了 Na ...
- 3.0.0 alpha 重磅发布!九大新功能、全新 UI 解锁调度系统新能力
2022 年 4 月 22 日,Apache DolphinScheduler 正式宣布 3.0.0 alpha 版本发布!此次版本升级迎来了自发版以来的最大变化,众多全新功能和特性为用户带来新的体验 ...
- Redis 3.0正式版发布,正式支持Redis集群
Redis是一个开源.基于C语言.基于内存亦可持久化的高性能NoSQL数据库,同时,它还提供了多种语言的API.近日,Redis 3.0在经过6个RC版本后,其正式版终于发布了.Redis 3.0的最 ...
- RDIFramework.NET平台代码生成器V3.0版本全新发布-更新于20160518(提供下载)
最新版本请转到:RDIFramework.NET平台代码生成器V3.1版本全新发布-更新于2016-10-08(提供下载) RDIFramework.NET代码生成器V3.0版本修改了针对3.0版本的 ...
- Bootstrap v4.0.0-alpha.5 发布,大量更新
Bootstrap v4.0.0-alpha.5 发布了,Bootstrap是快速开发Web应用程序的前端工具包.它是一个CSS和HTML的集合,它使用了最新的浏览器技术,给你的Web开发提供了时尚的 ...
- (转载)一个用于Gnome桌面的下拉式终端: Guake 0.7.0 发布
转自:https://linux.cn/article-5507-1.html Linux的命令行是最好.最强大的东西,它使新手着迷,并为老手和极客的提供极其强大的功能.那些在服务器和生产环境下工作的 ...
- Ionic 2.0.0-rc.1 发布,HTML5 移动应用框架
Ionic 2.0.0-rc.1 发布了,Ionic Framework 是个高级的 HTML5 移动端应用框架,是个很漂亮的使用 HTML5 开发混合移动应用前端框架.本次更新内容如下: Bug 修 ...
- MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题
///MVC4.0中项目发布遇到IE11时session存入URL中,导致记不住密码的问题,在webconfig中配置<system.web><authentication mode ...
- log-malloc2 0.2.4 发布
log-malloc2 0.2.4 发布了,该版本修复了日志格式输出的 bug. og-malloc2 是一个 malloc 日志预加载库,用于检测内存泄漏问题.
随机推荐
- PHP 红包功能代码
前段时间被问这个问题,最近有空就写写啦,还是挺有趣的 首先做下抢红包方法分类: 对于发红包的人来说,一共有大致3类(其他的我暂时没想到,有想到可以联系我呀~) 一.拼手气红包个数不定(完全看运气) 二 ...
- Apache DolphinScheduler 在奇富科技的首个调度异地部署实践
奇富科技(原360数科)是人工智能驱动的信贷科技服务平台,致力于凭借智能服务.AI研究及应用.安全科技,赋能金融机构提质增效,助推普惠金融高质量发展,让更多人享受到安全便捷的金融科技服务.作为国内领先 ...
- Leetcode: 586. Customer Placing the Largest Number of Orders
题目要求如下: 给出的例子如下: 简单地说就是要找出表中订单最多客户的ID. 使用如下的代码进行实现: import pandas as pd def largest_orders(orders: p ...
- grpc断路器之hystrix
上一章介绍了grpc断路器sentinel, grpc断路器之sentinel 但是由于公司线上系统用的告警与监控组件是prometheus,而sentinel暂时还没有集成prometheus,所以 ...
- AvaloniaChat-v0.0.2:兼容智谱AI 快速使用指南
智谱AI介绍 北京智谱华章科技有限公司(简称"智谱AI")致力于打造新一代认知智能大模型,专注于做大模型的中国创新.公司合作研发了中英双语千亿级超大规模预训练模型GLM-130B, ...
- python开发环境安装-包含Anaconda的安装配置和pycharm的安装
一. 需要得安装包 1. Anaconda3-5.3.0-Windows-x86_64.exe python环境 2.pycharm-professional-2021.2.2.exe ...
- 删除链表倒数第N个节点(19)
双指针法 双指针法主要是最开始有两个指针fast,slow都指向链表的虚拟头节点dummy,然后快指针先移动,这里需要先向后移动n+1位(因为你最终是要找到目标节点的前一个节点),然后slow和fas ...
- C语言三子棋
话说自从大一学C语言后用C语言的巅峰也就是第十二届蓝桥杯了,后续开发什么的都是用的java,搞开发java这样的面向对象语言确实用着更顺手方便点.不过C语言YYDS,"C生万物"嘛 ...
- Python 潮流周刊#68:2023 年 Python 开发者调查结果(摘要)
本周刊由 Python猫 出品,精心筛选国内外的 250+ 信息源,为你挑选最值得分享的文章.教程.开源项目.软件工具.播客和视频.热门话题等内容.愿景:帮助所有读者精进 Python 技术,并增长职 ...
- 掌握 C++17:结构化绑定与拷贝消除的妙用
C++17 特性示例 1. 结构化绑定(Structured Binding) 结构化绑定允许你用一个对象的元素或成员同时实例化多个实体. 结构化绑定允许你在声明变量的同时解构一个复合类型的数据结构( ...