@Override
    protected double maintain() {
        // Reboot candidates: Nodes in long-term states, where we know we can safely orchestrate a reboot
        List<Node> nodesToReboot = nodeRepository().nodes().list(Node.State.active, Node.State.ready).stream()
                .filter(node -> node.type().isHost())
                .filter(this::shouldReboot)
                .toList();

        if (!nodesToReboot.isEmpty())
            nodeRepository().nodes().reboot(NodeListFilter.from(nodesToReboot));
        return 1.0;
    }
This schedules periodic reboot of all nodes.
We reboot nodes periodically to surface problems at reboot with a smooth frequency rather than
potentially in burst when many nodes need to be rebooted for external reasons.

@author bratseth
node-repository/src/main/java/com/yahoo/vespa/hosted/provision/maintenance/NodeRebooter.java