Deployment 使用ansible运行etcd
跑步时Deployment 使用ansible运行etcd,deployment,ansible,ansible-playbook,etcd,Deployment,Ansible,Ansible Playbook,Etcd,跑步时 etcd -peer-addr 127.0.0.1:7001 -addr 127.0.0.1:4001 -data-dir machines/machine1 -name machine1 & 我必须按enter键才能恢复控制台和etcd在后台运行 ANSIBLE 我怎样才能用ansible重现这个目的 我想用这种方式开始与ansible的etcd - name: run etcd like leader shell: "etcd -peer-addr 127.0.0.1:
etcd -peer-addr 127.0.0.1:7001 -addr 127.0.0.1:4001 -data-dir machines/machine1 -name machine1 &
我必须按enter键才能恢复控制台和etcd在后台运行
ANSIBLE
我怎样才能用ansible重现这个目的
我想用这种方式开始与ansible的etcd
- name: run etcd like leader
shell: "etcd -peer-addr 127.0.0.1:7001 -addr 127.0.0.1:4001 -data-dir machines/machine1 -name machine2 &"
ansible保持命令返回,不继续执行下一个任务
也许一个解决方案是在后台运行etcd。我不知道怎么做
使用
- 表1.6.6
- etcd 0.4.6
async
设置为某个非常长的值,例如10年(315569260秒),然后将poll
设置为0
不过这有点像黑客。更好的方法是使用systemd或init脚本,将进程作为守护进程正常运行。我尝试使用异步方式;但随后etcd进程被终止,而不是在后台运行。事实上,正如本所说,这是一次黑客攻击。etcd人员建议使用
守护进程
或upstart
SupervisorORD
也是一个选项。我正在与supervisor进行交互,但相同的命令从控制台运行,而不是从supervisor运行。