You need to enable JavaScript to run this app.
导航
VPC共享其他VPC内的RDS资源
最近更新时间:2024.10.29 15:18:11首次发布时间:2023.05.09 08:43:27

本文将介绍如何通过私网连接服务将本VPC内的RDS数据库服务共享给其他VPC。

场景介绍

私网连接服务支持通过内网将VPC内的服务资源共享给其他VPC,能够保证业务安全并为您节约成本。
本文为您介绍如何实现将VPC内的RDS类型服务资源共享给其他VPC使用,具体组网场景如下图所示。

RDS类型服务资源以云数据库 MySQL版为例。

alt

前提条件

  • 已完成所需VPC及子网的创建,详细操作可参见搭建IPv4私有网络
  • 已完成所需云服务器实例的创建,详细操作可参见购买云服务器实例
  • 已完成云数据库服务的部署并将私网连接服务的部署网段100.64.0.0/10添加到云数据库白名单中,详细操作可参见云数据库快速入门

    说明

    部署完成后请参考查看云数据库详情提前获取云数据库实例的ID连接终端的ID云数据库服务的端口

配置流程

  1. (可选)完成跨账号授权:授权账号A管理账号B中VPC内的终端节点服务。
  2. 配置终端节点服务:创建一个关联RDS类型服务资源的终端节点服务,作为共享服务资源的实例载体并授权账号A中的终端节点访问账号B中的终端节点服务。
  3. 创建接口终端节点:创建一个接口终端节点,作为账号A中VPC访问其他VPC内共享服务资源的接入点。
  4. 配置终端节点安全组:在终端节点的安全组入方向放通RDS服务资源的端口。
  5. 结果验证:使用mysql命令连接终端节点域名,验证vpc-01能够通过私网连接正常访问共享的RDS服务资源。

配置步骤

步骤一:完成跨账号授权(可选)

当账号A需要替账号B创建并管理终端节点服务,以便自动化打通网络路径时,可以按照此步骤完成火山引擎IAM跨账号授权。

  1. 使用账号B登录访问控制控制台

  2. 在左侧导航树中选择“角色”,单击“新建角色”按钮,配置以下参数。

    1. 信任身份类型:选择账号
    2. 信任身份:选择其他账号
    3. 账号ID:输入账号A的ID
    4. 角色名:用户自定义,例如:forRDS
    5. 策略:选择PrivateLinkEndpointServiceFullAccess
  3. 单击“提交”按钮,完成角色创建及授权。

步骤二:配置终端节点服务

  1. 使用换取到的账号B临时AK/SK调用CreateUniqueResourceTypeVpcEndpointService接口,创建终端节点服务并记录返回的ServiceId,请求示例如下:

    说明

    以下示例中Resource.InstanceId的值请替换为云数据库服务的实例IDResource.ResourceId的值请替换为连接终端的ID

    GET /?Action=CreateUniqueResourceTypeVpcEndpointService&Version=2020-04-01&Resource.ResourceType=rdsmysql&Resource.InstanceId=mysql-53b1f339****&Resource.ResourceId=mysql-53b1f339****-cluster-2ghyj78f****&ZoneIds=cn-guangzhou-a HTTP/1.1
    Host: open.volcengineapi.com
    Service: privatelink
    Region: cn-guangzhou
    
  2. 使用换取到的账号B临时AK/SK调用DescribeVpcEndpointServiceAttributes接口,查询终端节点服务的名称ServiceName并记录。
  3. 使用换取到的账号B临时AK/SK调用AddPermissionToVpcEndpointService接口,为终端节点服务添加白名单。请求示例如下:

    说明

    以下示例中ServiceId的值请替换为终端节点服务的IDPermitAccountId的值请替换为账号A的ID

    GET /?Action=AddPermissionToVpcEndpointService&Version=2020-04-01&ServiceId=epsvc-2fe630gurkl37k5gfuy33****&PermitAccountId=210005**** HTTP/1.1
    Host: open.volcengineapi.com
    Service: privatelink
    Region: cn-beijing
    

步骤三:创建接口终端节点

  1. 使用账号A登录终端节点控制台

    说明

    如未进行跨服务角色授权,请先根据页面提示完成授权。

  2. 单击“创建终端节点”按钮,参考下表配置相关参数。

    参数取值
    基本信息
    地域华北2(北京)
    名称endpoint-01
    类型接口
    终端节点服务资源
    添加方式通过服务名称搜索
    终端节点服务com.volces.privatelink.cn-guangzhou.epsvc-2fe630gurkl37k5gfuy33****
    网络配置
    私有网络vpc-01
    可用区及子网可用区A,subnet-01 | 自动分配IP,192.168.1.0/24
    安全组Default-sg
  3. 单击“确认订单”按钮,根据控制台指引查阅并确认相关协议。

  4. 单击“立即购买”按钮,完成购买。

  5. 单击“去控制台”按钮,查看已创建的终端节点实例的域名并记录,结果验证时需要使用。

步骤四:配置终端节点安全组

  1. 单击目标终端节点的名称,选择“安全组”页签。

  2. 单击安全组名称,选择“访问规则”页签。

  3. 单击“添加规则”按钮,参考下表配置终端节点安全组。

    序号优先级策略协议类型端口范围源地址描述

    1

    100

    允许

    TCP

    3306

    说明

    此处配置为云数据库服务的端口,请根据实际情况修改。

    0.0.0.0/0

    允许全部客户端通过该终端节点访问云数据库服务

    2100允许ICMPALL100.64.0.0/0允许私网连接服务访问云数据库服务

    说明

    如果终端节点安全组中已包含协议类型为ICMP,源地址为0.0.0.0/0的入方向规则,则无需配置第2条规则。

  4. 单击“确定”按钮,完成操作。

步骤五:结果验证

  1. 登录云服务器实例ecs-01,详情请参见登录Linux实例登录Windows实例
  2. 参考云数据库连接实例,验证账号A中的ecs-01可以正常访问云数据库服务。
    最后一步命令中的 <连接地址> 请替换为终端节点域名