ceph-ansible/cluster-maintenance.yml

38 lines
950 B
YAML

---
# This playbook was made to automate Ceph servers maintenance
# Typical use case: hardware change
# By running this playbook you will set the 'noout' flag on your
# cluster, which means that OSD **can't** be marked as out
# of the CRUSH map, but they will be marked as down.
# Basically we tell the cluster to don't move any data since
# the operation won't last for too long.
- hosts: <your_host>
gather_facts: False
tasks:
- name: Set the noout flag
command: ceph osd set noout
delegate_to: <your_monitor>
- name: Turn off the server
command: poweroff
- name: Wait for the server to go down
local_action: >
wait_for host=<your_host>
port=22
state=stopped
- name: Wait for the server to come up
local_action: >
wait_for host=<your_host>
port=22
delay=10
timeout=3600
- name: Unset the noout flag
command: ceph osd unset noout
delegate_to: <your_monitor>