nginx - Nginx 无法通过 Ansible 重启
问题描述
我在剧本中有一个任务,它试图像往常一样通过处理程序重新启动 nginx:
name: restart nginx
service: name=nginx state=restarted
它给了我以下错误:
RUNNING HANDLER [webtier : restart nginx] **************************************
fatal: [vagrant]: FAILED! => {"changed": false, "msg": "Unable to restart service nginx: Failed to restart nginx.service: Connection timed out\nSee system logs and 'systemctl status nginx.service' for details.\n"}
但是,直到上次sudo: yes命令才起作用。并且没有出现上述错误。
但是这一次,通过添加sudo:yes命令
name: restart nginx
service: name=nginx state=restarted
sudo: yes
给出以下错误:
ERROR! conflicting action statements: service, sudo
The error appears to be in '/Users/mac/Documents/GitHub/petalandstem/ansible/roles/webtier/handlers/main.yml': line 28, column 3, but may
be elsewhere in the file depending on the exact syntax problem.
The offending line appears to be:
- name: restart nginx
^ here
Ansible failed to complete successfully. Any error output should be
visible above. Please fix these errors and try again.
如何成功重启nginx?
解决方案
正确的语法是
- name: restart nginx
service: name=nginx state=restarted
become: true
become_method: sudo
请参阅了解权限提升:成为。
推荐阅读
- node.js - 无法读取未定义猫鼬的属性“长度”
- environment-variables - JWT(jsonwebtoken) 标志不适用于环境变量
- python - 如何限制我的学生不访问 django 中的教师区域?
- r - R Highcharter 热图 x 轴类别
- python - 如何修复“TypeError:int() 参数必须是字符串、类似字节的对象或数字,而不是 'NoneType'”
- laravel - 存储具有对外关系的新实体
- c - 请解释这段 C 代码的输出
- android - 如何强制 SQLite 数据库从磁盘重新加载
- python - 如何用正则表达式同时搜索两个可能的引号?
- javascript - 如何停止动画Javascript?