---
title: 'Управлять проверками доступности'
sidebar_label: 'Управлять проверками доступности'
sidebar_position: 4
description: 'Как изменить, создать, удалить проверку доступности'
---

import Tabs from '@theme/Tabs'
import TabItem from '@theme/TabItem'
import {TabItemLabel} from '@selectel/docux/components'
import MoreVerticalIcon from '@selectel/docux/icons/more-vertical'
import CheckIcon from '@selectel/docux/icons/check'
import EditIcon from '@selectel/docux/icons/edit'
import Formbricks from '@theme/MDXComponents/Formbricks'

# Управлять проверками доступности

У [целевой группы](/cloud-servers/load-balancers/about-load-balancers.mdx#target-groups) может быть только одна [проверка доступности](/cloud-servers/load-balancers/about-load-balancers.mdx#availability-checks).

В проверке доступности можно [изменить](#change-availability-check) все параметры, кроме типа проверки. Если нужно изменить тип проверки, вы можете [удалить существующую проверку доступности](#delete-availability-check) и [создать новую](#create-availability-check) с нужным типом через OpenStack CLI.

## Создать проверку доступности \{#create-availability-check}

<Tabs queryString="create-availability-check">
  <TabItem value="openstack">
    <TabItemLabel>
      OpenStack CLI
    </TabItemLabel>

    1. [Откройте OpenStack CLI](/cloud-servers/tools/openstack-cli/).

    2. Создайте проверку доступности:

       ```bash
       openstack loadbalancer healthmonitor create \
         --name <name> \
         --delay <delay> \
         --timeout <timeout> \
         --max-retries <max_retries> \
         --max-retries-down <max_retries_down> \
         --type <type> \
         --http-method <http_method> \
         --url-path <url_path> \
         --expected-codes <codes> \
         <pool>
       ```

       Укажите:

       * `<delay>` — интервал между проверками в секундах;
       * `<timeout>` — время ожидания ответа в секундах;
       * `<max_retries>` — количество успешных обращений подряд, после которых сервер переводится в рабочее состояние;
       * `<max_retries_down>` — количество неуспешных обращений подряд, после которых работа сервера приостанавливается;
       * `<type>` — тип проверки зависимости от протокола целевой группы:

         * группа TCP — `TCP`, `PING`;
         * группа PROXY — `TLS_HELLO`, `HTTP`, `TCP`, `PING`;
         * группа UDP — `UDP_CONNECT`, `PING`;
         * группа HTTP — `HTTP`, `TCP`, `PING`;
       * параметры HTTP-запроса, если вы выбрали тип проверки `HTTP`:

         * `--http-method <http_method>` — метод проверки: `GET`, `POST`, `DELETE`, `PUT`, `HEAD`, `OPTIONS`, `PATCH`, `CONNECT`, `TRACE`;
         * `--url-path <url_path>` — путь запроса без доменного имени;
         * `--expected-codes <codes>` — ожидаемые коды ответа через запятую;
       * `<pool>` — ID или имя целевой группы, можно посмотреть с помощью команды `openstack loadbalancer pool list`.
  </TabItem>
</Tabs>

## Изменить проверку доступности \{#change-availability-check}

<Tabs queryString="change-availability-check">
  <TabItem value="panel" default>
    <TabItemLabel>
      Панель управления
    </TabItemLabel>

    1. В [панели управления](https://my.selectel.ru/vpc/default/lbaas/load-balancers/) в верхнем меню нажмите **Продукты** и выберите **Облачные серверы**.
    2. Перейдите в раздел **Балансировщики** → вкладка **Целевые группы**.
    3. Откройте страницу целевой группы.
    4. Убедитесь, что тумблер **Проверки доступности** включен.
    5. Если тип проверки — HTTP, то вы можете изменить обращение к URL и ожидаемые коды ответа, для этого нажмите **Изменить** и введите новые настройки.
    6. Опционально: откройте блок **Расширенные настройки правила** и укажите [настройки соединений](/cloud-servers/load-balancers/about-load-balancers.mdx#connection-settings):

       * для входящих запросов на балансировщик — укажите таймаут соединения и максимум соединений;
       * для запросов от балансировщика к серверам — укажите таймаут соединения, таймаут неактивности и таймаут ожидания TCP-пакетов.
    7. Нажмите **Сохранить**.
  </TabItem>

  <TabItem value="openstack">
    <TabItemLabel>
      OpenStack CLI
    </TabItemLabel>

    1. [Откройте OpenStack CLI](/cloud-servers/tools/openstack-cli/).
    2. Измените параметры проверки. Тип проверки изменить нельзя:

       ```bash
       openstack loadbalancer healthmonitor set \
         --delay <delay> \
         --timeout <timeout> \
         --max-retries <max_retries> \
         --max-retries-down <max_retries_down> \
         --http-method <http_method> \
         --url-path <url_path> \
         --expected-codes <codes> \
         <health_monitor>
       ```

       Укажите:

       * `<delay>` — интервал между проверками в секундах;
       * `<timeout>` — время ожидания ответа в секундах;
       * `<max_retries>` — количество успешных обращений подряд, после которых сервер переводится в рабочее состояние;
       * `<max_retries_down>` — количество неуспешных обращений подряд, после которых работа сервера приостанавливается;
       * параметры HTTP-запроса, если тип проверки — `HTTP`:

         * `--http-method <http_method>` — метод проверки: `GET`, `POST`, `DELETE`, `PUT`, `HEAD`, `OPTIONS`, `PATCH`, `CONNECT`, `TRACE`;
         * `--url-path <url_path>` — путь запроса без доменного имени;
         * `--expected-codes <codes>` — ожидаемые коды ответа через запятую;
       * `<health_monitor>` — ID или имя проверки доступности, можно посмотреть с помощью команды `openstack loadbalancer healthmonitor list`.
  </TabItem>
</Tabs>

## Удалить проверку доступности \{#delete-availability-check}

:::warning

Если вы удалите проверку доступности, балансировщик будет направлять трафик на все серверы целевой группы, включая недоступные.

:::

<Tabs queryString="delete-availability-check">
  <TabItem value="openstack">
    <TabItemLabel>
      OpenStack CLI
    </TabItemLabel>

    1. [Откройте OpenStack CLI](/cloud-servers/tools/openstack-cli/).

    2. Удалите проверку:

       ```bash
       openstack loadbalancer healthmonitor delete <health_monitor>
       ```

       Укажите `<health_monitor>` — ID или имя проверки доступности, можно посмотреть с помощью команды `openstack loadbalancer healthmonitor list`.
  </TabItem>
</Tabs>

<Formbricks />
