BiTel

Форум BiTel
bgbilling.ru     docs.bitel.ru     wiki.bitel.ru     dbinfo.bitel.ru     bgcrm.ru     billing.bitel.ru     bitel.ru    
Текущее время: 05 июл 2025, 02:52

Часовой пояс: UTC + 5 часов [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
 Заголовок сообщения: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 19:04 
Не в сети
Клиент

Зарегистрирован: 30 янв 2013, 11:27
Сообщения: 305
Карма: 0
1) Разворачиваю резервный сервер биллинга под ubuntu 15.10
Следую строго инструкции http://bgbilling.ru/v6.0/doc/ch01s04s01 ... in_service
команда
Код:
/etc/init.d/activemq start
успешно запускает ActiveMQ
Но!!! ActiveMQ не стартует при перезагрузке ubuntu!!!
Код:
/opt/mq/data
- пустая
причем остальные скрипты: bgbilling, bginet_access, bginet_accounting, ngdataloader стартуют при перезагрузке.

2) Для проверки делаю те же шаги в ubuntu 12 - все работает идеально!
При перезагрузке автостартует все

3)Под ubuntu 15.10 скрипт запуска
Код:
/etc/init.d/activemq start
помещаю в файл
Код:
/etc/rc.local
и перегружаюсь
ActiveMQ успешно стартует!

Ну не забавно ли господа!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 19:08 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
это же ubuntu через пару лет будет как windows :)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 19:16 
Не в сети
Разработчик

Зарегистрирован: 08 ноя 2007, 01:05
Сообщения: 8343
Откуда: Уфа
Карма: 238
а не systemd ли там случайно ?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 19:22 
Не в сети
Клиент

Зарегистрирован: 30 янв 2013, 11:27
Сообщения: 305
Карма: 0
stark писал(а):
а не systemd ли там случайно ?

Я не знаю, предлагаю вам попробовать и включить в документацию, у меня сил больше нет бодаться с ubuntu, работает и славно!


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 19:41 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
stark писал(а):
а не systemd ли там случайно ?

Описание релиза
Цитата:
Продолжен перевод системы инициализации на компоненты systemd

Видимо да уже systemd


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 20:04 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В наших виртуалках CentOS и Debian с systemd тоже вроде отказывался запускаться через init.d - потому создали /usr/lib/systemd/system/activemq.service
Цитата:
[Unit]
Description=Apache ActiveMQ Daemon
After=network.target
Requires=

[Service]
Type=forking
ExecStart=/opt/activemq/apache-activemq-5.9.1/bin/linux-x86-64/activemq start
ExecStop=/opt/activemq/apache-activemq-5.9.1/bin/linux-x86-64/activemq stop

[Install]
WantedBy=multi-user.target
Потом systemctl enable activemq.service.

Биллинг bgbilling.service:
Цитата:
[Unit]
Description=BGBilling Server Daemon
After=network.target,mysql.service,activemq.service
Requires=mysql.service,activemq.service

[Service]
Type=forking
ExecStartPre=/opt/bgbilling/BGBillingServer/script/bgcommonrc checkmysql
ExecStart=/opt/bgbilling/BGBillingServer/script/bgbilling start
ExecStop=/opt/bgbilling/BGBillingServer/script/bgbilling stop

[Install]
WantedBy=multi-user.target
InetAccess:
Цитата:
[Unit]
Description=inet-access Daemon
After=network.target,mysql.service,activemq.service
Requires=mysql.service,activemq.service

[Service]
Type=forking
ExecStartPre=/opt/bgbilling/BGBillingServer/script/bgcommonrc checkmysql
ExecStart=/opt/bgbilling/inet/BGInetAccess/access.sh start
ExecStop=/opt/bgbilling/inet/BGInetAccess/access.sh stop

[Install]
WantedBy=multi-user.target
/opt/bgbilling/BGBillingServer/script/bgcommonrc checkmysql просто висит 30 секунд пока не получит соединение к БД (MariaDB вроде всё также запускается через init.d, потому при запуске виртуалки часто процесс биллинга начинал обращаться к БД до того как она запустилась).


