- Раздел 22: Балансировщик: мониторинг и диагностика - Раздел 23: Распознавание протоколов (DPI Engine) - Раздел 24: Траблшутинг Каждый раздел включает команды, описания и практические примеры для диагностики и мониторинга работы балансировщика и системы фильтрации.
121 lines
8.5 KiB
Markdown
121 lines
8.5 KiB
Markdown
# 19. Фильтр: обновление прошивки
|
||
|
||
[← Оглавление](../README.md) · [← Раздел 18: Фильтр: мониторинг и диагностика](18.md)
|
||
|
||
---
|
||
|
||
Обновление программного обеспечения фильтра выполняется через CLI из конфигурационного режима. Система хранения прошивок построена на принципе **двух равнозначных разделов**, что позволяет безопасно обновляться и при необходимости откатываться на предыдущую версию.
|
||
|
||
## 19.1. Два раздела: prim1 и prim2 (равнозначные) + FB (заводская)
|
||
|
||
На SSD-накопителе фильтра расположены **три раздела** для программного обеспечения:
|
||
|
||
| Раздел | Описание |
|
||
| --------- | ---------------------------------------------------------------- |
|
||
| **FB** | Заводская прошивка — минимальный образ, предоставляющий только доступ к management-интерфейсу и возможность загрузить нормальную прошивку |
|
||
| **prim1** | Первый рабочий раздел для полноценной прошивки |
|
||
| **prim2** | Второй рабочий раздел для полноценной прошивки |
|
||
|
||
Разделы **prim1** и **prim2** — **абсолютно равнозначные**. Нет «основного» и «второстепенного» — оба раздела одинаковы. На каждом может быть загружен свой образ ПО, и между ними можно свободно переключаться (с перезагрузкой).
|
||
|
||
## 19.2. `firmware status` — текущее состояние (cur / boot)
|
||
|
||
Команда `firmware status` (из конфигурационного режима) выводит информацию о разделах прошивки:
|
||
|
||
| Поле | Описание |
|
||
| --------- | ----------------------------------------------------------- |
|
||
| **cur** | Активная версия — та, с которой устройство работает сейчас |
|
||
| **boot** | Версия, которая будет загружена при следующей перезагрузке |
|
||
|
||
Пример вывода: активная версия — `4031` (cur), после перезагрузки загрузится `4038` (boot). Это означает, что новая прошивка была установлена, но устройство ещё не перезагружено.
|
||
|
||
В нормальном рабочем состоянии значения **cur** и **boot** указывают на один и тот же раздел. После установки новой прошивки **boot** автоматически переключается на раздел с новой версией.
|
||
|
||
## 19.3. `firmware download` — скачивание, `firmware install` — установка
|
||
|
||
Обновление прошивки выполняется в **два этапа**:
|
||
|
||
### Этап 1: Скачивание
|
||
|
||
```text
|
||
firmware download <URL>
|
||
```
|
||
|
||
Команда скачивает образ прошивки с указанного URL на устройство.
|
||
|
||
### Этап 2: Установка
|
||
|
||
```text
|
||
firmware install
|
||
```
|
||
|
||
Команда устанавливает скачанный образ на **неактивный раздел** (тот, который сейчас не используется). После установки значение **boot** автоматически переключается на раздел с новой прошивкой.
|
||
|
||
**Важные ограничения:**
|
||
|
||
- Установка выполняется быстро (~5 секунд), но в этот момент фильтр может **не реагировать** на команды в CLI;
|
||
- После установки, пока устройство не перезагружено, **повторная установка невозможна** — для установки новой прошивки значения cur и boot должны совпадать;
|
||
- Для применения новой прошивки необходима **перезагрузка** устройства (из конфигурационного режима, с подтверждением).
|
||
|
||
### Полная последовательность обновления
|
||
|
||
```text
|
||
# 1. Проверить текущее состояние
|
||
firmware status
|
||
|
||
# 2. Скачать новую прошивку
|
||
firmware download <URL>
|
||
|
||
# 3. Установить на неактивный раздел
|
||
firmware install
|
||
|
||
# 4. Проверить, что boot указывает на новый раздел
|
||
firmware status
|
||
|
||
# 5. Перезагрузить устройство
|
||
reload
|
||
```
|
||
|
||
## 19.4. `firmware rollback` / `firmware reset`
|
||
|
||
Для управления разделами загрузки доступны две команды:
|
||
|
||
| Команда | Действие |
|
||
| --------------------- | ----------------------------------------------------------- |
|
||
| **firmware rollback** | Переключает **boot** на неактивный раздел (откат на другую версию) |
|
||
| **firmware reset** | Возвращает **boot** обратно на текущий активный раздел (отмена rollback) |
|
||
|
||
### firmware rollback
|
||
|
||
Команда `firmware rollback` меняет значение boot с активного раздела на неактивный. Это позволяет:
|
||
|
||
- **Откатиться** на предыдущую версию прошивки (если на другом разделе сохранена рабочая версия);
|
||
- **Отменить** запланированное обновление (если после `firmware install` вы решили не обновляться).
|
||
|
||
### firmware reset
|
||
|
||
Команда `firmware reset` выполняет обратное действие — возвращает boot на текущий активный раздел. Используется, если rollback был выполнен по ошибке.
|
||
|
||
> **Примечание:** обе команды изменяют только указатель boot — фактического переключения не происходит до перезагрузки.
|
||
|
||
## 19.5. Централизованное обновление через ЦСУ
|
||
|
||
В промышленной эксплуатации обновление прошивок выполняется **централизованно** через центральную систему управления (ЦСУ):
|
||
|
||
- Оператор инициирует обновление через интерфейс ЦСУ;
|
||
- ЦСУ автоматически скачивает и устанавливает прошивку на фильтры;
|
||
- По завершении формируется **отчёт** об успешности или неуспешности обновления;
|
||
- Перезагрузка фильтров также инициируется через ЦСУ.
|
||
|
||
Ручное обновление через CLI остаётся важным навыком для:
|
||
|
||
- Диагностики проблем с обновлением;
|
||
- Обновления единичных устройств;
|
||
- Работы на площадках, где ЦСУ временно недоступна.
|
||
|
||
При массовом обновлении множества фильтров через ЦСУ рекомендуется **последовательная** перезагрузка с проверкой работоспособности каждого устройства после обновления.
|
||
|
||
---
|
||
|
||
[← Оглавление](../README.md) · [← Раздел 18: Фильтр: мониторинг и диагностика](18.md) · [Раздел 20: Балансировщик: аппаратная платформа →](20.md)
|