目录
[1. 启动服务](#1. 启动服务)
[2. 停止服务](#2. 停止服务)
[3. 重启服务](#3. 重启服务)
[4. 重新加载服务](#4. 重新加载服务)
[5. 启用服务](#5. 启用服务)
[6. 禁用服务](#6. 禁用服务)
[7. 使用定时启动选项](#7. 使用定时启动选项)
[8. 查询帮助信息](#8. 查询帮助信息)
[1. 启动服务](#1. 启动服务)
[2. 停止服务](#2. 停止服务)
[3. 重启服务](#3. 重启服务)
[4. 重新加载服务](#4. 重新加载服务)
[5. 启用服务](#5. 启用服务)
[6. 禁用服务](#6. 禁用服务)
service
模块是 Ansible 用于管理服务状态的模块。它可以用来启动、停止、重新启动和启用(或禁用)系统服务。下面是一些常见操作和示例,展示如何使用 service
模块在 Ansible Playbook 中管理服务。
参数总结
-
name
:- 描述:要管理的服务的名称。
- 类型:字符串
- 必需:是
-
state
:- 描述:服务的目标状态。
- 可选值:
started
:启动服务stopped
:停止服务restarted
:重启服务reloaded
:重新加载服务
- 类型:字符串
-
enabled
:- 描述:是否在引导时启用或禁用服务。
- 类型:布尔值
- 可选值:
yes
或no
-
runlevel
:- 描述:指定在某些运行级别下启用或禁用服务。
- 类型:字符串
- 示例:
2,3,4,5
-
sleep
:- 描述:在启动或停止服务后等待的时间(秒)。
- 类型:整数
- 默认值:
0
-
arguments
:- 描述:传递给服务管理工具的额外参数。
- 类型:字符串
-
pattern
:- 描述:如果使用了 init.d 脚本并且该服务有多个实例正在运行,使用此正则表达式模式来匹配正确的进程。
- 类型:字符串
语法示例
1. 启动服务
启动服务 nginx
:
bash
ansible all -m service -a "name=nginx state=started"
2. 停止服务
停止服务 nginx
:
bash
ansible all -m service -a "name=nginx state=stopped"
3. 重启服务
重启服务 nginx
:
bash
ansible all -m service -a "name=nginx state=restarted"
4. 重新加载服务
重新加载服务 nginx
:
bash
ansible all -m service -a "name=nginx state=reloaded"
5. 启用服务
在系统启动时启用 nginx
服务:
bash
ansible all -m service -a "name=nginx enabled=yes"
6. 禁用服务
在系统启动时禁用 nginx
服务:
bash
ansible all -m service -a "name=nginx enabled=no"
7. 使用定时启动选项
确保服务在系统启动时启用:
ansible all -m service -a "name=nginx enabled=yes state=started"
8. 查询帮助信息
要获取 service
模块的所有选项和参数,可以使用以下命令查看详细帮助:
ansible-doc -s service
Playbook示例
1. 启动服务
启动服务 nginx
:
---
- name: Start Nginx Service
hosts: all
tasks:
- name: Ensure nginx service is started
service:
name: nginx
state: started
2. 停止服务
停止服务 nginx
:
---
- name: Stop Nginx Service
hosts: all
tasks:
- name: Ensure nginx service is stopped
service:
name: nginx
state: stopped
3. 重启服务
重启服务 nginx
:
---
- name: Restart Nginx Service
hosts: all
tasks:
- name: Ensure nginx service is restarted
service:
name: nginx
state: restarted
4. 重新加载服务
重新加载服务 nginx
:
---
- name: Reload Nginx Service
hosts: all
tasks:
- name: Ensure nginx service is reloaded
service:
name: nginx
state: reloaded
5. 启用服务
在系统启动时启用 nginx
服务:
---
- name: Enable Nginx Service
hosts: all
tasks:
- name: Ensure nginx service is enabled on boot
service:
name: nginx
enabled: yes
6. 禁用服务
在系统启动时禁用 nginx
服务:
---
- name: Disable Nginx Service
hosts: all
tasks:
- name: Ensure nginx service is disabled on boot
service:
name: nginx
enabled: no