更新时间:2025-09-08 GMT+08:00
分享

配置函数的磁盘挂载

本章节介绍如何通过函数工作流控制台,配置函数的磁盘挂载,扩展函数的存储空间。

操作场景

FuncitonGraph支持通过挂载文件系统为函数提供持久化存储能力,挂载文件系统可为函数带来如下优势:

  • 多个函数之间可以挂载同一个文件系统,共享访问已经配置好的文件系统。
  • 利用ECS已有的存储能力,可实现计算资源的动态扩展。
  • 相比于临时存储空间/tmp,可以极大的扩展函数的执行存储空间。

函数的临时存储空间/tmp路径下可存储临时文件,默认为512MB,最大不能超过10,240MB。

FunctionGraph当前支持挂载以下文件系统:

  • SFS Turbo文件系统

    专属弹性文件服务(SFS Turbo)为用户提供一个完全托管的共享文件存储,能够弹性伸缩至PB级规模,最高可提供亚毫秒级低时延、千万级IOPS、百GB带宽。具备高可用性和持久性,为海量的小文件、低延迟高IOPS型应用提供有力支持。文件系统支持使用的区域详情请参见SFS功能总览

  • SFS通用文件系统

    弹性文件服务(Scalable File Service,SFS)通用文件系统为用户提供一个完全托管的共享文件存储,能够弹性伸缩至PB规模、TB级带宽,具备高可用性和持久性,为海量数据、高带宽型应用提供有力支持。通用文件系统支持使用的区域详情请参见SFS功能总览

  • 弹性云服务器ECS共享目录

    ECS共享目录,是通过NFS(网络文件系统)把ECS上的指定目录设置为共享目录,函数可以挂载对应目录进行读写等操作,实现计算资源的动态扩展,同时通过配置特定用户权限能有效进行共享数据的资源管理。适用于轻量级数据处理、文件共享等业务不太频繁的场景。

  • SFS容量型文件系统(仅存量用户支持使用)

    弹性文件服务(Scalable File Service,SFS)容量型文件系统为用户提供一个完全托管的共享文件存储,能够弹性伸缩至PB规模,具备高可用性和持久性,为海量数据、高带宽型应用提供有力支持。详情请参见SFS产品介绍

约束与限制

  • 当前挂载SFS容量型文件系统仅支持存量用户使用,请选择SFS Turbo文件系统、通用文件系统和ECS共享目录进行挂载。各文件系统支持挂载的区域请以控制台展示为准。
  • 请勿在初始化函数中执行挂载磁盘的读写操作,这将导致函数无法读取磁盘中的内容。
  • 使用磁盘挂载功能需要文件系统开放端口:111、445、2049、2051、2052、20048。
    对于Ubuntu系统还需再开放3个端口,获取方式请在任意目录下执行如下命令。
    rpcinfo -p|grep mountd|grep tcp

    具体请参见弹性文件服务会占用用户的哪些资源

前提条件

表1 磁盘挂载前提条件

文件系统来源

前提条件

挂载SFS Turbo文件系统

  • 已创建待挂载的SFS Turbo文件系统,具体操作请参见创建文件系统

    创建SFS Turbo文件系统时请记录文件系统所使用的VPC和子网信息。

  • 已创建挂载SFS Turbo文件系统所需的相关委托,具体操作请参见配置函数的委托权限

挂载通用文件系统

  • 已创建待挂载的通用文件系统,具体操作请参见创建文件系统

    创建通用文件系统时请记录文件系统所使用的VPC和子网信息。

  • 已创建挂载通用文件系统所需的相关委托,具体操作请参见配置函数的委托权限

挂载ECS共享目录

挂载SFS容量型文件系统(仅存量用户使用)