Можно (нужно) еще и PIDFile указывать (nginx.service из пакета nginx):
Цитата:
[Unit]
Description=The nginx HTTP and reverse proxy server
After=syslog.target network.target remote-fs.target nss-lookup.target

[Service]
Type=forking
PIDFile=/run/nginx.pid
ExecStartPre=/usr/sbin/nginx -t
ExecStart=/usr/sbin/nginx
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true

[Install]
WantedBy=multi-user.target
Например,
Цитата:
...
[Service]
Type=forking
PIDFile=/opt/bgbilling/inet/BGInetAccess/.run/access.pid
...
Тогда при перезапуске через systemctl он будет нормально ждать ожидания остановки, иначе может быть ошибка "UDP порт уже занят", т.к. предыдущий процесс не успел полностью остановиться.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 20:11 
Не в сети
Клиент

Зарегистрирован: 21 май 2008, 10:54
Сообщения: 599
Откуда: 50-й рег.
Карма: 40
аллилуя!!!
Цитата:
....bgcommonrc checkmysql просто висит 30 секунд пока не получит соединение к БД (MariaDB вроде всё также запускается через init.d, потому при запуске виртуалки часто процесс биллинга начинал обращаться к БД до того как она запустилась

Вот именно это сломало полгода назад все мои представления о добре и зле.
Прежде чем я понял, что когда среди последовательности процессов , стартующих через unit sysstemd затесался один процесс стартующий через /init.d -
получается "балет в присядку".
Походу разрабы mysql-форков тоже пришли к 'той мысле и стали патчить свои софтины механизмом notify через dbus.
Во всяком случае оракл-овцы уже реализовали, перкона и маша пока чешут репу...

_________________
"Все правые - в резерве!" (c) (translate.google.ru/#en/ru/all%20rigths%20reserved)


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 20:15 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
В конце bgcommonrc добавлено (раньше не было)
Код:
case "$1" in
        checkmysql)
                checkmysql
        ;;

        checkmysqlsocket)
                checkmysqlsocket
        ;;
esac


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 20:21 
Не в сети
Клиент
Аватара пользователя

Зарегистрирован: 27 мар 2012, 11:59
Сообщения: 2677
Карма: 72
Цитата:
....bgcommonrc checkmysql просто висит 30 секунд пока не получит соединение к БД (MariaDB вроде всё также запускается через init.d, потому при запуске виртуалки часто процесс биллинга начинал обращаться к БД до того как она запустилась

Даже если бд не локально расположена?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Глюк ActiveMQ в ubuntu 15.10 ?
СообщениеДобавлено: 18 ноя 2015, 20:24 
Не в сети
Разработчик
Аватара пользователя

Зарегистрирован: 19 дек 2006, 21:04
Сообщения: 5970
Карма: 256
Тогда менять скрипт (или вынести в отдельный файлик):
Код:
checkmysql() {
ret=0
STARTTIMEOUT=30
while [ $STARTTIMEOUT -gt 0 ]; do
    RESPONSE=`/usr/bin/mysqladmin -uUNKNOWN_MYSQL_USER ping 2>&1` && break
    echo "$RESPONSE" | grep -q "Error checking mysql: access denied for user" && break
    sleep 1
    let STARTTIMEOUT=${STARTTIMEOUT}-1
done

if [ $STARTTIMEOUT -eq 0 ]; then
    ret=1
    echo "Error checking mysql: timeout error occurred."
fi

return $ret;
}
А так вроде должно работать и не с локальной БД.

А в Debian MariaDB(возможно и MySQL) в скрипте в init.d останавливается командой mysqladmin stop и для этого при установке MariaDB(MySQL) создается отдельный пользователь, логин/пароль которого указан в /etc/mysql/debian.cfg. И если пользователя удалить - БД не будет останавливаться через службу, а при обновлении пакетов будет висеть, особо не сообщая причину.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 5 часов [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
POWERED_BY
Русская поддержка phpBB
[ Time : 0.053s | 39 Queries | GZIP : On ]