我有一个运行cassandra3.11.4的集群,有5个节点。我使用ansible来运行任务,我有一个特定的任务,我只想在所有节点都正常的情况下运行。我试着用 nodetool status 以及 nodetool describecluster 并检查其输出,但有更好的解决方案吗?
nodetool status
nodetool describecluster
gxwragnw1#
让我们看看下面的清单
$ cat hosts [nodes] 192.168.50.4 node0 192.168.50.5 node1 192.168.50.6 node2 192.168.50.7 node3 192.168.50.8 node4 192.168.50.9 node5
如果任何节点在超时秒内未在监视器端口响应,则下面的播放将失败(使变量适合您的需要。)
- hosts: localhost vars: monitor: 7199 timeout: 5 tasks: - wait_for: port: "{{ monitor }}" host: "{{ item }}" timeout: "{{ timeout }}" msg: "{{ item }} is not running. End of play." loop: "{{ groups['nodes'] }}"
要检查所有节点是否忽略潜在错误,请注册并查看结果。
ignore_errors: yes register: results
(未测试)
1条答案
按热度按时间gxwragnw1#
让我们看看下面的清单
如果任何节点在超时秒内未在监视器端口响应,则下面的播放将失败(使变量适合您的需要。)
要检查所有节点是否忽略潜在错误,请注册并查看结果。
(未测试)