mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 12:46:18 +01:00
42 lines
2.7 KiB
Plaintext
42 lines
2.7 KiB
Plaintext
// Module included in the following assemblies:
|
|
//
|
|
// * microshift_running applications/microshift-greenboot.adoc
|
|
|
|
:_mod-docs-content-type: CONCEPT
|
|
[id="microshift-greenboot-dir-structure_{context}"]
|
|
= How Greenboot uses directories to run scripts
|
|
|
|
Health check scripts run from four `/etc/greenboot` directories. These scripts run in alphabetical order. Keep this in mind when you configure the scripts for your workloads.
|
|
|
|
When the system starts, Greenboot runs the scripts in the `required.d` and `wanted.d` directories. Depending on the outcome of those scripts, Greenboot continues the startup or attempts a rollback as follows:
|
|
|
|
. System as expected: When all of the scripts in the `required.d` directory are successfully run, Greenboot runs any scripts present in the `/etc/greenboot/green.d` directory.
|
|
|
|
. System trouble: If any of the scripts in the `required.d` directory fail, Greenboot runs any prerollback scripts present in the `red.d` directory, then restarts the system.
|
|
|
|
[NOTE]
|
|
====
|
|
Greenboot redirects script and health check output to the system log. When you are logged in, a daily message provides the overall system health output.
|
|
====
|
|
|
|
[id="greenboot-directories-details_{context}"]
|
|
== Greenboot directories details
|
|
|
|
Returning a nonzero exit code from any script means that script has failed. Greenboot restarts the system a few times to retry the scripts before attempting to roll back to the previous version.
|
|
|
|
* `/etc/greenboot/check/required.d` contains the health checks that must not fail.
|
|
|
|
** If the scripts fail, Greenboot retries them three times by default. You can configure the number of retries in the `/etc/greenboot/greenboot.conf` file by setting the `GREENBOOT_MAX_BOOTS` parameter to the desired number of retries.
|
|
|
|
** After all retries fail, Greenboot automatically initiates a rollback if one is available. If a rollback is not available, the system log output shows that manual intervention is required.
|
|
|
|
** The `40_microshift_running_check.sh` health check script for {microshift-short} is installed into this directory.
|
|
|
|
* `/etc/greenboot/check/wanted.d` contains health scripts that are allowed to fail without causing the system to be rolled back.
|
|
|
|
** If any of these scripts fail, Greenboot logs the failure but does not initiate a rollback.
|
|
|
|
* `/etc/greenboot/green.d` contains scripts that run after Greenboot has declared the start successful.
|
|
|
|
* `/etc/greenboot/red.d` contains scripts that run after Greenboot has declared the startup as failed, including the `40_microshift_pre_rollback.sh` prerollback script. This script is executed right before a system rollback. The script performs {microshift-short} pod and OVN-Kubernetes cleanup to avoid potential conflicts after the system is rolled back to a previous version.
|