2.3. 配置 AWS VPN


这个示例流程配置 Amazon Web Services (AWS) Red Hat OpenShift Service on AWS 集群来使用客户的现场硬件 VPN 设备。

注意

AWS VPN 目前不提供将 NAT 应用到 VPN 流量的受管选项。如需了解更多详细信息,请参阅 AWS 知识库

注意

不支持通过私有连接路由所有流量,如 0.0.0.0/0。这需要删除互联网网关,它将禁用 SRE 管理流量。

有关使用硬件 VPN 设备将 AWS VPC 连接到远程网络的更多信息,请参阅 Amazon VPC VPN 连接 文档。

2.3.1. 创建 VPN 连接

您可以按照以下过程,配置 Amazon Web Services (AWS) Red Hat OpenShift Service on AWS 集群来使用客户的现场硬件 VPN 设备。

前提条件

  • 硬件 VPN 网关设备模型和软件版本,例如 Cisco ASA 运行版本 8.3。请参阅 Amazon VPC Network Administrator 指南,以确认 AWS 是否支持您的网关设备。
  • VPN 网关设备的公共、静态 IP 地址。
  • BGP 或静态路由:如果需要 BGP,则需要 ASN。如果静态路由,必须至少配置一个静态路由。
  • 可选:一个可访问服务的 IP 和端口/Protocol 来测试 VPN 连接。

2.3.1.1. 配置 VPN 连接

流程

  1. 登陆到 Red Hat OpenShift Service on AWS AWS Account Dashboard,然后进入 VPC 仪表板。
  2. 您的 VPC,找到包含 Red Hat OpenShift Service on AWS 集群上的 VPC 的名称和 VPC ID。
  3. 在 VPC 仪表板中,点 Customer Gateway
  4. Create Customer Gateway 并为它指定一个有意义的名称。
  5. 选择路由方法:DynamicStatic
  6. 如果 Dynamic,在出现的字段中输入 BGP ASN。
  7. 粘贴 VPN 网关端点 IP 地址。
  8. Create
  9. 如果您还没有附加到预期的 VPC 的虚拟私有网关:

    1. 在 VPC 仪表板中点 Virtual Private Gateway
    2. Create Virtual Private Gateway,为它指定一个有意义的名称,然后点 Create
    3. 默认 Amazon 默认 ASN。
    4. 选择新创建的网关,点 Attach to VPC,并将其附加到您之前标识的集群 VPC。

2.3.1.2. 建立 VPN 连接

流程

  1. 在 VPC 仪表板中,点 Site-to-Site VPN 连接
  2. Create VPN 连接

    1. 为它指定有意义的名称标签。
    2. 选择之前创建的虚拟专用网关。
    3. 对于客户网关,请选择现有
    4. 按名称选择客户网关设备。
    5. 如果 VPN 将使用 BGP,请选择 Dynamic,否则选择 Static。输入静态 IP CIDR。如果有多个 CIDR,请将每个 CIDR 添加为另一个规则
    6. Create
    7. 等待 VPN 状态更改为 Available,大约需要 5 到 10 分钟。
  3. 选择您刚才创建的 VPN 并点 Download Configuration

    1. 从下拉列表中,选择客户网关设备的供应商、平台和版本,然后点下载
    2. Generic 供应商配置也可用于以纯文本格式检索信息。
注意

建立 VPN 连接后,请确定设置路由传播,或者 VPN 可能无法正常工作。

注意

请注意,VPC 子网信息,您必须作为远程网络添加到配置中。

2.3.1.3. 启用 VPN 路由传播

设置 VPN 连接后,您必须确保启用了路由传播,以便将所需的路由添加到 VPC 的路由表中。

流程

  1. 在 VPC 仪表板中点 Route Tables
  2. 选择与 VPC 关联的私有 Route 表,该表包含您的 Red Hat OpenShift Service on AWS。

    注意

    在一些集群中,特定 VPC 可能有多个路由表。选择具有多个显式关联子网的私有子网。

  3. Route Propagation 选项卡。
  4. 在显示的表中,您应看到之前创建的虚拟专用网关。检查 Propagate 列中的值。

    1. 如果 Propagate 设为 No,点 Edit route propagation,选中虚拟私有网关名称旁边的 Propagate 复选框,再点 Save

在配置 VPN 隧道和 AWS 检测到它为 Up后,您的静态或 BGP 路由会自动添加到路由表中。

2.3.2. 验证 VPN 连接

设置 VPN 隧道后,您可以验证隧道是否在 AWS 控制台中,并且通过隧道连接正常工作。

前提条件

  • 创建 VPN 连接。

流程

  1. 验证隧道是否在 AWS 中启动。

    1. 在 VPC 仪表板中点 VPN 连接
    2. 选择您之前创建的 VPN 连接并点 Tunnel Details 选项卡。
    3. 您应该可以看到至少一个 VPN 隧道为 Up
  2. 验证连接。

    要测试到端点设备的网络连接,nc (或 netcat)是一个有用的故障排除工具。它包含在默认镜像中,如果可以建立连接,提供快速和清晰的输出:

    1. 使用 busybox 镜像创建一个临时 pod,它会自行清理:

      $ oc run netcat-test \
          --image=busybox -i -t \
          --restart=Never --rm \
          -- /bin/sh
    2. 使用 nc 检查连接。

      • 成功连接结果示例:

        / nc -zvv 192.168.1.1 8080
        10.181.3.180 (10.181.3.180:8080) open
        sent 0, rcvd 0
      • 连接结果示例:

        / nc -zvv 192.168.1.2 8080
        nc: 10.181.3.180 (10.181.3.180:8081): Connection refused
        sent 0, rcvd 0
    3. 退出容器,该容器自动删除 Pod:

      / exit

2.3.3. VPN 连接故障排除

隧道没有连接

如果隧道连接仍然处于 Down 状态,您可以验证以下几个方面:

  • AWS 隧道不会启动 VPN 连接。连接尝试必须从客户网关启动。
  • 确保您的源流量来自与配置的客户网关相同的 IP。AWS 将静默丢弃到源 IP 地址不匹配的网关的流量。
  • 确保您的配置与 AWS 支持的值匹配。这包括 IKE 版本、DH 组、IKE 生命周期等等。
  • 再次检查 VPC 的路由表。确保启用传播,并在路由表中有您之前创建的虚拟专用网关作为目标的条目。
  • 确认您没有可能会造成中断的防火墙规则。
  • 检查您是否使用基于策略的 VPN,因为这可能导致配置情况复杂。
  • 有关故障排除步骤,请参阅 AWS 知识库
隧道没有保持连接

如果隧道连接无法稳定地保持为 Up,代表所有 AWS 隧道连接都必须从您的网关启动。AWS 隧道不会启动隧道

红帽建议在持续发送"中断"流量的隧道端设置 SLA Monitor (Cisco ASA)或一些设备,例如 pingnctelnet,位于 VPC CIDR 范围内配置的任何 IP 地址。连接是否成功并不重要,只要流量被定向到隧道。

处于 Down 状态的二级隧道

创建 VPN 隧道时,AWS 会创建额外的故障转移隧道。根据网关设备,有时第二个隧道将显示为 Down 状态。

AWS 通知如下:

You have new non-redundant VPN connections

One or more of your vpn connections are not using both tunnels. This mode of
operation is not highly available and we strongly recommend you configure your
second tunnel. View your non-redundant VPN connections.
Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.