我使用pip install cassandra_snapshotter
安装了cassandra snapshotter。如果我用命令在终端上运行它就可以了
sudo cassandra-snapshotter --s3-bucket-name=vivek-bucket
--s3-base-path=cassandra --aws-access-key-id=XXXX --aws-secret-access-key=XXX backup --hosts=172.31.2.85 --user ubuntu
--sshkey=/home/ubuntu/XXXX.pem --cassandra-conf-path=/etc/dse/cassandra --use-sudo=yes --new-snapshot
当我用ansible尝试相同的命令时,它以错误结束
"start": "2017-04-25 10:02:39.111333", "stderr": "/bin/sh: 1: cassandra-snapshotter: not found", "stderr_lines": [ "/bin/sh: 1: cassandra-snapshotter: not found" ]
- name: snapshot and backup
hosts: localhost
connection: local
become: yes
tasks:
- name: taking snapshot
shell: cassandra-snapshotter --s3-bucket-name=vivek-bucket --s3-base-path=cassandra --aws-access-key-id=XXXX --aws-secret-access-key=XXX backup --hosts=172.31.2.85 --user ubuntu --sshkey=/home/ubuntu/XXXX.pem --cassandra-conf-path=/etc/dse/cassandra --use-sudo=yes --new-snapshot
pip在自己的位置安装可执行文件。该位置可能不在搜索路径中。您可以在ansible中设置PATH环境变量并将其扩展以包含该位置,也可以在命令行上手动执行“which cassandra\u snapshotter”,并将cassandra\u snapshotter可执行文件的完整路径放入ansible中。你知道吗
另外:我不认为您在cassandra\u快照调用中使用了任何“shell”特性。如果可能,最好使用https://docs.ansible.com/ansible/command_module.html。你知道吗
相关问题 更多 >
编程相关推荐