# openfaas-test **Repository Path**: mai_code/openfaas-test ## Basic Information - **Project Name**: openfaas-test - **Description**: OpenFaaS Experiment. - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-11-13 - **Last Updated**: 2023-12-13 ## Categories & Tags **Categories**: Uncategorized **Tags**: Serverless, Go语言 ## README # README 当前正在维护版本:v2.0 ## 目前已完成工作 ### v1.0版本完成工作 1. 在OpenFaas自带的Prometheus中接入k8s集群性能监控(部分) 需要修改`prometheus-cfg.yml prometheus-rabc.yml prometheus-svc.yml` 参考 [在OpenFaas自带的Prometheus中接入k8s集群性能监控 - EverNorif](https://evernorif.github.io/2022/07/30/在OpenFaas自带的Prometheus中接入k8s集群性能监控/) 2. OpenFaaS CE源码修改使函数副本自动缩减到零 3. OpenFaaS CE添加函数冷启动时延和http请求数指标 2、3工作代码修改参考 [serverless专栏](https://blog.csdn.net/qq_42315242/category_12026972.html) 版本详见 [openfaas-test: v1.0](https://gitee.com/mai_code/openfaas-test/tree/v1.0/) ### v2.0版本完成工作 1. 初步基于Keda实现函数副本弹性伸缩 1. 修改Keda2.11.0源码解决缩容为0兼容问题 1. 修改Keda2.8.0源码解决缩容为0兼容问题 [keda相关文档-更新中](https://gitee.com/mai_code/openfaas-test/tree/master/keda) ## 详细更新日志 1. OpenFaaS CE源码修改使函数副本自动缩减到零 修改镜像: - maiimages/gateway:0.27.3 - 对应代码:images/faas-scale0-v1.0/gateway - maiimages/faas-netes:0.17.2 - 对应代码:images/faas-netes-scale0-v1.0 2. OpenFaaS CE添加函数冷启动时延和http请求数指标-**2023/11/16** 修改镜像: - maiimages/gateway:0.27.4 - 对应代码:images/faas-scale0-v2.0/gateway 3. 解决函数副本伸缩受限问题,上限扩充至50-**2023/11/30** 修改镜像: - maiimages/gateway:0.27.5 - 对应代码:images/faas-scale0-v2.1/gateway 4. 基于Keda实现函数副本弹性伸缩-**2023/12/05** 5. 修改Keda2.11.0源码解决缩容为0兼容问题-**2023/12/05** 6. 修改Keda2.8.0源码解决缩容为0兼容问题-**2023/12/06** 5、6镜像和配置文件见 [keda相关文档-更新中](https://gitee.com/mai_code/openfaas-test/tree/master/keda) ## 文件目录 ``` openfaas ├── keda # keda相关文档、代码 │ ├── keda-deploy # keda部署镜像文件(源码)和配置文件 │ └── scaledobject-yaml # 弹性伸缩管理资源scaledobject配置文件 ├── faas-netes-unchanged # 原版faas-netes代码,备份用 │ ├── faas-netes-0.16.7 │ └── faas-netes-0.17.2 ├── openfaas-images # 修改过的镜像代码 │ ├── faas-netes │ │ ├── faas-netes-scale0-v1.0 # 函数副本自动缩减到零 │ │ └── faas-netes-scale0-v2.0 # 好像和v1.0没啥区别 │ └── faas(gateway) │ ├── faas-scale0-v1.0 # 改了gateway的部分,函数副本自动缩减到零 │ ├── faas-scale0-v2.0 # 改了gateway的部分,添加函数冷启动时延和http请求数指标 │ └── faas-scale0-v2.1 # 函数副本伸缩受限问题 ├── function-template # 函数模板 │ ├── bun │ ├── csharp │ ├── dockerfile │ ├── go │ ├── java11 │ ├── java11-vert-x │ ├── node │ ├── node14 │ ├── node16 │ ├── node17 │ ├── node18 │ ├── php7 │ ├── php8 │ ├── python │ ├── python3 │ ├── python3-debian │ └── ruby └── openfaas-yaml # 修改过的配置文件 ├── yaml-prometheus # 接入k8s集群性能监控,暴露 Prometheus 端口 ├── yaml-prometheus-scale0 # 调整自动伸缩上下限 └── yaml-prometheus-keda # 接入keda指标 ```