You need to enable JavaScript to run this app.
导航
内网数据互访
最近更新时间:2025.03.21 10:51:32首次发布时间:2025.03.20 19:35:22
我的收藏
有用
有用
无用
无用

火山引擎私有网络(VPC,Virtual Private Cloud)为云上资源构建隔离的、自主配置和管理的虚拟网络环境。在一些数据训练、业务上云后,需要内网上传和访问存入 veImageX 的资源。使用内网可以提高可靠性、安全性,并降低延时、节省流量费用。本文将为您介绍数据在火山云上内网流转的最佳实践与配置。

业务场景

本章节介绍内网数据互访的常见业务场景。

场景一:云上 VPC 内的服务读写 veImageX 内的资源

当您的应用服务部署在火山引擎的 VPC 网络中时,可以通过内网访问 veImageX 服务,实现安全、高效的数据上传和访问。veImageX 在华北 2 地域提供服务,如果您的私有网络 VPC 所属的区域也是华北 2,则可通过创建一个接口终端节点,使用 veImageX VPC 中部署的服务资源。
如果您在其他地域(例如华东 2)创建了 VPC,想要访问 veImageX 服务,就需要购买云企业网来实现跨地域的网络互通。云企业网是火山引擎提供的一种网络互联服务,它可以帮助用户建立跨地域、跨账号的私有网络互通,因此需要购买云企业网来打通华北 2 和华东 2 地域之间的网络连接。
Image

场景二:veImageX 访问和操作“外部”云上存储资源

veImageX 服务可以通过内网访问 VPC 网络内的其他云服务,例如 ECS 等,实现内网访问和操作资源。

  1. 火山引擎 ECS 云服务器为例,在 ECS 云服务器上生产的资源,比如 GPU 服务器上的 AIGC 大模型生产的资源,可通过内网上传到 veImageX 存储。
  2. veImageX 服务可以内网访问和操作 veImageX 存储,达到内网访问和操作云上资源的目的。

Image

  • 场景示例:通过 SDK 或者 API 调用 veImageX 的能力时,veImageX 需要对外发起请求拉取资源。以使用智能背景移除获取结果图接口为例,调用此接口需要传入 StoreUri, 传入该字段需要保证咨资源已经存入 veImageX 中,否则会访问不通。假如资源已经存入火山引擎对象存储 TOS,则可以用如下思路进行内网访问。
  • 解决思路:将 ECS 云服务器作为中转站,内网读取 TOS 资源,再通过内网上传到 veImageX 存储。
    1. 创建一个 ECS 云服务器,可云上内网访问火山引擎 TOS。(可选择挂载桶的方式,也可以直接在 ECS 上自行实现拉取 TOS 资源逻辑)。
    2. 使用内网上传将资源内网传入 veImageX。
      Image

操作指南

内网访问

veImageX 支持用户通过 VPC 内网访问 veImageX,以下将为您介绍如何在 veImageX 配置内网访问功能。

使用说明

  • 使用内网访问功能需要开通火山引擎私网连接服务、私网解析 PrivateZone 服务,跨地域访问还需要开通云企业网服务,使用上述服务可能产生费用。veImageX 不针对内网访问功能加收额外费用。
  • 通过私网连接访问 veImageX 默认使用 HTTP 协议和终端节点域名。

场景一:同地域访问

veImageX 在华北 2 地域提供服务,针对您的私有网络 VPC 所属的区域也是华北 2 的场景。

步骤一:创建私有网络

说明

