---
title: "Аддон TWC Alert Bot для Kubernetes"
description: "Аддон TWC Alert Bot для Kubernetes. Установка, настройка, примеры использования. Документация и инструкции по работе с облачными сервисами Timeweb Cloud."
---

> Полный индекс документации для ИИ-агентов: [llms.txt](https://timeweb.cloud/llms.txt).

TWC Alert Bot — аддон для Kubernetes, который отправляет уведомления о событиях в кластере в Telegram, Discord или Slack. Он отслеживает рестарты подов, ошибки `liveness`\- и `readiness`\-проб, недоступность нод и другие потенциально критичные события. Дополнение поможет быстро реагировать на проблемы и поддерживать стабильность инфраструктуры.

## Установка

Перейдите во вкладку «Дополнения» в панели управления кластером и нажмите на карточку аддона «TWC Alert Bot».

![Image 20250917162010743](https://content.timeweb.com/assets/85434aaa-4d3a-42d5-b3ce-d28464264a7f.png?width=1998&height=1434)

Обязательный параметр для работы уведомлений — `clusterName`. Это произвольное имя кластера, которым будут подписываться уведомления. По умолчанию используется имя кластера.

Параметры для подключения Telegram, Slack или Discord описаны в [разделе о настройке уведомлений](https://timeweb.cloud/docs/k8s/addons/twc-alert-bot#nastrojka-uvedomlenij).

Можно указать, какие неймспейсы отслеживать, с помощью параметра:

```yaml
namespaceToWatch: ""
```

Если нужно получать уведомления только из конкретных неймспейсов — укажите их через запятую:

```yaml
namespaceToWatch: "default,production"
```

Также можно исключить из наблюдения определенные поды. Для этого используется параметр `exceptions`. Можно указывать как точные имена подов, так и части имен. Если имя пода совпадает с одной из строк — алерт по нему не придет.

```yaml
exceptions:
  - "test-"
  - "debug-"
  - "-temp-"
  - "my-pod"
```

Сами уведомления настраиваются в секции `alerts:` в манифесте. Доступные варианты:

| **Параметр** | **Описание** |
| --- | --- |
| `podRestarts` | Алерты по рестартам контейнеров в подах |
| `podAddDelete` | Алерты при создании и удалении подов |
| `workloadAddDelete` | Алерты при создании и удалении деплойментов |
| `serviceAddDelete` | Алерты при создании и удалении сервисов |
| `podPendingError` | Алерты по зависшим или ошибочным подам (`Pending`, `Unknown`) |
| `probesFailures` | Алерты по сбоям `liveness`\- и `readiness`\-проб |
| `nodeNotReady` | Алерты при переходе ноды в состояние `NotReady` |
| `nodeResources` | Алерты по превышению порогов CPU/Memory на нодах |
| `warnEvents` | Алерты по прочим Warning-событиям (например, `FailedScheduling`) |

После настройки нажмите «Установить».

![Image 20250917162500189](https://content.timeweb.com/assets/1bc2b83b-e468-41c2-af2c-8dc45abdf167.png?width=2026&height=1404)

Проверьте, что установка завершена корректно. Для этого выполните команду

```shell
kubectl get all -n twc-alert-bot
```

Вы увидите примерно такой вывод:

```bash
NAME                                 READY   STATUS    RESTARTS   AGE
pod/twc-alert-bot-7955f9c94b-j57w6   1/1     Running   0          19s

NAME                            READY   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/twc-alert-bot   1/1     1            1           19s

NAME                                       DESIRED   CURRENT   READY   AGE
replicaset.apps/twc-alert-bot-7955f9c94b   1         1         1       19s
```

## Настройка уведомлений

Чтобы получать уведомления от бота, подключите один или несколько мессенджеров.

Telegram

Чтобы бот отправлял уведомления в Telegram, укажите в конфигурации:

```shell
telegramEnabled: true
```

Обязательные параметры для работы уведомлений:

-   `telegramBotToken` — токен, полученный с помощью бота [@BotFather](https://t.me/BotFather).
-   `telegramChatId` — ID чата или канала, в который будут отправляться уведомления.
-   `clusterName` — произвольное имя кластера, которым будут подписываться уведомления.

### Получение токена

Токен необходим для управления ботом. Для создания бота перейдите к [@BotFather](https://t.me/BotFather). Создайте нового бота, отправив команду `/newbot`. Затем укажите имя и юзернейм бота. После этого [@BotFather](https://t.me/BotFather) пришлет токен нового бота.

![Image 20250916183700806](https://content.timeweb.com/assets/d54fe4e4-6f7c-486d-a374-10dd3fef79b9.png?width=1630&height=1228)

_Получение токена в интерфейсе [Telegram](https://telegram.org/)_

Этот токен необходимо указать в конфигурации дополнения:

```bash
telegramBotToken: "8119738188:AAnjknsd788asd0kl2309s3pipa11239"
```

Добавьте созданного бота в группу или канал с правом на отправку сообщений.

### Получение ID чата

Бот может взаимодействовать с пользователями в канале, группе или личном чате. Чтобы получить нужный `chat_id`, выполните одно из следующих действий:

-   Добавьте бота в группу
-   Добавьте бота в канал в качестве администратора
-   Откройте личный чат с ботом

После этого отправьте любое сообщение в соответствующий чат (группу, канал или личный).

Затем откройте в браузере ссылку:

```shell
https://api.telegram.org/bot<ТОКЕН_БОТА>/getUpdates
```

Вы увидите JSON с последними сообщениями, полученными ботом. Найдите блок `chat.id` — он содержит нужный идентификатор:

-   Для групп и каналов — значение будет отрицательным.
-   Для личных чатов — положительным.

![Scr 20250918 Kbzc](https://content.timeweb.com/assets/2ae29f93-d3b7-4c39-bea8-efe86487b697.png?width=1868&height=1466)

_Просмотр JSON-файла на странице [api.telegram.org](https://api.telegram.org)_

В конфигурации дополнения укажите полученный ID:

```shell
telegramChatId: "-1001236503122"
```

По умолчанию также включен параметр:

```shell
telegramSendTestMessage: true
```

Благодаря этому параметру бот сразу после установки попытается отправить тестовое сообщение. Если все подключено корректно, вы его увидите.

Slack

Создайте App. Перейдите на [страницу создания App](https://api.slack.com/apps?new_app=1), нажмите кнопку «Create an App» и выберите пункт «From scratch». Укажите имя App и выберите воркспейс для подключения. Затем нажмите «Create App».

![Image 20250917114319240](https://content.timeweb.com/assets/e99e3cf4-f46b-4946-a603-a177e1261682.png?width=1172&height=1108)

_Создание App в [Slack](https://slack.com/)_

Сразу после создания вы будете перенаправлены на страницу настроек App. Перейдите в раздел «Incoming Webhooks», включите вебхуки и создайте новый, нажав кнопку «Add New Webhook».

![Image 20250917114613683](https://content.timeweb.com/assets/d04b378c-600a-483e-a834-edb2b9cacad4.png?width=1874&height=1656)

_Страница настроек App в [Slack](https://slack.com/)_

В открывшемся окне выберите канал, в который приложение сможет отправлять сообщения. Затем нажмите «Allow».

![Image 20250917114645794](https://content.timeweb.com/assets/4295db8c-2c0c-433d-b7cc-afaeae1ea7a8.png?width=1164&height=1014)

_Выбор канала в [Slack](https://slack.com/)_

После этого вы снова окажетесь на странице настроек, где теперь будет отображаться URL вебхука. Скопируйте его.

![Image 20250917120344567](https://content.timeweb.com/assets/6ae606cc-f017-4802-b642-43460a5ab5e2.png?width=1834&height=1340)

_Страница настроек App в [Slack](https://slack.com/)_

Вернитесь к конфигурации дополнения и найдите фрагмент:

```yaml
webhooks: []
# - type: slack
#   url: "https://hooks.slack.com/services/XXX/YYY/ZZZ"
# - type: discord
#   url: https://discord.com/api/webhooks/...
```

Удалите квадратные скобки и раскомментируйте строки, связанные со Slack. В поле url укажите URL вебхука, который вы получили ранее. В итоге конфигурация должна выглядеть так:

```yaml
webhooks:
 - type: slack
   url: "https://hooks.slack.com/services/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Jz"
# - type: discord
#   url: "https://discord.com/api/webhooks/..."
```

Discord

Создайте вебхук. Для этого перейдите в настройки канала, в который будут отправляться уведомления.

![Image 20250917142215743](https://content.timeweb.com/assets/a0d706b4-6daf-4a65-86ee-161e79077b44.png?width=2006&height=722)

_Настройки канала в интерфейсе [Discord](https://discord.com/)_

В открывшемся окне настроек перейдите в раздел «Интеграции» и нажмите кнопку «Создать вебхук».

![Image 20250917142629659](https://content.timeweb.com/assets/61c51793-95fa-4dc0-8e21-55e3fc231f59.png?width=2120&height=880)

_Раздел «Интеграции» в интерфейсе [Discord](https://discord.com/)_

Затем в появившемся окне снова нажмите «Создать вебхук». После этого разверните его настройки, нажав на созданный вебхук.

![Image 20250917142745076](https://content.timeweb.com/assets/a30f52f9-aa63-4457-af41-7e9b394eac06.png?width=2104&height=1182)

_Раздел «Интеграции» → «Вебхуки» в интерфейсе [Discord](https://discord.com/)_

Скопируйте URL вебхука — он понадобится для настройки интеграции.

Вернитесь к конфигурации дополнения и найдите фрагмент:

```yaml
webhooks: []
# - type: slack
#   url: "https://hooks.slack.com/services/XXX/YYY/ZZZ"
# - type: discord
#   url: https://discord.com/api/webhooks/...
```

Удалите квадратные скобки и раскомментируйте строки, связанные с Discord. В поле `url` укажите скопированный ранее вебхук. Конфигурация должна выглядеть так:

```yaml
webhooks:
# - type: slack
#   url: "https://hooks.slack.com/services/XXX/YYY/ZZZ"
 - type: discord
   url: "https://discord.com/api/webhooks/14178357700512334/Z97wSlcrpipanjsS5hsbonushUqD5bSg_WcSptOmckvOj0pBslEZrm8"
```

На этом настройка завершена.
