使用cassandra

时间:2019-07-19 07:00:50

标签: cassandra ansible

我有一个运行cassandra 3.11.4的群集,其中有5个节点。我正在使用ansible运行任务,并且我有一个特定的任务,我只想在所有节点都正常运行的情况下运行。我尝试使用nodetool statusnodetool describecluster并检查其输出,但是有更好的解决方案吗?

1 个答案:

答案 0 :(得分:0)

下面有库存

$ 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

如果任何节点在 timeout 秒内未在 monitor 端口响应,则以下播放失败。 (根据您的需要调整变量。)

- 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

(未经测试)