Ansible——service模块

发布于:2024-06-11 ⋅ 阅读:(22) ⋅ 点赞:(0)

 

目录

参数总结

语法示例 

1. 启动服务

2. 停止服务

3. 重启服务

4. 重新加载服务

5. 启用服务

6. 禁用服务

7. 使用定时启动选项

8. 查询帮助信息

 Playbook示例 

1. 启动服务

2. 停止服务

3. 重启服务

4. 重新加载服务

5. 启用服务

6. 禁用服务


service 模块是 Ansible 用于管理服务状态的模块。它可以用来启动、停止、重新启动和启用(或禁用)系统服务。下面是一些常见操作和示例,展示如何使用 service 模块在 Ansible Playbook 中管理服务。

参数总结

  1. name:

    • 描述:要管理的服务的名称。
    • 类型:字符串
    • 必需:是
  2. state:

    • 描述:服务的目标状态。
    • 可选值:
      • started:启动服务
      • stopped:停止服务
      • restarted:重启服务
      • reloaded:重新加载服务
    • 类型:字符串
  3. enabled:

    • 描述:是否在引导时启用或禁用服务。
    • 类型:布尔值
    • 可选值:yesno
  4. runlevel:

    • 描述:指定在某些运行级别下启用或禁用服务。
    • 类型:字符串
    • 示例:2,3,4,5
  5. sleep:

    • 描述:在启动或停止服务后等待的时间(秒)。
    • 类型:整数
    • 默认值:0
  6. arguments:

    • 描述:传递给服务管理工具的额外参数。
    • 类型:字符串
  7. pattern:

    • 描述:如果使用了 init.d 脚本并且该服务有多个实例正在运行,使用此正则表达式模式来匹配正确的进程。
    • 类型:字符串

 

语法示例 

 

1. 启动服务

启动服务 nginx

ansible all -m service -a "name=nginx state=started"

2. 停止服务

停止服务 nginx

ansible all -m service -a "name=nginx state=stopped"

3. 重启服务

重启服务 nginx

ansible all -m service -a "name=nginx state=restarted"

4. 重新加载服务

重新加载服务 nginx

ansible all -m service -a "name=nginx state=reloaded"

5. 启用服务

在系统启动时启用 nginx 服务:

ansible all -m service -a "name=nginx enabled=yes"

6. 禁用服务

在系统启动时禁用 nginx 服务:

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