挂载SFS Turbo文件系统

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击函数的名称,进入函数详情页。
  3. 在“设置”页签下选择“权限”,配置函数访问SFS Turbo文件系统的委托。
    1. “函数配置委托”参数选择前提条件中已创建的委托权限。
    2. 单击“保存”完成配置。
  4. 在“设置”页签下选择“网络配置”,配置函数访问SFS Turbo文件系统的VPC网络。
    1. 开启“函数访问VPC内资源”。
    2. 配置“VPC”和“子网”为前提条件中记录的VPC和子网。
    3. 单击“保存”完成配置。
  5. 在“设置”页签下选择“磁盘挂载”。
  6. 单击“添加挂载”,在弹窗中配置SFS Turbo文件系统的挂载信息。
    表2 挂载SFS Turbo文件系统参数说明

    参数

    说明

    取值样例

    用户ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户ID。

    对于SFS Turbo文件系统,保持默认值-1。

    -1

    用户组ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户组ID。

    对于SFS Turbo文件系统,保持默认值-1。

    -1

    文件系统来源

    选择要挂载的文件系统类型,此处选择“SFS Turbo”,即SFS Turbo文件系统。

    SFS Turbo

    文件系统名称

    选择要挂载的SFS Turbo文件系统名称。

    sfs-turbo-fg

    共享目录路径

    文件系统共享的目录路径,路径须以“/”开头,例如:/a。

    不配置表示函数能访问文件系统所有的目录路径。如果配置具体目录路径,则表示函数只能访问该目录路径。

    /a

    函数访问路径

    函数访问文件系统中文件时所使用的目录路径,路径须以“/”开头,且最多设置为两级,建议配置为/mnt/home开头的二级目录。

    不能使用系统已存在的目录,否则会报“failed to mount exist system path”错误。

    例如,共享目录路径为“/a”,其下有文件“/a/b”和“/a/c/d”,函数访问路径为“/mnt/test”,则函数访问文件b和文件d的路径为“/mnt/test/b”和“/mnt/test/c/d”。

    /mnt/test

  7. 单击“确定”,完成挂载配置。

挂载通用文件系统

当前仅“华北-乌兰察布一”区域支持挂载通用文件系统。

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击函数的名称,进入函数详情页。
  3. 在“设置”页签下选择“权限”,配置函数访问通用文件系统的委托。
    1. “函数配置委托”参数选择前提条件中已创建的委托权限。
    2. 单击“保存”完成配置。
  4. 在“设置”页签下选择“网络配置”,配置函数访问通用文件系统的VPC网络。
    1. 开启“函数访问VPC内资源”。
    2. 配置“VPC”和“子网”为前提条件中记录的VPC和子网。
    3. 单击“保存”完成配置。
  5. 在“设置”页签下选择“磁盘挂载”。
  6. 单击“添加挂载”,在弹窗中配置通用文件系统的挂载信息。
    表3 挂载通用文件系统参数说明

    参数

    说明

    取值样例

    用户ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户ID。

    对于SFS Turbo文件系统,保持默认值-1。

    -1

    用户组ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户组ID。

    对于SFS Turbo文件系统,保持默认值-1。

    -1

    文件系统来源

    选择要挂载的文件系统类型,此处选择“通用文件系统”。

    通用文件系统

    文件系统名称

    选择要挂载的通用文件系统名称。

    sfs-fg

    函数访问路径

    函数访问文件系统中文件时所使用的目录路径,路径须以“/”开头,且最多设置为两级,建议配置为/mnt/home开头的二级目录。

    不能使用系统已存在的目录,否则会报“failed to mount exist system path”错误。

    例如,共享目录路径为“/a”,其下有文件“/a/b”和“/a/c/d”,函数访问路径为“/mnt/test”,则函数访问文件b和文件d的路径为“/mnt/test/b”和“/mnt/test/c/d”。

    /mnt/test

  7. 单击“确定”,完成挂载配置。

