Ansible——service模块

目录

参数总结

语法示例

[1. 启动服务](#1. 启动服务)

[2. 停止服务](#2. 停止服务)

[3. 重启服务](#3. 重启服务)

[4. 重新加载服务](#4. 重新加载服务)

[5. 启用服务](#5. 启用服务)

[6. 禁用服务](#6. 禁用服务)

[7. 使用定时启动选项](#7. 使用定时启动选项)

[8. 查询帮助信息](#8. 查询帮助信息)

Playbook示例

[1. 启动服务](#1. 启动服务)

[2. 停止服务](#2. 停止服务)

[3. 重启服务](#3. 重启服务)

[4. 重新加载服务](#4. 重新加载服务)

[5. 启用服务](#5. 启用服务)

[6. 禁用服务](#6. 禁用服务)


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

参数总结

  1. name:

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

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

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

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

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

    • 描述:传递给服务管理工具的额外参数。
    • 类型:字符串
  7. 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
相关推荐
别动我齐刘海9 小时前
C++ 工程化学习
java·linux·前端·c++·学习·机器学习·机器人
玖石书11 小时前
Ubuntu 24.04 UFW 全命令攻略:从入门到端口开放实战
linux·运维·ubuntu
xiaoqiMikko11 小时前
Linux 实战(七):useradd、sudoers、umask、SGID、软链 —— 三台真机实测
linux·centos
拂拉氏13 小时前
【知识讲解】 Linux之动静态库的了解
linux·运维·服务器·动静态库
Fcy64813 小时前
Linux下 五种IO模型的认识与⾮阻塞IO的实现
linux·服务器·io
Mikko714 小时前
Linux 重启后日志没了?进程被 OOM 杀了去哪看?logrotate 之后日志还往旧文件写?三台真机实测日志与性能排查
linux·运维·centos
书生执笔画浮沉14 小时前
分享一个开源小工具CAdapt
linux·c·gnu·glibc·kernel·升级·灵感
mounter62515 小时前
Linux 内核热升级(Live Update)技术详解:PCI、VFIO 与 IOMMU 子系统的演进与实战解析引言
linux·linux kernel·kernel·iommu·vfio
砚凝霜15 小时前
【软考信息安全】第十九章 Unix/Linux安全分析与防护
linux·安全·unix
creator_Li15 小时前
Linux 的 Page Cache
linux·page cache