gpt4 book ai didi

docker - 具有/Terraform Digitalocean负载平衡的Docker Swarm模式。如何自动缩放?

转载 作者:行者123 更新时间:2023-12-02 19:35:18 26 4
gpt4 key购买 nike

因此,通过本文,我已经能够回答我的大多数问题

https://knpw.rs/blog/docker-swarm-terraform/

我的问题是从本文结尾处开始,如何根据 CPU使用率网络使用率等指标进行自动缩放?

例如,如果我在所有节点上的CPU使用率都超过70%,则创建一个新实例;如果CPU使用率低于30%,则销毁一个实例。 当然,这些必须是持续使用的,例如所有节点以超过70%的CPU使用率运行超过5分钟。

我对此进行了一些研究,但不是很清楚。例如, Digital Ocean有一个监视服务,如果您根据设置的阈值将CPU使用率异常高(或网络负载),它可以向您发送电子邮件。 问题是 ,他们还没有WebHook支持,因此我无法将这些信号发送到我的应用程序。

我的一个想法是为这些通知设置特殊的电子邮件并检查电子邮件。 然后根据电子邮件回复,创建一个修改后的Terraform文件,并对其进行'terraform apply'修改,以修改基础结构?

我不确定这是不是一种好形式,因为terraform的要点是将代码作为基础结构,但是如果该基础结构旨在根据CPU使用率或网络使用率始终创建新实例并销毁实例,我不确定您如何在Terraform中正确表达该概念?

任何朝着正确方向的指针都值得赞赏,这时我很困在转向的位置。 terraterra不适用于这种类型的设置吗?

最佳答案

我相信这个问题与 digital ocean 无关。您可以为Digital Ocean构建的解决方案可以对所有其他云提供商使用,只要它们提供了用于创建/销毁节点的API。

因此,要么切换到具有内置自动缩放功能的AWS,要么构建自己的解决方案。这是很多工作,但设置起来并不难。您需要对群集有完全的可见性,例如需要从节点注册表/发现跟踪所有群集节点的监视系统,然后收集指标并触发警报。

您可以将警报系统配置为运行Terraform作业,Ansible剧本,通过HTTP api触发Jenkins作业,...将根据指标扩展/扩展基础架构。

关于docker - 具有/Terraform Digitalocean负载平衡的Docker Swarm模式。如何自动缩放?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46188557/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com