挂载ECS共享目录

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击函数的名称,进入函数详情页。
  3. 在“设置”页签下选择“权限”,配置函数访问ECS共享目录的委托权限。
    1. “函数配置委托”参数选择前提条件中已创建的委托。
    2. 单击“保存”完成配置。
  4. 在“设置”页签下选择“网络配置”,配置函数访问ECS共享目录的VPC网络。
    1. 开启“函数访问VPC内资源”。
    2. 配置“VPC”和“子网”为前提条件中记录的VPC和子网。
    3. 单击“保存”完成配置。
  5. 在“设置”页签下选择“磁盘挂载”。
  6. 单击“添加挂载”,在弹窗中配置ECS共享目录的挂载信息。
    表4 挂载ECS共享目录参数说明

    参数

    说明

    取值样例

    用户ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户ID。

    • 对于使用Windows系统的ECS,保持默认值-1。
    • 对于使用Linux系统的ECS,为系统中的uid。例如Linux系统的用户名为test-user,则可以在系统中使用用id test-user命令查询uid和gid。

    -1

    用户组ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户组ID。

    • 对于使用Windows系统的ECS,保持默认值-1。
    • 对于使用Linux系统的ECS,为系统中的gid。例如Linux系统的用户名为test-user,则可以在系统中使用用id test-user命令查询gid。

    -1

    文件系统来源

    选择要挂载的文件系统类型,此处选择“ECS”,即ECS共享目录。

    ECS

    云服务器名称

    选择要挂载的ECS名称。

    ecs-fg

    共享目录路径

    文件系统共享的目录路径,请输入实际存在的路径,路径须以“/”开头,例如:/a。

    不配置表示函数能访问文件系统所有的目录路径,如果配置具体目录路径,则表示函数只能访问该目录路径。

    /a

    函数访问路径

    函数访问文件系统中文件时所使用的目录路径,路径须以“/”开头,且最多设置为两级,建议配置为/mnt/home开头的二级目录。

    不能使用系统已存在的目录,否则会报“failed to mount exist system path”错误。

    例如,共享目录路径为“/a”,其下有文件“/a/b”和“/a/c/d”,函数访问路径为“/mnt/test”,则函数访问文件b和文件d的路径为“/mnt/test/b”和“/mnt/test/c/d”。

    /mnt/test

  7. 单击“确定”,完成挂载配置。

在ECS创建NFS共享目录

挂载SFS容量型文件系统(仅存量用户支持使用)

  1. 登录函数工作流控制台,在左侧的导航栏选择“函数 > 函数列表”。
  2. 单击函数的名称,进入函数详情页。
  3. 在“设置”页签下选择“权限”,配置函数访问SFS容量型文件系统的委托权限。
    1. “函数配置委托”参数选择前提条件中已创建的委托。
    2. 单击“保存”完成配置。
  4. 在“设置”页签下选择“磁盘挂载”。
  5. 单击“添加挂载”,在弹窗中配置SFS容量型文件系统的挂载信息。
    表6 挂载SFS容量型文件系统参数说明

    参数

    说明

    取值样例

    用户ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户ID。

    对于SFS容量型文件系统,保持默认值-1。

    -1

    用户组ID

    函数访问文件系统所需要的身份标识,取值范围为-1或1~65534的整数且不包含1000和1002,默认值为-1,表示由系统自动分配用户组ID。

    对于SFS容量型文件系统,保持默认值-1。

    -1

    文件系统来源

    选择要挂载的文件系统类型,此处选择“SFS”,即SFS容量型文件系统。

    SFS

    文件系统名称

    选择要挂载的SFS容量型文件系统名称。

    SFS-fg

    共享目录路径

    文件系统共享的目录路径,路径须以“/”开头,例如:/a。

    不配置表示函数能访问文件系统所有的目录路径,如果配置具体目录路径,则表示函数只能访问该目录路径。

    /a

    函数访问路径

    函数访问文件系统中文件时所使用的目录路径,路径须以“/”开头,且最多设置为两级,建议配置为/mnt/home开头的二级目录。

    不能使用系统已存在的目录,否则会报“failed to mount exist system path”错误。

    例如,共享目录路径为“/a”,其下有文件“/a/b”和“/a/c/d”,函数访问路径为“/mnt/test”,则函数访问文件b和文件d的路径为“/mnt/test/b”和“/mnt/test/c/d”。

    /mnt/test

  6. 单击“确定”,完成挂载配置。

相关文档