понедельник, 13 января 2025 г.

Установка Unifi Controller 7.3 на РЕД ОС 7.3

В связи с выходом из строя железного контроллера Unifi, появилась надобность в запуске небольшой виртуальной машинки с контроллером. Так как устройства в беспроводной сети поголовно все устаревшие - версия контроллера Unifi требовалась не старше 7.3. Так же, в связи с импортозамещением, в качестве ОС выбрана РЕД ОС 7.3.

Для ускорения установки воспользовался готовой сборкой с сайта marmotte.net.

1. Устанавливаем UniFi Controller 7.3:

# dnf install https://dl.marmotte.net/rpms/redhat/el7/x86_64/unifi-controller-7.3.83-1.el7_9/unifi-controller-7.3.83-1.el7_9.x86_64.rpm


2. Контроллер по-умолчанию устанавливается в каталог /opt/UniFi. При установке контроллера в зависимостях также устанавливаются СУБД mongoDB 3.6 и java-1.8.0-openjdk. В файле /opt/UniFi/readme.txt написаны рекомендации по ПО - это mongoDB 3.4.15 и Oracle Java 8. При этом если с mongoDB 3.6 контроллер работать еще будет, то с Java 1.8.0 он не работает. Судя по документации версия 7.3 контроллера работает максимум с java-11-openjdk. Поэтому устанавливаем требуемую версию Java:

# dnf install java-11-openjdk

выбираем установленную версию Java по-умолчанию:

# alternatives --config java

*  1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.422.b06-3.el7.x86_64/jre/bin/java)

+ 2 java-11-openjdk.x86_64 (/usr/lib/jvm/java-11-openjdk-11.0.25.0.9-1.el7.x86_64/bin/java)

и проверяем что теперь по-умолчанию установлена версия 11:

# java -version
openjdk version "11.0.25" 2024-10-15 LTS
OpenJDK Runtime Environment (Red_OS-11.0.25.0.9-1.el7) (build 11.0.25+9-LTS)
OpenJDK 64-Bit Server VM (Red_OS-11.0.25.0.9-1.el7) (build 11.0.25+9-LTS, mixed mode, sharing)

3. После этого остается только запустить сервис UniFi и зайти на веб-страницу конфигурирования контроллера http://айпи_адрес_контроллера:8080. Сервис mongoDB запускать не нужно, контроллер для работы будет запускать его самостоятельно:

# systemctl enable unifi

systemctl start unifi

4. Возможно понадобится восстановление базы данных. Производится оно командой:

# mongod --repair --dbpath /opt/UniFi/data/db/