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
相关推荐
叼烟扛炮13 分钟前
[Git 实战] 学习笔记:从生成 SSH 密钥到解决 TortoiseGit 推送报错全指南
linux·运维·笔记·git·学习
xbzb42 分钟前
OpenStack 网络管理(理论):Linux 网络虚拟化是 Neutron 的地基
linux·服务器·网络·openstack·network·neutron
Android系统攻城狮2 小时前
Linux FFmpeg深度解析之avcodec_flush_buffers调用流程与实战(十九)
linux·运维·服务器·ffmpeg·车载音视频·ffmpeg音视频进阶
水饺编程3 小时前
第2章:Linux 基础,解压缩【.tar.bz2】压缩包文件
linux·c语言·汇编
Zevalin爱灰灰3 小时前
Linux入门第二部分(ARM裸机篇) 第二章 Cortex-A7 MPCore架构与ARM汇编基础
linux·汇编·arm开发·嵌入式
倔强的石头1063 小时前
【Linux指南】进程通信系列(七):System V 信号量 —— 同步互斥的内核原语
linux·运维·服务器
GeW4 小时前
从"补短板"到"强优势"Linux与数据库认证成为产业跃迁人才支点
linux·数据库
PellyKoo6 小时前
【Ubuntu】GTX 1080 Ti 显卡占用为0但功率高达60W的排查与解决
linux·运维·ubuntu
Fruiticecake6 小时前
epoll 回显服务器是怎么工作的:从 accept 队列到就绪链表,以及它和 select / poll 的区别
linux
承渊政道7 小时前
Linux网络学习【从NAT与代理服务理解网络转发、探索内网穿透原理、再到认识DNS与ICMP、最后动手部署并测试内网穿透】
linux·网络·学习·内网穿透·dns·nat