通过在函数上挂载 NAS 文件系统,可以实现数据的持久化存储和多函数间共享。本文为您介绍如何使用函数服务对 NAS 文件系统进行读写操作。
本文将使用以下代码包示例为您演示如何读写 NAS 文件系统。代码核心逻辑为:当收到 HTTP 触发请求时,函数会将本次请求的 requestid 记录为 txt 文件,写入挂载的 NAS 文件系统中,并返回收到的所有请求 requestid 和本次请求 requestid。
说明
本代码逻辑仅供参考,实际使用时请根据您的业务场景按需修改。
私有网络 VPC
NAS 文件存储
函数服务
已开通火山引擎函数服务。
登录 函数服务控制台。
在顶部导航栏,选择目标地域。
在 函数列表 页面,单击 创建函数,选择 创建 「事件函数」。
基础配置
自定义函数名称和备注信息。
函数代码
高级配置
启用 VPC 访问和存储配置,其他参数保持默认。
VPC 访问
配置函数要绑定的私有网络 VPC、子网和安全组。其中,函数配置的 VPC 必须与 NAS 挂载点的 VPC 一致。
存储配置
配置 NAS 文件系统、挂载点、远端目录和本地目录。
/doc-nas-1
。/mnt/nas1
。单击 确定,完成函数创建。
上传代码包
在当前函数的代码页签,单击 上传,上传背景信息中提供的代码包示例。
配置环境变量
NAS_LOCAL_PATH:{NAS 挂载点对应的本地目录}
。本示例为NAS_LOCAL_PATH:/mnt/nas1
。说明
本示例代码中,函数服务会通过NAS_LOCAL_PATH
获取当前函数配置的 NAS 文件系统本地目录。
将函数的当前代码和配置发布至线上。
在函数详情页面,单击右上角的 发布。
函数版本使用 Latest。其他参数保持默认。
单击 确定。等待函数发布完成。
在函数详情页面,单击右上角的 测试。
在弹出的函数测试页面,配置触发器类型和测试请求。
单击 测试。等待测试结果。
如图所示:函数返回了收到的所有请求 requestid 和本次请求 requestid,符合预期。
通过 Webshell 登录函数实例,查看本地目录是否写入了以 requestid 命名的 txt 文件。
切换至资源管理页签。
在实例列表中,选择任一运行中的实例,单击 Webshell,登录当前实例。
进入 NAS 挂载点对应的本地目录(本示例为/mnt/nas1
),可以看到目录中写入若干以 requestid 命名的 txt 文件,符合预期。
说明
本代码示例每收到一次请求,会写入以当前请求 requestid 命名的 txt 文件。由于本示例执行了 7 次函数测试,故目录中总共有 7 个文件。