如何检测流量变化并触发 GitLab 管道?

如何检测流量变化并触发 GitLab 管道?

我们在 Kubernetes 中运行两个 etcd 集群,一个充当主集群(A),另一个充当备份集群(B)。我们etcdctl make-mirror在这两个集群之间也有一个位置,现在的问题是,如果我们将流量从集群切换到集群AB那么集群B将成为主集群,集群将成为备份集群。这两个集群前面A有一个负载均衡器。F5

我正在寻找一种机制/触发器,它可以检测这种流量变化并触发管道,然后启动集群上的复制舱B并关闭集群A端的复制舱。

我也愿意听取有关此工作流程的建议,有没有更好的方法可以实现 etcd 的双向复制?我遗漏了什么吗?

答案1

最终,它将取决于您对 CI/CD 管道的具体选择以及负责启动流量翻转的因素,但我确实找到了 F5 的演示,当它看到来自 ELK/Splunk 堆栈的警报/阈值事件时,使用 Github 操作来触发配置更改。

就您而言,如果流量更改是自动的,您的分析堆栈可以触发警报,以通过 webook 调用 Github Action 的进程,从而启动任意数量的方法,其中包括对 F5 BIG-IP ADC 的更新。或者,您可以通过 kubernetes 集成将 k8 集群更改转移到 BIG-IP。

如果您从 kubernetes 或某些手动方法启动流量故障转移,那么它会更容易一些,并且您可以跳过分析警报触发器的创建。

这是基于 F5 ADC 遥测的自动缩放 repo,作为执行所有这些操作的设置。 https://github.com/f5devcentral/adc-telemetry-based-autoscaling

您可能不会自动扩展 BIG-IP,但触发器和事件驱动的变化正是您正在寻找的。

相关内容