检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
FunctionGraph的函数如何读写上传的文件? 函数工作目录权限说明 函数可以读取代码目录下的文件,函数工作目录在入口文件的上一级,例如用户上传了文件夹backend,需要读取与入口文件同级目录的文件test.conf,可以用相对路径“code/backend/test.c
如何制作基于ODBC驱动的Python语言函数依赖包? 对于依赖操作系统的包(以unixODBC为例),需要下载源码编译制作依赖包: 通过ecs控制台页面登录ecs机器(确保gcc、make工具安装完成),执行如下命令下载相关源码包。 wget 源码路径 若下载包为zip文件,执行如下命令进行解压:
处理文件 当文件上传后更新至dew-bucket-input桶时,会生成事件,触发函数运行,将文件加解密,保存在dew-bucket-output中。 上传文件生成事件 登录对象存储服务控制台,进入dew-bucket-input桶对象界面,上传image.jpg文件,如图1所示。
从OBS桶中下载文件 场景描述 本章节以Python 2.7为例,指导您通过API创建FunctionGraph函数和Timer触发器,实现定时从OBS桶中下载文件。 API的调用方法请参见如何调用API。 前提条件 已在OBS服务中上传文件,并记录文件名、文件所在的OBS桶名,以及OBS地址的链接。
文件系统/云服务器名称:选择创建的文件系统或者云服务器资源,注意函数配置的VPC和委托要有访问权限。 共享目录路径:如果选择ECS挂载需要配置远端共享目录,请参见ECS创建nfs共享目录。 函数访问路径:为本地文件系统挂载目录,不能是系统已存在目录。建议使用/mnt/ 下二级子目录,例如/mnt/test。
Yaml文件 字段解析 表1 参数说明 参数 必填 类型 参数描述 region True Enum 地域 function True Struct 函数 triggers False Struct 触发器 Yaml完整配置 华为云函数工作流(FunctionGraph)组件的Yaml字段如下:
、引入OBS文件等方式上传代码,函数工程的打包规范说明如表1所示。 表1 函数工程打包规范 编程语言 JAR包 ZIP包 OBS文件 Node.js 不支持该方式 假如函数工程文件保存在“~/Code/”文件夹下,在打包的时候务必进入Code文件夹下选中所有工程文件进行打包,这样
aph即可运行,无需其它的部署操作。 制作ZIP包的时候,单函数入口文件必须在根目录,保证解压后,直接出现函数执行入口文件,才能正常运行。 对于Go runtime,必须在编译之后打zip包,编译后的动态库文件名称必须与函数执行入口的插件名称保持一致,例如:动态库名称为testplugin
在华为云购买一台EulerOS的ECS弹性云服务器,请参见购买并登录Linux弹性云服务器。在基础配置环节选择公共镜像时,选择Huawei Cloud EulerOS操作系统和具体的镜像版本。 下载EulerOS镜像,在本地使用虚拟化软件搭建EulerOS系统的虚拟机。 为Python函数制作依赖包
上传代码操作步骤。如果创建的函数类型是HTTP函数,请参考配置HTTP函数的代码包。制作zip代码包文件时,单函数的执行入口文件必须在根目录,确保解压后直接出现函数的执行入口文件,代码才能正常部署,如需修改函数执行入口,请参见修改函数执行入口。 约束与限制 请参考表1查看所使用的
图1 创建工程 添加工程依赖 根据Java SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压 配置依赖 在工程目录下创建lib目录,将zip中的Runtime2.0.5.jar和代码所需要的三方依赖包拷贝到该目录
图1 创建工程 添加工程依赖。 根据Java SDK下载提供的SDK地址,下载JavaRuntime SDK到本地开发环境解压,如图2所示。 图2 下载SDK解压 将zip中的Runtime-2.0.5.jar拷贝到本地目录,例如d:\\runtime中,在命令行窗口执行如下命令安装到本地的maven仓库中。
在华为云购买一台EulerOS的ECS弹性云服务器,请参见购买并登录Linux弹性云服务器。在基础配置环节选择公共镜像时,选择Huawei Cloud EulerOS操作系统和具体的镜像版本。 下载EulerOS镜像,在本地使用虚拟化软件搭建EulerOS系统的虚拟机。 为Python函数制作依赖包
s_cloudtable.zip)文件,解压缩目录如图8所示。使用Table Tester.jar替换DIS Test.jar,替换文件目录后如图9所示。打ZIP包,如图10所示,得到disdemo.zip文件。 图8 文件目录 图9 替换后文件目录 图10 打ZIP包 创建函数
使用FunctionGraph函数定时开关华为云ECS 应用场景 当您需要在特定时间打开或者关闭华为公有云虚拟机时,可以考虑通过函数服务调用华为云ECS接口,定时开关虚拟机。 开机节点:需要定时打开的虚拟机。 关机节点:需要定时关闭的虚拟机。 前提条件 根据实际业务,获取定时开启华为公有云虚拟机的程序包或者定时关闭华为公有云虚拟机的程序包。
示。 图4 创建文件 点击右键,选择“重命名”可以对文件和文件夹进行重命名,选择“删除”可以删除,如图5所示。 图5 文件重命名 在左侧“文件”下拉菜单中选择“新建文件夹”,新建文件夹并命名,如图1中所示。 点击右键,选择“新建文件”可以在该文件夹目录下新建文件,在该菜单栏中,可
方案概述 应用场景 端侧文件上传云服务器是Web和App应用的一类场景,例如服务运行日志的上报,Web应用图片上传等,函数可作为后端,结合APIG提供通用的API处理这类场景。本章节以NodeJS和Python语言为例,指导用户如何开发后端解析函数,获取上传的文件。 约束与限制 单次请求上传文件大小不超过6MB。
Turbo文件系统,具体操作请参见创建文件系统。 创建SFS Turbo文件系统时请记录文件系统所使用的VPC和子网信息。 已创建挂载SFS Turbo文件系统所需的相关委托,具体操作请参见配置函数的委托权限。 挂载ECS共享目录 已创建待挂载的ECS,具体操作请参见购买ECS。 创
建、更改和版本控制基础设施。用户通过这些配置文件声明他们想要的基础设施最终状态,而不需要具体指定如何实现这个状态。 Terraform的优势: 提升架构一致性:减少手动配置过程中的错误和配置漂移。 降低运维成本:通过编程方式管理虚拟机,减少手动配置硬件及更新的需求。 提升操作效率
客户端上传文件到OBS,触发FunctionGraph函数,在上传数据后立即进行处理。可以使用FunctionGraph实时创建图像缩略图、转换视频编码、进行数据文件汇聚、筛选等。 其优势有: 灵活扩展,业务爆发时可以自动调度资源运行更多函数实例以满足处理需求。 事件触发,通过上传文件到