如您已有华北 2(北京)地域的私有网络,请跳过此步骤。

  1. 登录火山引擎私有网络控制台,单击创建私有网络

  2. 参考下表,配置私有网络信息。

    类别

    参数

    说明

    示例

    基本信息

    地域

    选择私有网络所属的地域,此处选择华北2(北京)

    华北2(北京)

    名称

    输入私有网络的名称。

    vpc-test

    网络段

    IPv4 CIDR

    设置私有网络的IPv4网段,私有网络创建成功后,不支持修改网段。支持网段如下:

    • 10.0.0.0/8~24
    • 172.16.0.0/12~24
    • 192.168.0.0/16~24

    192.168.0.0/16

    子网

    可用区

    可用区是指同一地域中电力、网络隔离的物理地域。在同一私有网络内,可用区之间私网互通。您可以将私有网络中的各子网部署在不同可用区中,实现可用区间的资源容灾。您也可以将各子网部署在同一可用区,实现更低的网络延时。

    可用区A

    名称

    输入子网的名称。

    subnet-test

    IPv4 CIDR

    设置子网的地址段。

    • 网段必须在私有网络地址范围内,且不同子网之间的网段不能重叠。
    • 每个子网网段的前两个和最后一个 IP 地址为系统保留地址,分别用作网络地址、网关地址和广播地址。如子网网段为 192.168.1.0/24,系统保留地址为 192.168.1.0192.168.1.1192.168.1.255,不可使用。
    • 子网创建成功后,网段不允许修改。

    192.168.0.0/24

    添加子网

    单击添加子网可以同时创建多个子网。最多可同时创建3个子网。网段必须在私有网络地址范围内,且不可与已有子网地址重叠

    /

    更多信息

    项目

    选择私有网络及其子网的项目。更多信息请参见项目管理

    • 若在顶部导航栏选择账号全部资源,则本参数您可以下拉选择已有项目。
    • 若在顶部导航栏选择目标项目,则本参数您仅支持选择目标项目。

    default

    高级选项

    标签

    按需为私有网络及一同创建的子网添加一个或多个用户标签。标签由一个键值对组成,用于资源的分类和搜索。更多信息请参见标签管理
    单击添加图标,输入标签键和标签值,为 VPC 实例添加标签。

    • 标签键:vpc-key
    • 标签值:vpc-v1
  3. 单击确定,完成配置。

步骤二:创建终端节点

终端节点能够在私有网络 VPC 和终端节点服务之间建立一条安全、私密的连接。当服务使用方希望使用服务提供方 VPC 中部署的服务资源时,则需要创建一个接口终端节点。

说明

终端节点最大带宽限制为 10Gbps。访问 veImageX 时,请勿超过该带宽限制。

  1. 登录私有网络控制台。在顶部导航栏,地域选择华北2(北京)(默认值)。

  2. 在左侧导航栏选择私网连接 > 终端节点。未完成跨服务角色授权的账号在弹出的跨服务访问请求页面,单击立即授权

  3. 接口终端节点页签下,单击创建终端节点

  4. 创建终端节点页面,参考配置接口终端节点配置如下参数。

    类别

    参数

    说明

    基本信息

    地域

    选择终端节点所属的地域,此处选择华北2(北京)

    名称

    输入终端节点的名称。

    类型

    选择终端节点的类型,此处选择接口

    描述

    输入终端节点的描述。

    项目

    选择终端节点所属的项目。详细介绍,请参见项目管理

    终端节点服务

    选择添加方式为火山引擎服务,终端节点服务为 com.volces.privatelink.cn-beijing.veimagex-new,该终端节点服务用于对接 veImageX。
    Image

    网络配置

    私有网络

    选择 veImageX 使用的私有网络。

    可用区及子网

    选择需要建立连接的终端节点服务可用区和子网。

    安全组

    选择安全组。

    高级选项

    私有 DNS 名称

    建议选择启用
    此处选择启用后,同账号同地域访问可跳过步骤四:解析终端节点

    标签

    标签由一个键值对组成,用于资源的分类和搜索。更多关于标签的介绍请参见标签管理
    单击添加标签,输入标签键和标签值,为终端节点服务添加标签。

  5. 单击确认订单,阅读并勾选 《产品和服务协议》《私网连接服务条款》《私网连接服务等级协议》,单击立即购买

  6. 单击去控制台,页面跳转至终端节点页面,您可在该页面查看所创建的终端节点名称、示例状态、连接状态、终端节点域名。
    Image

步骤三:开启内网访问

  1. 登录 veImageX 控制台,在左侧导航栏选择服务管理
  2. 在服务管理页面中,选择所需的服务,服务状态应为正常。单击基础配置 > 分发配置
  3. 切换到分发配置页面,开启内网访问开关。
    Image
  4. 在弹出的配置内网访问弹窗中,选择是否要开启 URL 鉴权状态配置。
    • 如果仅开启内网访问,但无需开启 URL 鉴权状态,请直接单击确定按钮。
      Image
    • 如果需要同时开启内网访问和 URL 鉴权状态,请在弹窗中开启开关,并参考以下文档配置 URL 鉴权状态功能。
  5. 保存上述配置后,veImageX 将自动生成一个内网域名地址。
    Image

