node_health

Role is used by the node-health validation to verify state of the overcloud compute services and baremetal nodes they are running on.

As the clients contacted require Keystone authentication, the role requires relevant values, such as Keystone endpoint and username, for correct operation. Otherwise it will produce authentication error.

Role Documentation

Welcome to the “node_health” role documentation.

Role Variables: main.yml

metadata:
  name: Node health check
  description: >
    Check if all overcloud nodes can be connected to before starting a
    scale-up or an upgrade.
  groups:
  - pre-upgrade

Molecule Scenarios

Molecule is being used to test the “node_health” role. The following section highlights the drivers in service and provides an example playbook showing how the role is leveraged.

Scenario: default

Driver: podman:
Molecule Platform(s)
- name: centos
  hostname: centos
  image: centos/centos:stream8
  registry:
    url: quay.io
  dockerfile: ../../../../.config/molecule/Dockerfile
  pkg_extras: python*-setuptools python*-pyyaml
  volumes:
  - /etc/ci/mirror_info.sh:/etc/ci/mirror_info.sh:ro
  privileged: true
  environment:
    http_proxy: "{{ lookup('env', 'http_proxy') }}"
    https_proxy: "{{ lookup('env', 'https_proxy') }}"
  ulimits:
  - host
Molecule Inventory
hosts:
  all:
    hosts:
      centos:
        ansible_python_interpreter: /usr/bin/python3
Example default playbook
- name: Converge
  hosts: all
  gather_facts: false

  tasks:
  - name: Warn developers about the lack of molecule testing
    fail:
      msg: >-
        This role needs molecule tests!