Форум русскоязычного сообщества Ubuntu


Автор Тема: Определённый порядок загрузки сервисов. Ubuntu 10.4 server  (Прочитано 7229 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн ultrapravyj

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
  • UBUNTU rulez!!! =)
    • Просмотр профиля
Доброго времени суток!!! Такая ситуация, на ubuntu поднята биллиговая система traffpro, и при загрузке самого сервера в syslog сыпиться огромное количество ошибок следующего характера:

Oct  4 20:39:24 billing-system traffpro-timer[1163]: MYSQL Real Connect ERROR:
Oct  4 20:39:24 billing-system traffpro-timer[1163]: Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Oct  4 20:39:24 billing-system traffpro-timer[1163]: Error Connect to database, start reconect

Это говорит о том, что биллинговая система запускается раньше базы данных. А возможно ли создать очередь загрузки определённых сервисов, допустим так же как во FreeBSD в файле rc.conf. Там просто перечислены сервисы в порядке запуска, с верху вниз.

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
mysql запускается с помощью upstart, соответственно запускать traffpro нужно тоже через него с условием приблизительно таким: start on started mysql (за синтаксис не ручаюсь, просто как направление мысли)

Конфиги инициализации для upstart хранятся в /etc/init

Оффлайн dieselist

  • Активист
  • *
  • Сообщений: 525
    • Просмотр профиля
    • diesel.pp.ua
Можно просто подправить порядок запуска.
Для этого надо подправить симлинки на нужном тебе уровне запуска. Скажем, если оба демона стартуют на 3 ранлевеле просто измени имена симлинков необходимых демонов в /etc/rc3.d/ чтоб номера после S стояли в порядке необходимом тебе. Номера - порядок запуска\остановки демона.
Ubuntu, Gentoo, RHEL, AIX

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
dieselist, mysql уже давно в upstart из rcX.d перенесли

Оффлайн dieselist

  • Активист
  • *
  • Сообщений: 525
    • Просмотр профиля
    • diesel.pp.ua
Ого, какие новости :)
Ubuntu, Gentoo, RHEL, AIX

Оффлайн ultrapravyj

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
  • UBUNTU rulez!!! =)
    • Просмотр профиля
Не нашел я в /etc/init конкретно файла upstart, нашёл только upstart-udev-bridge.conf, следующего содержания:


# upstart-udev-bridge - Bridge udev events into upstart
#
# This helper daemon receives udev events from the netlink socket and
# emits equivalent Upstart events.

description     "Bridge udev events into upstart"

start on starting udev
stop on stopped udev

expect daemon
respawn

exec upstart-udev-bridge --daemon


Из этого содержания не вижу ничего, что б могло мне помочь. Не думал, что для меня это станет проблемой!

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Ты не понял. Все файлы в /etc/init это конфигурации запуска различных демонов для upstart. Соствляй свой конфиг для запуска traffpro под upstart вместо того, что сейчас используешь и там пропиши, чтоб он стартовал после mysql.

Оффлайн ultrapravyj

  • Автор темы
  • Новичок
  • *
  • Сообщений: 36
  • UBUNTU rulez!!! =)
    • Просмотр профиля
Спасибо за помощь!  Буду капать google, чтоб найти хотя б синтаксис. Так то в принципе всё понятно. Придется traffpro убирать с rc, а он как раз на 4-х уровнях запускается, и придумывать как написать скрипт, для запуска с upstart. Только б с очерёдностью опять в просак не попасть....

Пользователь решил продолжить мысль 05 Октябрь 2010, 06:21:41:
На самом деле всё оказывается на много сложнее, чем казалось. Синтаксиса upstart, который можно было применить я не нашёл. Видимо это не мой уровень, проблему на отрез не получается решить. Мне б хотя б traffpro, который работает через rc.d, научить запускаться с задержкой, ну т.е после mysql. Может кто нибудь, что нибудь подскажет!
« Последнее редактирование: 05 Октябрь 2010, 06:21:41 от ultrapravyj »

Оффлайн egjar

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Вот статья Вам в помощь.
http://www.ashep.org/2009/linux-upstart/

Оффлайн decodder

  • Новичок
  • *
  • Сообщений: 17
    • Просмотр профиля
У меня возник один вопрос.
С Upstartom вроде все ясно. Он запускает по событиям скрипты в соответствии с заданиями в /etc/init (на ubuntu 10.10.).
Но что теперь происходит со скриптами в rcX.d? Кто ими рулит?

Проблема собственно у меня вот в чем - есть служба, которая должна запускаться после запуска мускул. Ссылка на init скрипт этой службы находится в /etc/rcX.d, для мускула такой ссылки естественно нет - управляется он вроде Upstart'ом. Вопрос как сделать так, чтобы служба запускалась Upstart'ом (или еще как) после запуска мускуля. Да и вообще хотелось бы разобраться с симбиозом Upstart - rcX.d.
Может кто подскажет?

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Но что теперь происходит со скриптами в rcX.d? Кто ими рулит?
См. /etc/init/rc*.conf

Вопрос как сделать так, чтобы служба запускалась Upstart'ом (или еще как) после запуска мускуля.
Правилно - переписать инициализационный скрипт для upstart.

Оффлайн decodder

  • Новичок
  • *
  • Сообщений: 17
    • Просмотр профиля
Понял)) Спасибо!
Таким образом, чтобы запускалось все в правильном порядке (служба после мускула) нужно чтобы соответствующая задача rc* запускалась после мускула? Траблов не будет? 

Оффлайн Mam(O)n

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 5855
    • Просмотр профиля
Либо я не понял сути вопроса, либо ты не понял сути моего предложения. Я имею ввиду то, что тот rc- скрипт, который сейчас пинает тот абстрактный демон, нужно написать с нуля, но уже для апстарта, где указать start on mysql или что-то в этом духе, что заставит запускаться его после старта mysql.

Оффлайн decodder

  • Новичок
  • *
  • Сообщений: 17
    • Просмотр профиля
Да! Логично) Буду пробовать

 

Страница сгенерирована за 0.285 секунд. Запросов: 22.