MachineHealthCheck

Для группы узлов Control Plane на вкладке MachineHealthCheck можно:

  • настроить разные конфигурации MachineHealthCheck для проверки работоспособности машин. При инсталляции клиентского кластера монтируется дефолтная MachineHealthCheck для групп Control Plane узлов. Для конфигурации дополнительных MachineHealthChecks, нажмите + Добавить. Когда создано несколько конфигураций, на вкладке отображается список MachineHealthChecks.
  • перейти к просмотру и редактированию конфигурации MachineHealthCheck.
Скриншот

mhcvasternade3

Детальнее параметры MachineHealthChecks можно настроить в кластере управления в разделе Администрирование/Кастомные ресурсы с помощью кастомного ресурса MachineHealthCheck в API-группе cluster.x-k8s.io.

Скриншот

crdsmhc

Чтобы настроить конфигурацию MachineHealthCheck:

  • задайте название MachineHealthCheck. После сохранения название нельзя изменить.
  • можно задать maxUnhealthy в %. Параметр определяет максимальный процент нездоровых узлов в группе.

Обратите внимание! MachineHealthCheck не будет восстанавливать узлы, если количество нездоровых Control Plane узлов в группе больше, чем задано в maxUnhealthy.

Примеры
1. Значение maxUnhealthy - 90%:
 
В группе 3 Control Plane узла, где 2 узла нездоровы. Следовательно, количество нездоровых узлов = 66%, что меньше установленного значения *maxUnhealthy*. В этом случае узлы будут восстановлены.

2. Значение maxUnhealthy - 40%:

В группе 3 Control Plane узла, где 2 узла нездоровы. Следовательно, количество нездоровых узлов = 66%, что больше установленного значения *maxUnhealthy*. В этом случае узлы не будут восстановлены.
  • можно задать nodeStartupTimeout время ожидания присоединения узла к кластеру. Слишком маленькое значение может привести к тому, что виртуальной машине не хватит времени для создания и присоединения, попытки присоединить узел уйдут в цикл.
Пример
Значение nodeStartupTimeout - 10 мин:

В этом случае, прежде чем считать узел нездоровым, должно пройти 10 минут. 
Ожидается, что этого времени достаточно для присоединения узла к кластеру.
  • в блоке Условия применения (unhealthyConditions) настройте параметры проверки узлов, при соблюдении которых узел будет считаться нездоровым:
    • выберите Тип состояния узла. Доступные типы: NetworkUnavailable, DiskPressure, MemoryPressure, PIDPressure, Ready.
    • выберите Статус состояния узла: True, False, Unknown.
    • задайте Timeout - время ожидания, по истечению которого статус узла будет считаться действительным. Рекомендуется не устанавливать слишком короткий период Timeout, чтобы не происходило ложного перезапуска, пока узел переходит в исправное состояние. Длительный период Timeout может привести к простоям рабочей нагрузки на неработоспособном узле.
Пример
Условия применения:

Тип - Ready
Статус - Unknown
Timeout - 5 мин 
Тип - Ready
Статус - False
Timeout - 5 мин 

MachineHealthCheck сработает, если при проверке выявлено, что по истечении 5 минут наступит хотя бы одно из условий:
  - узел находится в состоянии Ready-Unknown;
  - узел будет в состоянии Ready-False.

После создания MachineHealthCheck будет добавлен в список проверок на вкладке MachineHealthCheck.

Чтобы перейти к просмотру и редактированию, нажмите на строчку с названием MachineHealthCheck. В открывшемся окне можно изменить параметры maxUnhealthy, nodeStartupTimeout и Timeout в условиях применения MachineHealthCheck.

По завершению внесения изменений нажмите Сохранить.

×