![从服务器集群发出单个命令?](https://linux22.com/image/677028/%E4%BB%8E%E6%9C%8D%E5%8A%A1%E5%99%A8%E9%9B%86%E7%BE%A4%E5%8F%91%E5%87%BA%E5%8D%95%E4%B8%AA%E5%91%BD%E4%BB%A4%EF%BC%9F.png)
我有一组服务器,它们将运行一个ruok
带有故障转移功能的简单命令。该命令将很简单,例如curl -X POST http://foo.com/status
。由于这个池中会有 3 到 300 个节点,因此我想确保此命令每十分钟仅发出一次。我遇到的问题是,除非我希望它们每 X 分钟发出一次,否则我无法直接向我的服务器添加 crontab。
我开始考虑使用HashiCorp 领事因为它的可用性相当高,而且似乎比etcd
或更容易Zookeeper
。但我不知道如何真正创建可以做到这一点的东西。
我将在所有服务器上使用此脚本
#!/bin/bash
curl -i -H "Accept: application/json" \
-H "Content-Type:application/json" \
-X POST --data '{"status":"ruok"}' "https://foobar.com/status"
那么我该如何编写 Consul 以便在节点池中运行它呢?
答案1
你可以使用这。
刚刚在 Google 上搜索了“使用 consul 的分布式 cron”。