Deribit AWS 终端节点服务使用说明

  • 更新

为了向居住在 AWS 中的客户提供与其后端系统的直接连接,Deribit 创建了 AWS 终端节点服务供客户直接连接。该解决方案基于 AWS PrivateLink,这是一项专为服务提供商/服务消费者连接模型构建的托管服务。本说明描述了客户如何从其 AWS 环境连接到 Deribit 终端节点服务。该服务可在多个 AWS 区域使用。

与任何服务提供商/服务消费者模式一样,AWS PrivateLink 仅允许启动从您的 VPC 到 Deribit VPC 的连接,决不允许反向连接,因此您可以完全控制哪些网络流量能够通过 VPC 终端节点。Deribit Endpoint Service 可在与通过互联网相同的 TCP 端口(443、8020、8021、8022 和 8025)上访问。请向 Deribit 咨询最适合您的端口号,或向下滚动以获取更多信息。

  1. 创建 VPC 端点

    要连接到 Deribit 服务,您首先必须创建一个 VPC 终端节点,该终端节点将通过 PrivateLink 连接到 Deribit VPC 终端节点服务。要创建此 VPC 终端节点,请登录 AWS 控制台,进入用于创建 VPC 终端节点的 AWS 账户,选择相应的 AWS 区域,然后转到您想要访问 Deribit 服务的 VPC。从菜单中选择 “终端节点”,“创建端点”。选择 “PrivateLink Ready 合作伙伴服务

    aws_endpoint_privatelink_ready_partner_services.png

    填写属于您特定地区的名称,然后单击 “验证服务”:

    表 1. 适用于 AWS 区域的 Deribit 服务

    AWS 区域

    Deribit 服务名称

    eu-west-2(伦敦)

    com.amazonaws.vpce.eu-west-2.vpce-svc-040cd502947f69842

    ap-northeast-1(东京)

    com.amazonaws.vpce.ap-northeast-1.vpce-svc-04de4de4df0469ee98af


    应显示以下状态,表明已成功找到 Deribit 服务:

    aws_endpoint_service_name_verified.png

    要使用自定义私有 DNS 连接到终端节点(进一步解释),请确保在 “其他设置” 下未启用默认私有 DNS:

    aws_endpoint_enable_dns_name.png

    现在选择应在其中创建 VPC 终端节点的 VPC,然后选择要在其中启用 VPC 终端节点的可用区域。出于冗余/高可用性的目的,Deribit 已在每个区域的两个可用区提供其服务

    表 2. AWS 区域的可用区

    AWS 区域

    可用区

    eu-west-2(伦敦)

    euw-az2 和 euw-az3

    ap-northeast-1(东京)

    apne1-az1 和 apne1-az4


    我们建议在两个可用区中创建 VPC 终端节点,并建议您的应用程序也可在两个可用区中使用。

    出于安全考虑,创建安全组并将其连接到 VPC 终端节点,并根据您的公司政策添加标签。如果您未定义安全组,则默认安全组将关联:

    aws_endpoint_default_security_group.png

    确保关联的安全组具有允许来自您的 VPC 的流量访问终端节点的入站规则。要进行编辑,请前往 “入站规则” 选项卡,单击 “编辑入站规则”。单击 “添加规则”,然后定义允许哪些流量访问 Deribit 后端。例如,在本例中,我的整个 VPC 的 CIDR 范围为 10.0.0.0/16

    aws_endpoint_inbound_rule.png

    点击 “保存规则”。单击 “创建终端节点”

  2. 连接接受

    在步骤 1 中创建的连接请求必须在 Deribit AWS 账户中被接受,在此之前,您账户中的 VPC 终端节点将保持 “等待接受” 状态:

    aws_endpoint_pending_acceptance.png

    为了告知 Deribit 您已经创建了连接请求,请按照以下准则发送电子邮件至 “aws-support@sentillia.com”:

    • 在邮件主题中包括以下内容:

      • #acceptance request - <your company name> - <UID>

    • 在电子邮件正文中包含以下内容:

      • 你刚刚创建的 VPC 终端节点 ID ('vpce-xxx')...

      • 您提出连接接受请求的 AWS 区域。

      • 你的 Deribit UID

    然后,Deribit 将接受连接请求,通过电子邮件通知您,几分钟后,VPC 终端节点的状态将更改为 “可用”。现在可以使用了:

    aws_endpoint_status_available.png
  3. 将网络流量路由到 VPC 终端节点

    下一步是启用您的 VPC 中的服务,例如 EC2 实例或 Lambda,以访问 VPC 终端节点。我们建议在 Route53 AWS DNS 服务中使用私有托管区域。如果你要通过 TCP 端口 443 访问 Deribit 服务,你的 DNS 记录必须是 “deribit.com” 托管区域中的 “网关”,这样 SSL 证书才能与 “gateway.deribit.com” 相匹配。如果您使用任何其他 TCP 端口(8020、8021、8022 或 8025),则没有 SSL 证书,因此您可以选择自己的

    AWS 控制台中转到 Route53,如果您还没有私有托管区域,请创建一个私有托管区域,否则请使用您已经在使用的托管区域。在本示例中,我们将使用区域 “deribit.int”(如果你使用的是 TCP 443,则为 “deribit.com”

    在该托管区域内选择 “创建记录”,选择 “简单路由” 政策:

    aws_endpoint_simple_routing_policy.png

    单击 “下一步”,选择 “定义简单记录”。填写记录详情:

    • 记录名称 — 选择您自己的记录,在本示例中,我们将使用 “测试”(如果您使用的是 TCP 443,则为 “网关”);

    • 记录类型 — A “将流量路由到 IPv4 地址和一些 AWS 资源”;

    • 将流量值/路由到 — 选择 “VPC 终端节点的别名”;

    • 区域 — 选择您创建终端节点的区域';

    • 选择端点 — 选择在步骤 1 中创建的端点。注意选择带有区域的那个(例如 “eu-west-2” 或 “ap-northeast-1”),而不是以 “a/b”

    aws_endpoint_define_simple_record.png

    选择 “定义简单记录” 和 “创建记录”。它正在创建中,需要几分钟才能可用。

  4. 测试连接

    您的 EC2 实例或 Lambda 服务中,使用例如远程登录来测试连接,使用在步骤 3 中创建的私有 DNS 记录,然后使用其中一个 TCP 端口(在我们的示例中:'telnet test.deribit.int 8020')。测试应该会导致连接处于活动状态,现在可以满足您对 Deribit 后端的常规请求

故障排除

为什么我会收到响应错误 404?

验证以下内容:

  1. 您的 VPCE 位于正确的区域,伦敦或东京,具体取决于您请求的地区。

  2. 确认安装指南中的第 3 步配置正确,并且 DNS 指向 gateway.deribit.com

IP 白名单-我想将我的 IP 列入白名单

这可以通过API本身直接完成,无需我们的干预,如果你想确定IP地址?只需发送请求,并告知我们您的 UID 以及确切的时间窗口,这样我们就可以从日志中为您追溯该

每个端口有什么区别?

  • 8020 (HTTP): 用于标准网络流量。

  • 8021 (API): 专为 API(应用程序编程接口)通信而设计。

  • 8022 (WS): 用于 WebSocket 连接。

  • 8025(修复): 专用于FIX(金融信息交换)协议,主要用于订单。