检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
部署环境准备 本章节以Linux主机为例,指导您基于KooCLI和软件开发生产线CodeArts搭建一套FunctionGraph函数的CI/CD。 云服务器ECS 该服务器作为CodeArts部署任务的部署主机,用于部署更新FunctionGraph函数。 规格:1vCPUs |
使用CodeArts托管函数代码 步骤一:新建项目 步骤二:函数代码托管 步骤三:配置部署主机 步骤四:搭建函数部署脚本更新流水线 步骤五:搭建函数更新流水线 父主题: 自动化部署
起始位置对应DIS服务中的游标类型,用来选择从DIS通道中读取数据的位置: TRIM_HORIZON:从最早被存储至分区的有效记录开始读取。 例如,某租户使用DIS的通道,分别上传了三条数据A1,A2,A3。N天后(设定A1已过期,A2和A3仍在有效期范围内),该租户需要下载此三条数据,并选择了TRIM_HORI
函数工程打包规范 打包规范说明 函数除了支持在线编辑代码,还支持上传ZIP、JAR、引入OBS文件等方式上传代码,函数工程的打包规范说明如表1所示。 表1 函数工程打包规范 编程语言 JAR包 ZIP包 OBS文件 Node.js 不支持该方式 假如函数工程文件保存在“~/Cod
请参考依赖包管理,了解更多。 为Python函数制作依赖包 打包环境中的Python版本要和对应函数的运行时版本相同,如Python2.7建议使用2.7.12及以上版本,Python3.6建议使用3.6.3以上版本。 为Python 2.7安装PyMySQL依赖包,并指定此依赖包的安装路径为本地的/
函数支持的运行时语言Python和Node.js,新增支持Python 3.9、Node.js 14.18版本。 商用 Node.js函数开发指南 Python函数开发指南 2021年12月 序号 功能名称 功能描述 阶段 相关文档 1 新增调用链 用户通过页面函数配置开启调用链,开启后可以链
触发器配置如图1所示。 图1 创建LTS触发器 LTS日志服务的消费端在日志累积大小或日志累积时间满足条件时消费LTS日志数据,并根据订阅该组LTS日志数据的函数URN触发函数执行。 父主题: 函数+LTS:日志实时分析实战
发器配置如图1所示。 图1 创建LTS触发器 云日志服务LTS的消费端在日志累积大小或日志累积时间满足条件时消费LTS日志数据,并根据订阅该组LTS日志数据的函数URN触发函数执行。 父主题: 函数+LTS:日志实时过滤
连接DCS单机、主备、读写分离、Proxy集群实例 from redis.backoff import ExponentialBackoff from redis.retry import Retry from redis.client import Redis from redis
制作依赖包 制作函数依赖包推荐在Huawei Cloud EulerOS 2.0环境中进行。使用其他系统打包可能会因为底层依赖库的原因,运行出问题,比如找不到动态链接库。 如果安装的依赖模块需要添加依赖库,请将依赖库归档到zip依赖包文件中,例如,添加.dll、.so、.a等依赖库。
String 文档数据库名称(DDS触发器参数)。 db_password String 文档数据库密码(DDS触发器参数)。 db_user String 文档数据库用户名(DDS触发器参数)。 instance_addrs Array of strings 文档数据库实例地址(DDS触发器参数)。
步骤一:新建项目 登录软件开发生产线CodeArts控制台,进入CodeArts操作页面。 单击“立即使用”,跳转至“新建项目”页面。 单击“新建项目”,选择“项目模板 > Scrum”。 输入项目名称“function”,其他配置保持默认。 完成后单击“确定”。 父主题: 使用CodeArts托管函数代码
步骤三:配置部署主机 在CodeArts界面,在“设置 > 通用设置”页签下,选择“主机组管理”,单击“新建主机组”。 输入主机组名“deploy-function”,单击“保存”: 图1 填写主机组名 在跳转界面“主机信息”页签下,单击“导入ECS”。 将部署环境准备的ECS云
obtained. Please set an agency. 目前函数模板新增定时开启/停止华为公有云数据库的RDS实例模板能力,可有效帮助您管理资源、降低维护成本。 图2 定时开启/停止华为公有云数据库模板 图3 填写基本信息 步骤二:测试函数 在函数详情页,单击“测试”,在弹窗中创建新的测试事件。
deploy.py代码示例 # -*-coding:utf-8 -*- import os import sys import json import logging import subprocess from yaml import load from base64 import
本例提供了为文件加/解密的程序包,使用空白模板创建函数,用户可以使用示例代码学习使用。 创建程序包 本例使用Java8语言实现加/解密的功能,有关函数开发的过程请参考Java函数开发。本例不再介绍业务功能实现的代码,样例代码目录如图1所示。 图1 样例代码目录 其中FileEncryptAndDecryp
步骤五:搭建函数更新流水线 此流水线的主要作用是将functions仓库的helloworld函数代码配置发布更新到FunctionGraph平台。 新建构建任务 在“构建&发布 > 编译构建”页面,单击“新建任务”。 源码仓库选择functions仓库,构建模板选择“空白构建模板”。
转换。 通过函数工作流服务中的函数创建LTS触发器获取日志数据,经由自定义函数对日志中的关键信息进行分析和处理,过滤出告警日志。 SMN消息通知服务通过短信和邮件推送告警信息,通知业务人员进行处理。 将函数处理后的日志数据投递至OBS桶中集中存储,便于后续处理。处理流程如图1。 图1
步骤四:搭建函数部署脚本更新流水线 此流水线的主要作用是将函数部署脚本deploy.py发布到部署主机上,供函数更新流水线使用。 新建构建任务 在“构建&制品 > 编译构建”页面,单击“新建任务”。 源码仓库选择“functions仓库”,构建模板选择“空白构建模板”,完成单击“确定”。
应用场景 若您在FunctionGraph服务中使用如下场景,请先创建委托。创建委托时授予的权限类型请您根据实际业务需要进行调整,比如前期您在开发阶段授予Admin权限,后期在生产环境中建议您调整为细粒度最小使用权限,保证业务所需权限的同时,也降低权限过大的风险。具体对应授权项参见表1