Ansible cung cấp một số tùy chọn để buộc các trình xử lý:
1) Để luôn buộc tất cả các trình xử lý, hãy chạy ansible-playbook playbook.yml --force-handlers
, như được ghi lại ở đây: https://github.com/ansible/ansible/issues/4777
2) Để buộc các trình xử lý đã được thông báo tại một điểm cụ thể trong sổ chơi, bạn có thể sử dụng tác vụ meta https://docs.ansible.com/playbooks_intro.html :
tasks:
- shell: some tasks go here
- meta: flush_handlers
- shell: some other tasks
3) Tuy nhiên, có vẻ như bạn chỉ muốn đảm bảo một dịch vụ đang chạy hoặc khởi động lại, bất kể kết quả của một nhiệm vụ khác. Trong trường hợp đó, không sử dụng trình xử lý, sử dụng tác vụ mới gọi service
mô-đun của Ansible : http://docs.ansible.com/service_module.html
tasks:
- name: ensure ntp is running
service: name=ntp state=started enabled=yes
- name: always reload nginx
service: name=nginx state=reloaded
- name: always restart MySQL
service: name=mysql state=restarted