How to restart services on remote hosts with Ansible?

I’m going to show you a live Playbook with some simple Ansible code. I’m Luca Berton and welcome to today’s episode of Ansible Pilot.

Ansible restart services on remote hosts

Today we’re talking about the Ansible module service. The full name is ansible.builtin.service which means is part of the collection of modules “builtin” with ansible and shipped with it. This module is pretty stable and out for years. The purpose is to controls services on remote hosts. The Supported service systems include BSD, OpenRC, SysV, Solaris SMF, systemd, and upstart. For Windows targets, use the ansible.windows.win_service module instead.

Parameters

  • name path - name of the service
  • state string - started / stopped / restarted / reloaded
  • enabled boolean - no/yes
  • sleep integer - seconds after the restart
  • arguments/args string - extra args

The parameter list is pretty wide but I’ll summarize the most useful. The only required parameter is “name” that specifies the name of the service. At least one between the “state” and “enabled” parameters is mandatory. The “state” parameter defines the action that we are going to take. It has four alternatives options: “started” and “stopped” options allow you to run or stop the service. “restarted” is a combination of stop and start - you could also customize the number of seconds between using the “sleep” parameter The “reloaded” option is useful if the service needs to reload the configuration file. The “enable” parameter allows you to decide if the service should start on boot or not. The “arguments or args” parameter allows you to specify some additional arguments provided on the command line.

Join 50+ hours of courses in our exclusive community

Playbook

Let’s jump into a real-life playbook on how to controls services on remote hosts with Ansible Playbook.

  • service.yml
---
- name: service module Playbook
  hosts: all
  become: true
  tasks:
    - name: sshd restart
      ansible.builtin.service:
        name: sshd
        state: restarted
        enabled: true

code with ❤️ in GitHub

Conclusion

Now you know how to restart and control services on remote hosts with Ansible. Subscribe to the YouTube channel, Medium, and Website, X (formerly Twitter) to not miss the next episode of the Ansible Pilot.

Academy

Learn the Ansible automation technology with some real-life examples in my Udemy 300+ Lessons Video Course.

BUY the Complete Udemy 300+ Lessons Video Course

My book Ansible By Examples: 200+ Automation Examples For Linux and Windows System Administrator and DevOps

BUY the Complete PDF BOOK to easily Copy and Paste the 250+ Ansible code

Want to keep this project going? Please donate

Patreon Buy me a Pizza