检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
部署环境准备 本章节以Linux主机为例,指导您基于KooCLI和软件开发生产线CodeArts搭建一套FunctionGraph函数的CI/CD。 云服务器ECS 该服务器作为CodeArts部署任务的部署主机,用于部署更新FunctionGraph函数。 规格:1vCPUs |
准备 日志采集和存储 在云日志服务创建日志组,此处以polo.guoying为例,创建过程请参考创建日志组。 在云日志服务创建日志流,此处以lts-topic-gfz3为例,创建过程请参考创建日志流。 在云日志服务配置Agent,快速将ECS等服务器上日志采集到指定的日志组,配置过程请参考安装ICAgent。
扩大资源配额 概述 为防止资源滥用,平台限定了各服务资源的配额,对用户的资源数量和容量做了限制。如您最多可以创建多少台弹性云服务器、多少块云硬盘。 如果当前资源配额限制无法满足使用需要,您可以申请扩大配额。 查看配额 登录管理控制台。 在页面右上角,选择“资源 > 我的配额”。系统进入“服务配额”页面。
什么是FunctionGraph FunctionGraph是一项基于事件驱动的函数托管计算服务。使用FunctionGraph函数,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费,不执行不产生费用。
概述 欢迎使用函数工作流(FunctionGraph)。FunctionGraph是一项基于事件驱动的函数托管计算服务。通过函数工作流,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。此外,按函数实际执行资源计费,不执行不产生费用。
方案概述 应用场景 端侧文件上传云服务器是Web和App应用的一类场景,例如服务运行日志的上报,Web应用图片上传等,函数可作为后端,结合APIG提供通用的API处理这类场景。本章节以NodeJS和Python语言为例,指导用户如何开发后端解析函数,获取上传的文件。 约束与限制 单次请求上传文件大小不超过6MB。
XPRESS: 快速模式,快速模式面向业务执行时长较短,需要极致性能的场景,只支持流程执行时长低于5分钟的场景,不支持执行历史持久化,支持同步和异步调用默认为标准模式 缺省值:NORMAL 枚举值: NORMAL EXPRESS express_config 否 ExpressConfig
XPRESS: 快速模式,快速模式面向业务执行时长较短,需要极致性能的场景,只支持流程执行时长低于5分钟的场景,不支持执行历史持久化,支持同步和异步调用默认为标准模式 缺省值:NORMAL 枚举值: NORMAL EXPRESS express_config 否 ExpressConfig
根据授权精细程度分为角色和策略。 角色:IAM最初提供的一种根据用户的工作职能定义权限的粗粒度授权机制。该机制以服务为粒度,提供有限的服务相关角色用于授权。由于华为云各服务之间存在业务依赖关系,因此给用户授予角色时,可能需要一并授予依赖的其他角色,才能正确完成业务。角色并不能满足用户对精细化授权的要求
使用Go构建FunctionGraph HTTP函数 方案概述 本章节主要指导使用Go语言开发应用的用户,将业务部署到FunctionGraph。 由于HTTP函数本身不支持Go语言直接代码部署,因此本章节将以转换成二进制的方式为例,将Go编写的程序部署到FunctionGraph上。
产品优势 无服务器管理 自动运行用户代码,用户无需配置或管理服务器,专注于业务创新。 高弹性 根据请求的并发数量自动调度资源运行函数,实现透明、准确和实时的伸缩,应付业务峰值的访问。 用户无需关心峰值和空闲时段的资源需要申请多少资源,系统根据请求的数量自动扩容/缩容。自动负载均衡将请求分发到函数运行实例。
2.1则为2.1.0。 将文件打包为netcoreapp2.0.zip压缩包。 压缩包文件名称可随意,但是一定为.zip格式。 测试示例 在华为云FunctionGraph控制台新建一个C#(.NET 2.1)函数,上传打包完成的代码包,如图11所示。 图11 上传代码包 配置一个
配置磁盘挂载 概述 FuncitonGraph提供了文件系统挂载功能,多个函数可以通过共用一个文件系统,实现文件共享。相比于对单个函数实例分配的临时磁盘空间限制,可以极大扩展函数的执行和存储空间。 场景介绍 使用磁盘挂载功能需要开放如下端口: 111、445、2049、2051、2052、20048。
在“/tmp/csharp/release”路径下,执行如下命令,打包test.zip代码库压缩包。 zip -r test.zip ./* 测试示例 在华为云FunctionGraph控制台新建一个C#(.NET 2.1)函数,上传打包好的“test.zip”压缩包,如图1所示。 图1 上传代码包
案例概述 场景介绍 该案例演示客户如何使用FunctionGraph 与IoTDA 服务组合,处理物联网设备上报以及设备状态变动的相关数据。物联网设备在IoTDA 平台进行管理,设备产生的数据可以从IoTDA直接流转触发FunctionGraph 的函数运行。用户可以根据需要编写函数处理这些数据。
状态码 状态码如表1所示 表1 状态码 状态码 返回 说明 200 - 请求成功。 204 - 请求成功。 400 Bad Request 服务器未能处理请求。 401 Unauthorized 被请求的页面需要认证。 403 Forbidden 对被请求页面的访问被禁止。 404
函数开发简介 函数支持的运行时语言 FunctionGraph函数Runtime支持多种运行时语言:Python 、Node.js、Java、Go、C#、PHP、Cangjie及自定义运行时,说明如表1所示。 建议使用相关语言的最新版本。 表1 运行时说明 运行时语言 支持版本 SDK下载
使用APIC触发器 本节介绍创建APIC触发器,使用API调用函数运行。供用户了解APIC触发器的使用方法。(当前特性仅华东-上海一、华东-上海二、华南-广州、亚太-新加坡区域支持) 关于APIC触发器事件源具体介绍请参见支持的事件源。 前提条件 已经创建API分组,此处以API
使用APIG(专享版)触发器 关于APIG触发器事件源具体介绍请参见支持的事件源。 前提条件 已经创建API分组,此处以APIGroup_test分组为例,创建过程请参见创建API分组。 创建APIG触发器 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 单击右
使用APIG触发器 本节介绍创建APIG触发器,使用API调用函数运行。供用户了解APIG触发器的使用方法。 关于APIG触发器事件源具体介绍请参见支持的事件源。 首次使用API网关的用户不再支持共享版服务,老用户仍可继续使用共享版服务。即API网关当前已不提供共享版,目前只有存量用户可以使用共享版。