步骤四:解析终端节点

说明

  • 如您在步骤二:创建终端节点时,启用了私有 DNS,则在同 VPC 访问时无需手动配置,请跳过本步骤。
  • 如您选择了不启用,或需要同账号其他 VPC 或跨账号 VPC 访问,请先参考云企业网入门指引完成 VPC 间的联通,然后参考本步骤配置终端节点解析。
  1. 前往火山引擎 TrafficRoute DNS 套件私网解析 PrivateZone 控制台,在开通服务页面,阅读并同意用户协议,单击提交订单
    Image
  2. 开通完成后,单击去控制台,然后单击添加域名
  3. 添加域名对话框中,配置域名基本信息和域名生效范围。
    • 域名:此处填写 veimagex.cn-beijing.volces.com
    • 域名生效范围:选择私有网络 VPC 信息。如需跨账号访问,请先单击添加账号进行账号关联,支持通过验证码或企业组织两种方式添加账号。
      Image
  4. 单击确定,您可以在私网域名管理页面看到添加的域名。在域名的操作列单击管理
  5. 记录管理页面,单击添加记录,在域名下添加解析记录。
  6. 添加记录页面,配置解析记录的基本信息。
  7. 配置完成后单击提交。您可以在记录管理页面看到创建的解析记录。

步骤五:内网访问验证

如您在 veImageX 开启内网访问后的内网访问域名为 xxxxx.veimagex.cn-beijing.volces.com,需要访问的 veImageX 存储的源图片存储 URI 为 tos-cn-i-xxxxx/demo.jpeg,您创建的图片模板配置为 ~tplv-xxxxx-1.jpeg。那么,您可使用内网域名分别访问源图片资源和模板处理后的结果图资源。具体访问 URL 如下:

  • 源图片资源访问地址:http://xxxxx.veimagex.cn-beijing.volces.com/tos-cn-i-xxxxx/demo.jpeg
  • 经图片处理模板处理后的结果图访问地址:http://xxxxx.veimagex.cn-beijing.volces.com/tos-cn-i-xxxxx/demo.jpeg~tplv-xxxxx-1.jpeg

在 VPC ECS 中 curl http://xxxxx.veimagex.cn-beijing.volces.com/tos-cn-i-xxxxx/demo.jpeg~tplv-xxxxx-1.jpeg,返回 200,则表示内网访问服务正常可用。

场景二:跨地域访问

veImageX 在华北 2 地域提供服务,如果您在其他地域(例如华东 2)创建了 VPC,想要访问 veImageX 服务,就需要购买云企业网来实现跨地域的网络互通。云企业网是火山引擎提供的一种网络互联服务,它可以帮助用户建立跨地域、跨账号的私有网络互通,因此需要购买云企业网来打通华北 2 和华东 2 地域之间的网络连接。
请参考云企业网入门指引完成 VPC 间的联通,然后参考场景一:同地域访问的操作步骤进行配置。

内网上传

veImageX 提供 ApplyVpcUploadInfo 接口指定内网上传文件信息,并获取文件上传链接和 Header 信息。成功获取到上述信息后,按照链接及 Header 进行请求即可完成上传。以下为接口的请求示例和返回示例,该接口的详细参数说明请参看获取文件 VPC 内网上传地址

请求示例

GET https://imagex.volcengineapi.com/?Action=ApplyVpcUploadInfo&Version=2023-05-01&ServiceId=u3*k

返回示例

{
    "ResponseMetadata": {
        "RequestId": "20230604110420****100232280022D31",
        "Action": "ApplyVpcUploadInfo",
        "Version": "2023-05-01",
        "Service": "ImageX",
        "Region": "cn-north-1"
    },
    "Result": {
        "UploadMode": "part",
        "PartUploadInfo": {
            "PartSize": 4194304,
            "PartPutURLs": [
                "https://tos.xxx",
                "https://tos.yyy"
            ],
            "CompletePartURL": "https://ouy.*.com",
            "CompletePartURLHeaders": [
                {
                    "Key": "X-Tos-Forbid-Overwrite",
                    "Value": "true"
                }
            ]
        },
        "SessionKey": "eyJh**In0=",
        "Oid": "demo",
        "PutURL": "https://ll.xxx",
        "PutURLHeaders": [
            {
                "Key": "Content-Type",
                "Value": "image/jpeg"
            }
        ]
    }
}