【问题标题】:Custom domain on Amazon MQAmazon MQ 上的自定义域
【发布时间】:2020-11-23 06:59:34
【问题描述】:

我已经设置了一个 Amazon MQ 代理,并且您生成了一个域 *.mq.eu-west-2.amazonaws.com

生成的是一个很长的 DN,我想做的是将其映射到我自己域的子域。

由于所有 AWS 服务都通过 SSL,因此我还需要此子域的证书,我通常只使用 ACM。

问题是我不能只生成域然后生成 SSL 证书的 CNAME,因为这不起作用。 AWS 在 route53 中提供了所谓的 ALIAS A 记录,其他服务可以解决这个问题,但它似乎不适用于 Amazon MQ。您获得的选项不包括 MQ 服务。

查看一些 AWS 文档,听起来我需要执行以下操作(但似乎太过分了)

  1. 创建私人经纪人
  2. 创建网络负载平衡器
  3. 将 2 个连接在一起(这很难,我无法让它工作)
  4. CNAME 我的子域到 NLB

还有其他人对如何最好地解决这个问题有任何建议吗?

【问题讨论】:

    标签: amazon-web-services amazon-route53 amazon-mq


    【解决方案1】:

    对于任何感兴趣的人,我想我已经弄清楚了这一点。

    您不能只设置自定义域的原因是因为该服务允许您进行多可用区配置,这意味着有多个代理。处理超过 1 个且故障转移的最佳方法是使用负载均衡器,所以我认为这是您需要做的。

    我发现您不需要私人经纪人,您也可以使用公共经纪人。在 Amazon MQ 控制台中,您只能获得公共 IP,但如果您转到 EC2 和网络接口,您会发现使用您拥有的公共 IP 的接口并从中获得私有 IP

    您需要在 EC2 的网络接口部分执行完全相同的操作,以获取负载均衡器的私有 IP(将是 1-2 个 IP)。您需要这些私有 IP 来设置负载均衡器和安全组。这些是步骤

    1. 创建 Amazon MQ 实例(公共或私有)
      • 我做过公共经纪人
      • 也是单实例而非多可用区
      • 已经创建了一个安全组,但如果您没有,请在设置之前或期间创建一个
      • 我为您访问代理的 2 个端口的安全组添加了规则
        • 8162 - 用于仪表板 (HTTPS)
        • 61617 - 用于代理 (TLS)
    2. 导航到 EC2 -> 网络接口 - 获取 MQ 代理的私有 IP(使用分配给您的实例的公共 IP)。如果您创建私人经纪人,则可以跳过此步骤
    3. 在 AWS 的 ACM 服务中为您的子域创建证书。使用电子邮件或 DNS 验证它
    4. 使用以下设置创建 NLB (TCP):
      • 网络负载均衡器 (TCP/TLS/UDP)
      • 选择一个名字
      • 面向互联网
      • 用于侦听器的 TLS(安全 TCP)协议
      • 端口 61617
      • 可用区与您的代理相同(观察相同的 VPC)
      • 选择 ACM 认证
      • 找到您在第 3 步中创建的证书。您需要先对其进行验证,然后它才会显示在此处
      • 安全策略 - ELBSecurityPolicy-2016-08
      • ALPN 政策:无
      • 新的目标群体 - 选择一个名称
      • 目标类型 - IP
      • 协议:TLS
      • 端口:61617
      • 健康检查:协议 HTTPS
      • 健康检查:路径/index.html
      • 健康检查:(覆盖)端口:8162
      • 注册您的目标插入步骤 2 中找到的代理的私有 IP,单击添加到列表
      • 审核
      • 完成
    5. 创建 NLB 后,导航到您链接到代理的安全组,并将 NLB 私有 IP 添加到安全组(我完成了所有流量,但您可以将其限制为仅需要的 2 个端口,用于代理和健康检查)、61617 和 8162
    6. 最后在 route53 中创建一个域记录(和别名 A 记录),将您的子域映射到分配给 NLB 的域名。

    这将为您提供使用 SSL 访问您的代理的子域。 您可以执行完全相同的操作,但使用应用程序负载均衡器 (HTTPS) 来访问控制台。我创建了第二个 LB、一个新的子域和证书以使其正常工作,并且效果很好。两者之间的唯一区别是侦听器通过 HTTPS 使用端口 8162,并且在配置时您必须提供 2 个子网,否则其他一切都几乎相同(尤其是运行状况检查)

    希望这对任何人都有帮助,因为我找不到任何明确解释如何以及为什么这样做的文档,亚马逊有一些文档,但他们遗漏了很多细节或为什么你需要做这些事情的原因,以及博客文章我发现他们只谈到与私人经纪人合作。

    享受吧。

    【讨论】:

    • 这对我帮助很大。感谢您的详细设置。欣赏它。
    • 感谢您提供详细信息,我建议您将代理保密,因为您使用的 NLB、ALB 在您的用例中已经公开。
    猜你喜欢
    • 2017-08-10
    • 2014-03-06
    • 2017-03-23
    • 2011-06-29
    • 2017-08-29
    • 1970-01-01
    • 2019-05-21
    • 1970-01-01
    • 2018-11-11
    相关资源
    最近更新 更多