AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 47289
Accepted
jabley
jabley
Asked: 2009-07-29 14:28:49 +0800 CST2009-07-29 14:28:49 +0800 CST 2009-07-29 14:28:49 +0800 CST

使托管应用程序对 BGP 故障具有弹性

  • 772

我的公司通过专门的托管服务提供商为其客户构建各种网站。

该托管服务提供商意外关闭了负责为小范围 IP 发布边界网关协议 (BGP) 的设备。由于我很幸运,其中一个 IP 恰好是分配给负载均衡器的公共 IP 地址,用于我们客户的所有 Web 流量。结果,该范围的 BGP 路由通告被撤回,并很快在全球范围内变得无法访问。

托管服务提供商在收到警报后就解决了这个问题,但这让我们损失了超过 15 分钟的停机时间,我们急于在未来避免这种情况。

  1. 我们如何监控这个?它比我们的普通监控低很多,它只检查 apache httpd 状态、JVM 等。我们有内部监控,使用 Advent AppEngine 来检查服务器进程、apache 服务器状态响应、应用程序主页响应。

  2. 我们是否能够采取措施自己解决这个问题?例如,通过某种方式发布我们自己的 BGP 公告?

我很高兴得到指针/建议阅读,而不仅仅是直接的答案,因为这个级别的堆栈对我来说是全新的,我想填补我的知识空白。

networking monitoring network-monitoring bgp
  • 6 6 个回答
  • 359 Views

6 个回答

  • Voted
  1. Best Answer
    Cian
    2009-07-29T14:33:22+08:002009-07-29T14:33:22+08:00

    您不太可能解决此问题,除非您的地址空间足够大,可以运行自己的 BGP。即使这样,您也容易受到对等方的 BGP 故障的影响。

    如果您在不同的 AS 中使用多个 DNS 服务器,则可以通过设置较低的 TTL 并在发现问题后通过更改 DNS 故障转移到不同网络块/数据中心中的单独 Web 服务器来解决一些问题. 然而,即使这至少需要几分钟。

    编辑:正如 Chris 所指出的,如果您正在运行 BGP,您需要在您变得无法访问之前让所有对等方都失败。

    • 4
  2. David Pashley
    2009-07-29T18:50:27+08:002009-07-29T18:50:27+08:00

    除非您至少拥有 /23 的提供商独立地址空间并且拥有 ASN 编号,否则您不太可能运行 BGP。因此,您需要信任您的托管公司。路由器更改往往相当少见,因此再次发生此问题的可能性很小。您可以调查您与他们的任何 SLA,但这可能只是涉及获得您的托管费用退款。

    就监控而言,我们在网络外部有一个专用服务器,我们将其用作外部 Nagios 服务器。您可以购买便宜的 VPS 服务器并使用它来监控来自外部用户的 PoV 的内容。例如,我们检查 SMTP 和 HTTP 工作,而不是检查 exim 和 apache 是否正在运行,我们在内部监控中这样做。

    • 3
  3. bortzmeyer
    2009-07-31T00:07:06+08:002009-07-31T00:07:06+08:00

    作为记录,它存在几个免费的 BGP 监控和警报系统。没有提供您想要的 15 百万分辨率。而且,由于您可能有许多其他原因导致中断,因此从外部监控 IP 连接是唯一真正的解决方案。

    • 独眼巨人
    • 成熟是
    • BGPmon,我的最爱

    关于 BGP 监控的一般文章,法语。

    • 2
  4. Rik Schneider
    2009-07-29T17:11:20+08:002009-07-29T17:11:20+08:00

    根据设置的方式、通告的网络块的大小以及上游聚合的方式,您可以使用其中一个窥镜脚本来监控服务器所在块的 BGP 公告。

    从外部从服务器后退一步 ping 主机和路由器可能更容易。您可以使用 traceroute 来确定要使用的地址。

    您几乎无法阻止托管公司再次这样做。为此,您至少需要将路由器或其他运行 BGP 的主机连接到您的提供商。除非您还有其他提供商,否则如果他们不小心关闭了对等路由器,这将无济于事。

    更好的解决方案可能是拥有另一个答案提到的故障转移站点。根据您的风险承受能力,您可以将故障转移设置为在很短的时间内发生,但这涉及对您的 DNS 的完全控制。

    • 0
  5. chris
    2009-07-29T19:25:21+08:002009-07-29T19:25:21+08:00

    你的选择非常有限。您可以对您的提供商大喊大叫,您可以转移到另一个提供商,您可以获得 2 个不同的 IP 范围并在两者上宣传服务,并在您的 DNS 条目上设置较短的 TTL。

    但

    如果您真的想解决这个问题,请搬到带有会议室的托管设施,并从几个提供商那里购买带宽和 IP 地址。然后,向 arin(或任何适合您居住的地方的注册商) 注册一个 ASN,并自己与提供商对等。

    如果您购买了足够的带宽,那么让他们咳出 /24 或 /23 并不难。对等也将非常容易,具体取决于 colo 设施的大小和您将要求的带宽量。

    如果您正在写大额支票并且表现得好像您确切地知道自己想要什么(并且您想要什么是合理的),那么完成这些事情并不难。如果您将其外包给您的“供应商”,您将永远处于愚蠢的一端。

    • 0
  6. Philippe
    2009-07-31T00:26:54+08:002009-07-31T00:26:54+08:00
    1. 您可以通过向公共路由服务器 ( http://www.traceroute.org/#Route%20Servers ) 询问您正在使用的前缀来监控您的提供商公告。您可以通过远程登录这些路由服务器来自动执行此类监控。
    2. 如果您使用足够的带宽,有预算和技能进行此类部署,您可以要求提供 AS 编号和 IP 地址范围。但是,这样做代价高昂,而且由于 RIR 不再使用 IPv4 地址,因此您必须提供真实的需求证明。
    • 0

相关问题

  • 为什么我的电脑休眠时 VPN 连接会中断?[关闭]

  • 有什么软件可以模拟局域网?

  • 你用什么工具来监控你的服务器?

  • 我应该如何管理每用户带宽?

  • 带宽利用工具?[关闭]

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve