# Обновление кластера UserGate
###### tags: `UserGate` `Update`
## Предупреждения
:::warning
Перед началом обновления рекомендуется посетить страницу https://docs.usergate.com/usergate-6x-245/ с известными багами новой версии.
Там можно увидеть не только проблемы которые могут появиться после установки апдейта, но и где взять хотфикс для их устранения, возможно это будет необходимо сделать сразу после обновления.
:::danger
:warning: **ВАЖНО:**:warning:
Неправильная установка хотфикса (например по несоответствию версии) может привести к невозможности загрузить UGOS), не забывайте что хотфикс не = патч, устанавливается только по факту выявления проблемы. На данный момент хотфиксы не распространяются и применяются только специалистами техподдержки на проблемной системе в формате удалённого помощника.
:::
## Рекомендации
:::success
Рекомендуется использовать оффлайн обновления с выкачиванием нужной версии обновления UGOS файлом с сайта вендора.
Офлайн обновления не только быстрее устанавливаются, но и делают невозможными ряд проблем с зависанием скачивания самого обновления в процессе.
:::
## Особенности
* При обновлении кластера, апдейт скачивается на один узел, а затем с этого узла копируется на другие узлы.
* После того как обновление скопируется на второй узел полностью, будет доступен change log.
* Для обновления узлов кластера конфигурации необходимо, чтобы все узлы были включены и доступны на момент обновления первого узла.
* Узлы, недоступные на момент обновления первого узла, после обновления необходимо будет добавить в кластер заново.
* При обновлении одного из узлов кластер не развалится, но перейдёт в degrage состояние. Работа кластера будет продолжаться на том узле, на котором НЕ производилось обновление.
* Как только обновление закончится и старая мастер нода, уже обновленная, запустится, адреса вернутся на нее обратно. После установки обновления на второй узел и его загрузки, кластер снова перейдёт в стабильное состояние.
:::danger
:warning:**Внимание**:warning:
Не вносите изменение в конфигурацию, пока кластер находится в degrade состоянии во избежание последующих проблем в синхронизации узлов.
:::
## Процедура обновления
**Рекомендуемая процедура следующая:**
1. Обновить ПО на неактивном узле кластера.
2. Отключением (физическим или программным) одного из интерфейсов с виртуальными адресами на активном узле перевести трафик пользователей на обновлённый узел.
3. Проверить работу сервисов через новый узел.
4. Обновить ПО на мастер-узле.
5. Включить отключенный интерфейс на мастер-узле.
6. Проверить работу сервисов.
Это позволяет на любой стадии вернуться к предыдущей, работоспособной, схеме.
Ну и конечно, обязательно экспортировать конфигурацию перед обновлением.
Так же можно сделать полный backup. Для создания бэкапа лучше использовать пассивный узел.
- - - -
- - - -
- - - -
### Прочее
1. В кластере всегда обновления должны быть доступны на всех узлах.
Обновления скачиваются одним из них (не обязательно мастером), проверяются и складываются в
системную базу данных. Так как БД синхронизируется между всеми узлами в кластере, после добавления
обновления в базу оно становится доступно всем узлам. С учётом небольшой задержки на синхронизацию узлов.
2. Так как системная БД (и настройки, как часть её) в кластере синхронизируется между узлами, нет
необходимости делать бэкап всех узлов (если не стоит задача сохранить статистику пользователей).
А значит достаточно сделать бэкап только одного узла. Бэкап подразумевает собой перезагрузку узла
и недоступность для пользователей на всё время создания резервной копии. Так что для создания бэкапа
лучше использовать пассивный узел. Если же всё-таки стоит задача сохранить статистику пользователей
на всех узлах, то придётся делать бэкап на всех узлах по-очереди. Но в таком случае важно помнить, что
между созданием резервной копии на одном узле и на втором ни в коем случае нельзя вносить ни какие
изменения в конфигурацию. В противном случае возникнет рассинхронизация БД в одной и другой резервной
копии, и восстановленные из них узлы могут объединиться в кластер некорректно. Кроме того, кроме бэкапа
системы настойчиво рекомендуется использовать ещё один способ резервирования - экспорт настроек в файл.
Данный способ позволит быстро восстановить кластер в текущей конфигурации, даже если он был полностью
разрушен в результате какой либо аварии. Экспорт настроек выполняется непосредственно из веб-консоли.
По процедуре бэкапа - она доступна из загрузочного меню системы, при выборе подменю Support menu.
Т.е., как говорилось, потребует перезагрузки и приведёт к недоступности данного узла в течение
длительного времени. Кластер отказоустойчивости в таком случае должен автоматически переключиться
на второй узел, если бэкап выполняется на активном.
3. За ходом установки обновления вы следить не можете. Обновление выполняет 2 перезагрузки узла и занимает в среднем ~40 минут. ( в зависимости
от модели ПАК, количества правил фильтрации и т.д.)
4. При обновлении одного из узлов кластер не развалится, но перейдёт в degrage состояние.
Работа кластера будет продолжаться на том узле, на котором НЕ производилось обновление.
Как только обновление закончится и старая мастер нода, уже обновленная, запустится, адреса вернутся
на нее обратно. После установки обновления на второй узел и его загрузки, кластер снова перейдёт в
стабильное состояние.
Внимание! Не вносите изменение в конфигурацию, пока кластер находится в degrade состоянии во
избежание последующих проблем в синхронизации узлов.
:::success
:alien: Системный администратор
### Паламарчук Антон
:e-mail: Email: mrpalamarchuk93@gmail.com
:airplane: Telegram Channel [@ipraptor_blog](https://t.me/ipraptor_blog)
:incoming_envelope: Telegram [@IPraptor](https://t.me/IPraptor)
:::
<style>
.button {
border-radius: 4px;
color: rgb(0, 41, 123);
display:block;
text-align: center;
font-family: Arial, Helvetica, sans-serif;
font-size: 100%;
padding: 10px 25px;
margin-top: 1%;
margin-left: 1%;
text-decoration: none;
background-color: rgb( 213, 233, 255);
border: none;
display:inline-block;
}
a.back{
border-radius: 4px;
color: black;
display:block;
width:157px;
text-align: center;
font-weight:bold;
font-family: Arial, Helvetica, sans-serif;
font-size: 14px;
padding: 8px 16px;
margin: left;
margin-top: 50px;
text-decoration: none;
background-color: rgb(255,237,55);
}
</style>
<a href="https://hackmd.io/@IPraptor
" class="back">К списку заметок</a>