Каталог Поиск 0 Сравнить 0 Закладки 0 Корзина Войти
Каталог
105082, Москва, ул. Фридриха Энгельса, 75с21, БЦ Бауманский ИТКОЛ
Пн - Пт: с 09-00 до 18-00 Сб: с 10-00 до 18-00 Вс: выходной
Страницы: 1
RSS
2.4.6 нестабильна?, UniFi Network
 
После обновления до версии 2.4.6 контроллер начал периодически падать. В системных логах появляются сообщения о недостатке памяти и куче. Также зависает процесс mongod, из-за чего контроллер не удаётся перезапустить. Процесс mongod нужно убить, и только после этого можно перезапустить контроллер.
 
Для справки: я настроил cron-задачу, чтобы каждый вечер перезапускать контроллер, и этот уродливый костыль решил мою проблему. Контроллер перезагружался каждый раз без проблем. В версии 3.x этой проблемы у меня больше не возникало.
 
У меня была такая же проблема на 32-битной CentOS 6.5, Java JDK обновили до версии 1.7.0.51, и я добавил параметр запуска -Xmx1024M в команду запуска java.
 
У меня такая же проблема с Ubuntu 12.04
 
> Из любопытства, у вас есть 2 ГБ или больше свободного места на диске, где установлен UniFi контроллер? Debian Wheezy, 64-бит.  
Я перенёс /var/lib/unifi (место UniFi на Debian) на отдельный логический том LVM, потому что однажды он почти заполнил корневую файловую систему. Если бы у меня был доступ к ZFS, я бы сделал квоту ZFS для контроля. Этот том занимает 15 ГБ, из них сейчас используется около 7 ГБ. Пока что я только вручную удаляю старые данные, но база уже сократилась на несколько гигабайт при подключённых 70 точках доступа.

> Сколько оперативной памяти установлено в компьютере?  
4 ГБ, занято около 1 ГБ, но может увеличиваться в зависимости от нагрузки.

> Какую версию Java вы используете?  
Я переключился на OpenJDK 7, отредактировав стандартный init-скрипт.

> У вас установлено несколько версий Java?  
Да, из-за зависимости пакета unifi от OpenJDK 6, но в реальности я использую только OpenJDK 7.

> На какой версии ОС это установлено? 32-бит или 64-бит?  
64-бита, потому что видел слишком много проблем с MongoDB на 32-битных системах.

> Компьютер выделен только для UniFi контроллера или на нём работают другие программы?  
Это виртуальная машина, она ещё делит ресурсы с FreeRADIUS, который не занимает много ресурсов.

> Пробовали ли вы устанавливать контроллер на другой компьютер, и каков был результат?  
Да, на ранних этапах я перешёл с настройки L2 на L3 с использованием DNS. На L2 (ещё с версии 2.3.x) точки доступа запоминали IP контроллера в своей постоянной конфигурации, поэтому их приходилось сбрасывать при переходе на L3 (DNS), чтобы они могли подключиться. Позже я перенёс UniFi контроллер на другую машину в другой подсети, это было вынуждено. Всё, что мне нужно было сделать — импортировать резервную копию конфигурации, а затем при обновлении DNS записи точки доступа либо автоматически переключились на новый контроллер, либо переключались после перезагрузки через старый контроллер (или просто через SSH).

@alibek

Тебе стоит серьёзно подумать об обновлении FreeBSD хотя бы до версии 8.4, 8.2 уже не поддерживается с 2012 года. К тому же начнутся проблемы с портами на 8.2, так как в этом году будет прекращена поддержка старого pkg в пользу pkgng. (Кстати, net-mgmt/unifi2 и net-mgmt/unifi3 уже появились в портах, можно собрать собственные бинарные пакеты с помощью poudriere, я так и сделал для домашней установки UniFi).
 
Почему вы не используете обычный редактор? Ваш форум портит мои ответы.

Из любопытства, у вас на диске, где установлен UniFi контроллер, есть 2 ГБ или больше свободного места?  
Да, больше 100 ГБ.

Сколько оперативной памяти стоит в компьютере?  
6 ГБ.

Какую версию Java вы используете?  
1.6.0_32.

У вас установлено несколько версий Java?  
Нет.

На какой версии ОС он установлен? 32-битная или 64-битная?  
FreeBSD 8.2 x64 (amd64).

Компьютер выделен только под UniFi контроллер или используется ещё и для других программ?  
Да, еще используются службы DHCP (isc-dhcp) и DNS (dnsmasq).

Пробовали ли вы ставить контроллер на другой компьютер? Если да, то каков был результат?  
Нет, у меня сложная структура, которую не так просто переносить.
 
Привет, я готов помочь, вот подробности моей настройки: 32-битный Debian unstable, использую контроллер из репозитория Ubiquiti для squeeze. Ядро версии 3.8.13. Контроллер работает на openjdk 6 jre (1.6.0_30). Mongodb версии 2.4.9-1. В компьютере 2 ГБ оперативки, и этого хватает: обычно свободно около 300-400 МБ памяти в момент ошибки с памятью (лимит кучи Java установлен в 1 ГБ: -Xmx1024M). Свободного места на диске осталось меньше 2 ГБ, но это не проблема: моя база mongodb всего 33 МБ, и до расширения до 2 ГБ еще долго добираться.

Отмечу: я тоже использую mongodb на работе. Она склонна предварительно выделять дисковое пространство блоками по 2 ГБ, и если места мало, скорее всего сервер упадет. (Уже видел такое 😀) Но сначала выделяются маленькие блоки (64 МБ по документации, но, думаю, на 32-битной системе это всего 32 МБ), затем следующий блок — 128 МБ, потом 256 и так далее, пока не достигнут 2 ГБ, а после этого каждый новый блок по 2 ГБ. Вот ссылка: http://docs.mongodb.org/manual/faq/storage/#faq-disk-size — так что в реальности 2 ГБ дискового пространства нужны только когда база превышает примерно 4 ГБ.

Сам же mongodb-сервер на моём компьютере работает нормально, проблема в java-контроллере – у него утечка памяти. Я уверен, что mongodb-клиент, использующийся в контроллере, не полностью совместим с mongodb на Debian. Думаю, выпуск тестировали с mongodb 2.2 или 2.0, а с тех пор в протоколе многое поменялось. Если будет время, попробую проверить бета-версию.
 
Из любопытства, у вас есть 2 ГБ или больше свободного места на диске, где установлен контроллер UniFi? Сколько памяти установлено в компьютере? Какую версию Java вы используете? У вас установлено несколько версий Java? На какой версии ОС установлен контроллер? 32-битная или 64-битная? Компьютер используется только как контроллер UniFi или на нём есть другое программное обеспечение? Вы уже пробовали установить контроллер на другой компьютер, и если да, то какой был результат?
 
У меня тоже проблемы с зависанием контроллера в версии 2.4.6 на нескольких развертываниях. Жду, когда это исправят.
 
Привет, у меня та же самая проблема: память, используемая контроллером UniFi, постоянно растёт, пока в логах не появляется ошибка Out of memory, и сервер перестаёт отвечать. Я сделал дамп кучи с помощью visualvm, и, по-моему, ответы от mongodb не освобождаются должным образом: найдено более 100 тысяч экземпляров класса com.mongodb.Response. Всего за 10 минут добавилось ещё тысяча объектов. Я использую версию для Linux Debian с openjdk6-jre-headless и mongodb 2.4.9-1. Если нужно, могу предоставить дампы кучи.
Страницы: 1
Читают тему (гостей: 1)