检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
案例概述 场景介绍 通过CTS云审计服务,完成对公有云账户对各个云服务资源操作动作和结果的实时记录。 通过在函数工作流服务中创建CTS触发器获取订阅的资源操作信息,经由自定义函数对资源操作的信息进行分析和处理,产生告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。处理流程如图1所示。
创建委托 使用华为云Serverless应用中心部署Stable-Diffusion WebUI应用需要FunctionGraph服务与其他云服务协同工作,因此需要通过配置委托给FunctionGraph授权必要的云服务资源的操作权限,且委托授权的生效需要15-30分钟才能生效,所以强烈建议您提前创建委托。
json文件。 npm init -y npm i koa 创建index.js文件,在index.js文件中引入koa框架,koa框架的使用参考koa指南。 代码示例: const Koa = require("koa"); const app = new Koa(); const
js项目,本案例采用本地运行Docker node:18.15.0镜像的方式,同样适用于其他Linux系统。关于Docker镜像和Linux操作系统的使用并非本案例主要内容,不做过多赘述。 启动Docker容器并进入code目录(原生Linux系统忽略)。 docker run -it --network=host
事件函数 v2版本在创建函数时,页面会出现参数“函数类型”,区分事件函数和HTTP函数。 概述 FunctionGraph支持事件类型函数。事件是指用于触发函数,通常为JSON格式的请求。用户作为事件源(事件的生产者),可以通过云服务平台或CodeArts IDE Online触
函数工作流每个月会给您免费提供一定额度的函数工作流服务,免费额度是子主账户共同使用,更多详情请参考免费额度。 费用账单 您可以在“费用中心 > 账单管理”查看与函数工作流相关的流水和明细账单,以便了解您的消费情况。如需了解具体操作步骤,请参见费用账单。 欠费 您在使用函数工作流时,账户的可用额度小于待结算的账单,
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
为Python函数制作依赖包 打包环境中的Python版本要和对应函数的运行时版本相同,如Python2.7建议使用2.7.12及以上版本,Python3.6建议使用3.6.3以上版本。 为Python 2.7安装PyMySQL依赖包,并指定此依赖包的安装路径为本地的/tmp/pymysql下,可以执行如下命令。
选择待配置的函数,单击进入函数详情页。 选择“设置 > 生命周期”,开启“初始化配置”。 图1 开启初始化配置 表1 初始化配置参数说明 参数 说明 配置初始化函数 如需初始化,请开启此参数。 初始化超时时间(秒) 函数初始化的超时时间,如开启函数初始化功能则设置,不开启则不设置。 函数初始化超时时间设置范围为1-300秒。
图片上传至your-bucket-input桶,使用工具模拟客户端触发函数流运行,将上传图片旋转180°,并以流数据返回给客户端。 上传图片 登录对象存储服务控制台,进入your-bucket-input桶对象界面,上传image.jpeg图片如图1,上传完成后如图2所示。 图1 示例 图2 上传图片 使用postman触发函数流执行
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
已拥有华为云账号且已实名认证。 华为云账号未欠费,且有足够金额购买本案例所涉及的资源。 已创建OBS桶,用于存放打包好的依赖包文件,更多详情请参见创建桶。 开始使用本案例前请在本地安装好18.15.0版本的Node.js运行环境。 当前华为云函数工作流服务支持的Node.js运行时最高版本为18.15
类型。 操作步骤 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。 选择待配置的函数,单击进入函数详情页。 选择“设置 > 高级设置”,开始配置。 开启“配置心跳函数”开关,并填写心跳函数入口。 图1 配置心跳函数 表1 心跳函数配置说明 参数 说明 配置心跳函数
事件发生的主题或对象,用以标识哪个具体对象发生了当前事件 输入过滤表达式 基于上一个流程的json输出参数,可以使用JSONPath格式来选择性的过滤出当前流程的输入参数。 输出过滤表达式 基于当前流程的json输出参数,可以使用JSONPath格式来选择性的过滤出下一流程的输出参数。 父主题: 函数流组件配置说明
该函数的请求并发数和预留实例数。 内存使用量 MB 最大内存使用量为某统计粒度(周期)下,即某一时间段内单次函数执行最大的内存使用量。 最小内存使用量为某统计粒度(周期)下,即某一时间段内单次函数执行最小的内存使用量。 平均内存使用量为某统计粒度(周期)下,即某一时间段内单次函数执行平均的内存使用量。 父主题:
sha256)。 将获取的Eclipse插件jar/zip包,放入Eclipse安装目录下的plugins文件夹中,重启Eclipse,即可开始使用Eclipse插件。如图1所示。 图1 安装插件 打开Eclipse,单击“File”,选择“New > Other”,如图2所示。 图2
deploy部署函数。 指令使用方法 华为云函数工作流(FunctionGraph)组件全部支持的能力如表1所示: 表1 组件支持能力介绍 构建&部署 发布&配置 其他功能 部署deploy 版本 version 项目迁移fun2s 删除remove 别名alias - 在使用华为云函数工作流
CTS支持的FunctionGraph操作列表 云审计支持的FunctionGraph操作列表如表1所示。 表1 云审计服务支持的FunctionGraph操作列表 操作名称 资源类型 事件名称 创建函数 Functions createFunction 删除函数 Functions
管理函数流任务 查看函数流任务 登录函数工作流控制台,左侧导航栏单击“函数流”。 在函数流列表页面,支持设置函数流任务卡片显示和列表显示。 图1 设置显示方法 卡片显示 图2 卡片显示 列表显示 图3 列表显示 在函数流页面,可以查看所有已创建的函数流任务,您可以执行如表1中的管理操作。
添加事件源 添加APIG触发器(每个函数分别创建触发器),通过HTTP请求调用函数。 填写API名称,选择分组、发布环境、认证、请求协议、超时时间等配置,单击”确定”完成触发器创建,如图1所示。 图1 创建触发器 创建后可以获得一个调用URL,通过这个URL进行函数的调用,如图2所示。