public inbox for gentoo-user-ru@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-user-ru] Два инстанса Sphinx
@ 2013-06-05 22:32 Sergey Kobzar
  2013-06-06  7:02 ` [gentoo-user-ru] " Андрей Буров
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-05 22:32 UTC (permalink / raw
  To: gentoo-user-ru

Необходимо на сервере запустить 2 инстанса Sphinx'а. Для первого 
инстанса все оставил как есть. Для второго
1. Поменял порты (сокеты) в /etc/sphinx/sphinx-test.conf
2. Поменял pid file в /etc/sphinx/sphinx-test.conf
3. Изменил путь к инlексам в /etc/sphinx/sphinx-test.conf
4. Переписал немного rc script:

depend() {
         need net
         use logger
}

checkconfig() {
         if [ ! -f /etc/sphinx/sphinx-test.conf ]; then
                 eerror "Please create /etc/sphinx/sphinx-test.conf"
                 eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
                 return 1
         fi
         return 0
}

start() {
         checkconfig || return $?

         ebegin "Starting sphinx searchd"
         start-stop-daemon --start --exec /usr/bin/searchd -- --config 
/etc/sphinx/sphinx-test.conf
         eend $? "Failed to start sphinx searchd"
}

stop() {
         ebegin "Stopping sphinx searchd"
         start-stop-daemon --stop --exec /usr/bin/searchd -- --config 
/etc/sphinx/sphinx-test.conf
         eend $? "Failed to stop sphinx searchd"

(добавил " -- --config /etc/sphinx/sphinx-test.conf")

Стартуют оба инстанса без проблем, но если делаю /etc/init.d/searchd 
stop, то стопаются оба инстанса. Пробовал добавлять --pidfile 
/run/searchd-test.pid - безрезультатно.

Any ideas?


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-05 22:32 [gentoo-user-ru] Два инстанса Sphinx Sergey Kobzar
@ 2013-06-06  7:02 ` Андрей Буров
  2013-06-06 15:16   ` Sergey Kobzar
  0 siblings, 1 reply; 18+ messages in thread
From: Андрей Буров @ 2013-06-06  7:02 UTC (permalink / raw
  To: gentoo-user-ru@lists.gentoo.org

[-- Attachment #1: Type: text/plain, Size: 2150 bytes --]

Доброго времени суток
Поменяйте в скриптах:
start:
start-stop-daemon --start --make-pidfile --pidfile /var/run/sphinx-test.pid
--exec /usr/bin/searchd -- --config /etc/sphinx/sphinx-test.conf

stop:
start-stop-daemon --stop --pidfile /var/run/sphinx-test.pid


6 июня 2013 г., 2:32 пользователь Sergey Kobzar <sergey.kobzar@mail.ru>написал:

> Необходимо на сервере запустить 2 инстанса Sphinx'а. Для первого инстанса
> все оставил как есть. Для второго
> 1. Поменял порты (сокеты) в /etc/sphinx/sphinx-test.conf
> 2. Поменял pid file в /etc/sphinx/sphinx-test.conf
> 3. Изменил путь к инlексам в /etc/sphinx/sphinx-test.conf
> 4. Переписал немного rc script:
>
> depend() {
>         need net
>         use logger
> }
>
> checkconfig() {
>         if [ ! -f /etc/sphinx/sphinx-test.conf ]; then
>                 eerror "Please create /etc/sphinx/sphinx-test.conf"
>                 eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
>                 return 1
>         fi
>         return 0
> }
>
> start() {
>         checkconfig || return $?
>
>         ebegin "Starting sphinx searchd"
>         start-stop-daemon --start --exec /usr/bin/searchd -- --config
> /etc/sphinx/sphinx-test.conf
>         eend $? "Failed to start sphinx searchd"
> }
>
> stop() {
>         ebegin "Stopping sphinx searchd"
>         start-stop-daemon --stop --exec /usr/bin/searchd -- --config
> /etc/sphinx/sphinx-test.conf
>         eend $? "Failed to stop sphinx searchd"
>
> (добавил " -- --config /etc/sphinx/sphinx-test.conf")
>
> Стартуют оба инстанса без проблем, но если делаю /etc/init.d/searchd stop,
> то стопаются оба инстанса. Пробовал добавлять --pidfile
> /run/searchd-test.pid - безрезультатно.
>
> Any ideas?
>
>


-- 
Andrey Burov aka burik666
ICQ: 262631594
http://burik666.org

[-- Attachment #2: Type: text/html, Size: 3480 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-06  7:02 ` [gentoo-user-ru] " Андрей Буров
@ 2013-06-06 15:16   ` Sergey Kobzar
  2013-06-06 17:23     ` [gentoo-user-ru] " Андрей Буров
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-06 15:16 UTC (permalink / raw
  To: gentoo-user-ru

On 06/06/13 10:02, Андрей Буров wrote:
> Доброго времени суток
> Поменяйте в скриптах:
> start:
> start-stop-daemon --start --make-pidfile --pidfile
> /var/run/sphinx-test.pid --exec /usr/bin/searchd -- --config
> /etc/sphinx/sphinx-test.conf
>
> stop:
> start-stop-daemon --stop --pidfile /var/run/sphinx-test.pid

Сделал. Все-равно /etc/init.d/searchd stop останавливает 2 процесса.

После старта (запускаются демоны разными скриптами):
21467 ?        S      0:00 /usr/bin/searchd
21468 ?        Sl     0:00 /usr/bin/searchd
21485 ?        S      0:00 /usr/bin/searchd --config 
/etc/sphinx/sphinx-test.conf
21486 ?        Sl     0:18 /usr/bin/searchd --config 
/etc/sphinx/sphinx-test.conf


Оригинальный скрипт /etc/init.d/searchd:
#!/sbin/runscript
# Copyright 1999-2004 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/app-misc/sphinx/files/searchd.rc,v 
1.1 2009/11/05 15:41:56 graaff Exp $

depend() {
         need net
         use logger
}

checkconfig() {
         if [ ! -f /etc/sphinx/sphinx.conf ] ; then
                 eerror "Please create /etc/sphinx/sphinx.conf"
                 eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
                 return 1
         fi
         return 0
}

start() {
         checkconfig || return $?

         ebegin "Starting sphinx searchd"
         start-stop-daemon --start --exec /usr/bin/searchd
         eend $? "Failed to start sphinx searchd"
}

stop() {
         ebegin "Stopping sphinx searchd"
         start-stop-daemon --stop --exec /usr/bin/searchd
         eend $? "Failed to stop sphinx searchd"
}

Скрипт для второго инстанса /etc/init.d/searchd-test:
#!/sbin/runscript


depend() {
         need net
         use logger
}

checkconfig() {
         if [ ! -f /etc/sphinx/sphinx-test.conf ]; then
                 eerror "Please create /etc/sphinx/sphinx-test.conf"
                 eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
                 return 1
         fi
         return 0
}

start() {
         checkconfig || return $?

         ebegin "Starting sphinx searchd"
         start-stop-daemon --start --make-pidfile --pidfile 
/run/searchd-test.pid --exec /usr/bin/searchd -- --config 
/etc/sphinx/sphinx-test.conf
         eend $? "Failed to start sphinx searchd"
}

stop() {
         ebegin "Stopping sphinx searchd"
         start-stop-daemon --stop --pidfile /run/searchd-test.pid
         eend $? "Failed to stop sphinx searchd"
}


Может первому первому скрпту надо сказат --make-pidfile --pidfile 
/run/searchd-test.pid?

Кстати, а зачем --make-pidfile, если демон сам их создает:

# cat /etc/sphinx/sphinx.conf | grep pid
         pid_file        = /run/searchd.pid

# cat /etc/sphinx/sphinx-test.conf | grep pid
         pid_file        = /run/searchd-test.pid

?


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-06 15:16   ` Sergey Kobzar
@ 2013-06-06 17:23     ` Андрей Буров
  2013-06-06 18:54       ` [gentoo-user-ru] " Sergey Popov
  0 siblings, 1 reply; 18+ messages in thread
From: Андрей Буров @ 2013-06-06 17:23 UTC (permalink / raw
  To: gentoo-user-ru@lists.gentoo.org

[-- Attachment #1: Type: text/plain, Size: 3763 bytes --]

Для первого у Вас должно быть
start-stop-daemon --stop --pidfile /run/searchd-first.pid
для второго:
start-stop-daemon --stop --pidfile /run/searchd-second.pid

start-stop-daemon --stop --exec /usr/bin/searchd и должен убивать
Все searchd


2013/6/6 Sergey Kobzar <sergey.kobzar@mail.ru>

> On 06/06/13 10:02, Андрей Буров wrote:
>
>> Доброго времени суток
>> Поменяйте в скриптах:
>> start:
>> start-stop-daemon --start --make-pidfile --pidfile
>> /var/run/sphinx-test.pid --exec /usr/bin/searchd -- --config
>> /etc/sphinx/sphinx-test.conf
>>
>> stop:
>> start-stop-daemon --stop --pidfile /var/run/sphinx-test.pid
>>
>
> Сделал. Все-равно /etc/init.d/searchd stop останавливает 2 процесса.
>
> После старта (запускаются демоны разными скриптами):
> 21467 ?        S      0:00 /usr/bin/searchd
> 21468 ?        Sl     0:00 /usr/bin/searchd
> 21485 ?        S      0:00 /usr/bin/searchd --config
> /etc/sphinx/sphinx-test.conf
> 21486 ?        Sl     0:18 /usr/bin/searchd --config
> /etc/sphinx/sphinx-test.conf
>
>
> Оригинальный скрипт /etc/init.d/searchd:
> #!/sbin/runscript
> # Copyright 1999-2004 Gentoo Foundation
> # Distributed under the terms of the GNU General Public License v2
> # $Header: /var/cvsroot/gentoo-x86/app-**misc/sphinx/files/searchd.rc,v
> 1.1 2009/11/05 15:41:56 graaff Exp $
>
>
> depend() {
>         need net
>         use logger
> }
>
> checkconfig() {
>         if [ ! -f /etc/sphinx/sphinx.conf ] ; then
>                 eerror "Please create /etc/sphinx/sphinx.conf"
>
>                 eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
>                 return 1
>         fi
>         return 0
> }
>
> start() {
>         checkconfig || return $?
>
>         ebegin "Starting sphinx searchd"
>         start-stop-daemon --start --exec /usr/bin/searchd
>         eend $? "Failed to start sphinx searchd"
> }
>
> stop() {
>         ebegin "Stopping sphinx searchd"
>         start-stop-daemon --stop --exec /usr/bin/searchd
>         eend $? "Failed to stop sphinx searchd"
> }
>
> Скрипт для второго инстанса /etc/init.d/searchd-test:
> #!/sbin/runscript
>
>
>
> depend() {
>         need net
>         use logger
> }
>
> checkconfig() {
>         if [ ! -f /etc/sphinx/sphinx-test.conf ]; then
>                 eerror "Please create /etc/sphinx/sphinx-test.conf"
>                 eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
>                 return 1
>         fi
>         return 0
> }
>
> start() {
>         checkconfig || return $?
>
>         ebegin "Starting sphinx searchd"
>         start-stop-daemon --start --make-pidfile --pidfile
> /run/searchd-test.pid --exec /usr/bin/searchd -- --config
> /etc/sphinx/sphinx-test.conf
>
>         eend $? "Failed to start sphinx searchd"
> }
>
> stop() {
>         ebegin "Stopping sphinx searchd"
>         start-stop-daemon --stop --pidfile /run/searchd-test.pid
>
>         eend $? "Failed to stop sphinx searchd"
> }
>
>
> Может первому первому скрпту надо сказат --make-pidfile --pidfile
> /run/searchd-test.pid?
>
> Кстати, а зачем --make-pidfile, если демон сам их создает:
>
> # cat /etc/sphinx/sphinx.conf | grep pid
>         pid_file        = /run/searchd.pid
>
> # cat /etc/sphinx/sphinx-test.conf | grep pid
>         pid_file        = /run/searchd-test.pid
>
> ?
>
>


-- 
Andrey Burov aka burik666
ICQ: 262631594
http://burik666.org

[-- Attachment #2: Type: text/html, Size: 5360 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-06 17:23     ` [gentoo-user-ru] " Андрей Буров
@ 2013-06-06 18:54       ` Sergey Popov
  2013-06-06 19:10         ` [gentoo-user-ru] " Taz
  2013-06-06 19:35         ` Sergey Kobzar
  0 siblings, 2 replies; 18+ messages in thread
From: Sergey Popov @ 2013-06-06 18:54 UTC (permalink / raw
  To: gentoo-user-ru

[-- Attachment #1: Type: text/plain, Size: 5267 bytes --]

06.06.2013 21:23, Андрей Буров пишет:
> Для первого у Вас должно быть
> start-stop-daemon --stop --pidfile /run/searchd-first.pid
> для второго:
> start-stop-daemon --stop --pidfile /run/searchd-second.pid
> 
> start-stop-daemon --stop --exec /usr/bin/searchd и должен убивать
> Все searchd
> 
> 
> 2013/6/6 Sergey Kobzar <sergey.kobzar@mail.ru
> <mailto:sergey.kobzar@mail.ru>>
> 
>     On 06/06/13 10:02, Андрей Буров wrote:
> 
>         Доброго времени суток
>         Поменяйте в скриптах:
>         start:
>         start-stop-daemon --start --make-pidfile --pidfile
>         /var/run/sphinx-test.pid --exec /usr/bin/searchd -- --config
>         /etc/sphinx/sphinx-test.conf
> 
>         stop:
>         start-stop-daemon --stop --pidfile /var/run/sphinx-test.pid
> 
> 
>     Сделал. Все-равно /etc/init.d/searchd stop останавливает 2 процесса.
> 
>     После старта (запускаются демоны разными скриптами):
>     21467 ?        S      0:00 /usr/bin/searchd
>     21468 ?        Sl     0:00 /usr/bin/searchd
>     21485 ?        S      0:00 /usr/bin/searchd --config
>     /etc/sphinx/sphinx-test.conf
>     21486 ?        Sl     0:18 /usr/bin/searchd --config
>     /etc/sphinx/sphinx-test.conf
> 
> 
>     Оригинальный скрипт /etc/init.d/searchd:
>     #!/sbin/runscript
>     # Copyright 1999-2004 Gentoo Foundation
>     # Distributed under the terms of the GNU General Public License v2
>     # $Header:
>     /var/cvsroot/gentoo-x86/app-__misc/sphinx/files/searchd.rc,v 1.1
>     2009/11/05 15:41:56 graaff Exp $
> 
> 
>     depend() {
>             need net
>             use logger
>     }
> 
>     checkconfig() {
>             if [ ! -f /etc/sphinx/sphinx.conf ] ; then
>                     eerror "Please create /etc/sphinx/sphinx.conf"
> 
>                     eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
>                     return 1
>             fi
>             return 0
>     }
> 
>     start() {
>             checkconfig || return $?
> 
>             ebegin "Starting sphinx searchd"
>             start-stop-daemon --start --exec /usr/bin/searchd
>             eend $? "Failed to start sphinx searchd"
>     }
> 
>     stop() {
>             ebegin "Stopping sphinx searchd"
>             start-stop-daemon --stop --exec /usr/bin/searchd
>             eend $? "Failed to stop sphinx searchd"
>     }
> 
>     Скрипт для второго инстанса /etc/init.d/searchd-test:
>     #!/sbin/runscript
> 
> 
> 
>     depend() {
>             need net
>             use logger
>     }
> 
>     checkconfig() {
>             if [ ! -f /etc/sphinx/sphinx-test.conf ]; then
>                     eerror "Please create /etc/sphinx/sphinx-test.conf"
>                     eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
>                     return 1
>             fi
>             return 0
>     }
> 
>     start() {
>             checkconfig || return $?
> 
>             ebegin "Starting sphinx searchd"
>             start-stop-daemon --start --make-pidfile --pidfile
>     /run/searchd-test.pid --exec /usr/bin/searchd -- --config
>     /etc/sphinx/sphinx-test.conf
> 
>             eend $? "Failed to start sphinx searchd"
>     }
> 
>     stop() {
>             ebegin "Stopping sphinx searchd"
>             start-stop-daemon --stop --pidfile /run/searchd-test.pid
> 
>             eend $? "Failed to stop sphinx searchd"
>     }
> 
> 
>     Может первому первому скрпту надо сказат --make-pidfile --pidfile
>     /run/searchd-test.pid?
> 
>     Кстати, а зачем --make-pidfile, если демон сам их создает:
> 
>     # cat /etc/sphinx/sphinx.conf | grep pid
>             pid_file        = /run/searchd.pid
> 
>     # cat /etc/sphinx/sphinx-test.conf | grep pid
>             pid_file        = /run/searchd-test.pid
> 
>     ?

Извините, что встреваю, но данное действие можно сделать одним
init-скриптом и симлинком на него(оригинальный скрипт, понятное дело
прийдется изменить). conf.d файла нужно будет 2(например sphinx и
sphinx.test, соответственно скрипт будет sphinx а симлинк - sphinx.test.
Разруливать всё это можно будет через переменную ${SVCNAME}). А патч
отправить на bugs.gentoo.org. Если активности в баге особой не будет -
можно будет аккуратно пнуть мэйнтэйнеров. Я поспособствую ;-)

В чем преимущество? В том, что в данной схеме можно будет запустить
3,5,10,сколько_позволит_железо копий sphinx

-- 
Best regards, Sergey Popov
Gentoo Linux Developer
Desktop-effects project lead


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-06 18:54       ` [gentoo-user-ru] " Sergey Popov
@ 2013-06-06 19:10         ` Taz
  2013-06-06 19:35         ` Sergey Kobzar
  1 sibling, 0 replies; 18+ messages in thread
From: Taz @ 2013-06-06 19:10 UTC (permalink / raw
  To: gentoo-user-ru

[-- Attachment #1: Type: text/plain, Size: 5677 bytes --]

Ага, более того, это типичная для генты практика.
On Jun 6, 2013 10:55 PM, "Sergey Popov" <pinkbyte@gentoo.org> wrote:

> 06.06.2013 21:23, Андрей Буров пишет:
> > Для первого у Вас должно быть
> > start-stop-daemon --stop --pidfile /run/searchd-first.pid
> > для второго:
> > start-stop-daemon --stop --pidfile /run/searchd-second.pid
> >
> > start-stop-daemon --stop --exec /usr/bin/searchd и должен убивать
> > Все searchd
> >
> >
> > 2013/6/6 Sergey Kobzar <sergey.kobzar@mail.ru
> > <mailto:sergey.kobzar@mail.ru>>
> >
> >     On 06/06/13 10:02, Андрей Буров wrote:
> >
> >         Доброго времени суток
> >         Поменяйте в скриптах:
> >         start:
> >         start-stop-daemon --start --make-pidfile --pidfile
> >         /var/run/sphinx-test.pid --exec /usr/bin/searchd -- --config
> >         /etc/sphinx/sphinx-test.conf
> >
> >         stop:
> >         start-stop-daemon --stop --pidfile /var/run/sphinx-test.pid
> >
> >
> >     Сделал. Все-равно /etc/init.d/searchd stop останавливает 2 процесса.
> >
> >     После старта (запускаются демоны разными скриптами):
> >     21467 ?        S      0:00 /usr/bin/searchd
> >     21468 ?        Sl     0:00 /usr/bin/searchd
> >     21485 ?        S      0:00 /usr/bin/searchd --config
> >     /etc/sphinx/sphinx-test.conf
> >     21486 ?        Sl     0:18 /usr/bin/searchd --config
> >     /etc/sphinx/sphinx-test.conf
> >
> >
> >     Оригинальный скрипт /etc/init.d/searchd:
> >     #!/sbin/runscript
> >     # Copyright 1999-2004 Gentoo Foundation
> >     # Distributed under the terms of the GNU General Public License v2
> >     # $Header:
> >     /var/cvsroot/gentoo-x86/app-__misc/sphinx/files/searchd.rc,v 1.1
> >     2009/11/05 15:41:56 graaff Exp $
> >
> >
> >     depend() {
> >             need net
> >             use logger
> >     }
> >
> >     checkconfig() {
> >             if [ ! -f /etc/sphinx/sphinx.conf ] ; then
> >                     eerror "Please create /etc/sphinx/sphinx.conf"
> >
> >                     eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
> >                     return 1
> >             fi
> >             return 0
> >     }
> >
> >     start() {
> >             checkconfig || return $?
> >
> >             ebegin "Starting sphinx searchd"
> >             start-stop-daemon --start --exec /usr/bin/searchd
> >             eend $? "Failed to start sphinx searchd"
> >     }
> >
> >     stop() {
> >             ebegin "Stopping sphinx searchd"
> >             start-stop-daemon --stop --exec /usr/bin/searchd
> >             eend $? "Failed to stop sphinx searchd"
> >     }
> >
> >     Скрипт для второго инстанса /etc/init.d/searchd-test:
> >     #!/sbin/runscript
> >
> >
> >
> >     depend() {
> >             need net
> >             use logger
> >     }
> >
> >     checkconfig() {
> >             if [ ! -f /etc/sphinx/sphinx-test.conf ]; then
> >                     eerror "Please create /etc/sphinx/sphinx-test.conf"
> >                     eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
> >                     return 1
> >             fi
> >             return 0
> >     }
> >
> >     start() {
> >             checkconfig || return $?
> >
> >             ebegin "Starting sphinx searchd"
> >             start-stop-daemon --start --make-pidfile --pidfile
> >     /run/searchd-test.pid --exec /usr/bin/searchd -- --config
> >     /etc/sphinx/sphinx-test.conf
> >
> >             eend $? "Failed to start sphinx searchd"
> >     }
> >
> >     stop() {
> >             ebegin "Stopping sphinx searchd"
> >             start-stop-daemon --stop --pidfile /run/searchd-test.pid
> >
> >             eend $? "Failed to stop sphinx searchd"
> >     }
> >
> >
> >     Может первому первому скрпту надо сказат --make-pidfile --pidfile
> >     /run/searchd-test.pid?
> >
> >     Кстати, а зачем --make-pidfile, если демон сам их создает:
> >
> >     # cat /etc/sphinx/sphinx.conf | grep pid
> >             pid_file        = /run/searchd.pid
> >
> >     # cat /etc/sphinx/sphinx-test.conf | grep pid
> >             pid_file        = /run/searchd-test.pid
> >
> >     ?
>
> Извините, что встреваю, но данное действие можно сделать одним
> init-скриптом и симлинком на него(оригинальный скрипт, понятное дело
> прийдется изменить). conf.d файла нужно будет 2(например sphinx и
> sphinx.test, соответственно скрипт будет sphinx а симлинк - sphinx.test.
> Разруливать всё это можно будет через переменную ${SVCNAME}). А патч
> отправить на bugs.gentoo.org. Если активности в баге особой не будет -
> можно будет аккуратно пнуть мэйнтэйнеров. Я поспособствую ;-)
>
> В чем преимущество? В том, что в данной схеме можно будет запустить
> 3,5,10,сколько_позволит_железо копий sphinx
>
> --
> Best regards, Sergey Popov
> Gentoo Linux Developer
> Desktop-effects project lead
>
>

[-- Attachment #2: Type: text/html, Size: 7214 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-06 18:54       ` [gentoo-user-ru] " Sergey Popov
  2013-06-06 19:10         ` [gentoo-user-ru] " Taz
@ 2013-06-06 19:35         ` Sergey Kobzar
  2013-06-07  6:22           ` [gentoo-user-ru] " Sergey Popov
  1 sibling, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-06 19:35 UTC (permalink / raw
  To: gentoo-user-ru

On 06/06/13 21:54, Sergey Popov wrote:
> 06.06.2013 21:23, Андрей Буров пишет:
>> Для первого у Вас должно быть
>> start-stop-daemon --stop --pidfile /run/searchd-first.pid
>> для второго:
>> start-stop-daemon --stop --pidfile /run/searchd-second.pid
>>
>> start-stop-daemon --stop --exec /usr/bin/searchd и должен убивать
>> Все searchd
>>
>>
>> 2013/6/6 Sergey Kobzar <sergey.kobzar@mail.ru
>> <mailto:sergey.kobzar@mail.ru>>
>>
>>      On 06/06/13 10:02, Андрей Буров wrote:
>>
>>          Доброго времени суток
>>          Поменяйте в скриптах:
>>          start:
>>          start-stop-daemon --start --make-pidfile --pidfile
>>          /var/run/sphinx-test.pid --exec /usr/bin/searchd -- --config
>>          /etc/sphinx/sphinx-test.conf
>>
>>          stop:
>>          start-stop-daemon --stop --pidfile /var/run/sphinx-test.pid
>>
>>
>>      Сделал. Все-равно /etc/init.d/searchd stop останавливает 2 процесса.
>>
>>      После старта (запускаются демоны разными скриптами):
>>      21467 ?        S      0:00 /usr/bin/searchd
>>      21468 ?        Sl     0:00 /usr/bin/searchd
>>      21485 ?        S      0:00 /usr/bin/searchd --config
>>      /etc/sphinx/sphinx-test.conf
>>      21486 ?        Sl     0:18 /usr/bin/searchd --config
>>      /etc/sphinx/sphinx-test.conf
>>
>>
>>      Оригинальный скрипт /etc/init.d/searchd:
>>      #!/sbin/runscript
>>      # Copyright 1999-2004 Gentoo Foundation
>>      # Distributed under the terms of the GNU General Public License v2
>>      # $Header:
>>      /var/cvsroot/gentoo-x86/app-__misc/sphinx/files/searchd.rc,v 1.1
>>      2009/11/05 15:41:56 graaff Exp $
>>
>>
>>      depend() {
>>              need net
>>              use logger
>>      }
>>
>>      checkconfig() {
>>              if [ ! -f /etc/sphinx/sphinx.conf ] ; then
>>                      eerror "Please create /etc/sphinx/sphinx.conf"
>>
>>                      eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
>>                      return 1
>>              fi
>>              return 0
>>      }
>>
>>      start() {
>>              checkconfig || return $?
>>
>>              ebegin "Starting sphinx searchd"
>>              start-stop-daemon --start --exec /usr/bin/searchd
>>              eend $? "Failed to start sphinx searchd"
>>      }
>>
>>      stop() {
>>              ebegin "Stopping sphinx searchd"
>>              start-stop-daemon --stop --exec /usr/bin/searchd
>>              eend $? "Failed to stop sphinx searchd"
>>      }
>>
>>      Скрипт для второго инстанса /etc/init.d/searchd-test:
>>      #!/sbin/runscript
>>
>>
>>
>>      depend() {
>>              need net
>>              use logger
>>      }
>>
>>      checkconfig() {
>>              if [ ! -f /etc/sphinx/sphinx-test.conf ]; then
>>                      eerror "Please create /etc/sphinx/sphinx-test.conf"
>>                      eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
>>                      return 1
>>              fi
>>              return 0
>>      }
>>
>>      start() {
>>              checkconfig || return $?
>>
>>              ebegin "Starting sphinx searchd"
>>              start-stop-daemon --start --make-pidfile --pidfile
>>      /run/searchd-test.pid --exec /usr/bin/searchd -- --config
>>      /etc/sphinx/sphinx-test.conf
>>
>>              eend $? "Failed to start sphinx searchd"
>>      }
>>
>>      stop() {
>>              ebegin "Stopping sphinx searchd"
>>              start-stop-daemon --stop --pidfile /run/searchd-test.pid
>>
>>              eend $? "Failed to stop sphinx searchd"
>>      }
>>
>>
>>      Может первому первому скрпту надо сказат --make-pidfile --pidfile
>>      /run/searchd-test.pid?
>>
>>      Кстати, а зачем --make-pidfile, если демон сам их создает:
>>
>>      # cat /etc/sphinx/sphinx.conf | grep pid
>>              pid_file        = /run/searchd.pid
>>
>>      # cat /etc/sphinx/sphinx-test.conf | grep pid
>>              pid_file        = /run/searchd-test.pid
>>
>>      ?
>
> Извините, что встреваю, но данное действие можно сделать одним
> init-скриптом и симлинком на него(оригинальный скрипт, понятное дело
> прийдется изменить). conf.d файла нужно будет 2(например sphinx и
> sphinx.test, соответственно скрипт будет sphinx а симлинк - sphinx.test.
> Разруливать всё это можно будет через переменную ${SVCNAME}). А патч
> отправить на bugs.gentoo.org. Если активности в баге особой не будет -
> можно будет аккуратно пнуть мэйнтэйнеров. Я поспособствую ;-)
>
> В чем преимущество? В том, что в данной схеме можно будет запустить
> 3,5,10,сколько_позволит_железо копий sphinx
>

Согласен. Только портами, PID'ами и расположением индексов все-таки 
удобнее рулить через /etc/sphinx(-*).conf

Держать сущность в 2х и более местах смысла не вижу.

В общем в посижу, разберусь. Посмотри что из этого получится.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-06 19:35         ` Sergey Kobzar
@ 2013-06-07  6:22           ` Sergey Popov
  2013-06-07  6:23             ` [gentoo-user-ru] " Sergey Popov
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Popov @ 2013-06-07  6:22 UTC (permalink / raw
  To: gentoo-user-ru

[-- Attachment #1: Type: text/plain, Size: 2019 bytes --]

06.06.2013 23:35, Sergey Kobzar пишет:
> On 06/06/13 21:54, Sergey Popov wrote:
>> Извините, что встреваю, но данное действие можно сделать одним
>> init-скриптом и симлинком на него(оригинальный скрипт, понятное дело
>> прийдется изменить). conf.d файла нужно будет 2(например sphinx и
>> sphinx.test, соответственно скрипт будет sphinx а симлинк - sphinx.test.
>> Разруливать всё это можно будет через переменную ${SVCNAME}). А патч
>> отправить на bugs.gentoo.org. Если активности в баге особой не будет -
>> можно будет аккуратно пнуть мэйнтэйнеров. Я поспособствую ;-)
>>
>> В чем преимущество? В том, что в данной схеме можно будет запустить
>> 3,5,10,сколько_позволит_железо копий sphinx
>>
> 
> Согласен. Только портами, PID'ами и расположением индексов все-таки
> удобнее рулить через /etc/sphinx(-*).conf
> 
> Держать сущность в 2х и более местах смысла не вижу.
> 
> В общем в посижу, разберусь. Посмотри что из этого получится.
> 

conf.d можно вообще не использовать и просто в init-скрипте использовать
конфиг /etc/${SVCNAME}.conf или подобный.

Если там действительно много опций - глупо выносить их в conf.d если
можно указать конфиг для загрузки.
-- 
Best regards, Sergey Popov
Gentoo developer
Gentoo Desktop Effects project lead
Gentoo Qt project lead


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-07  6:22           ` [gentoo-user-ru] " Sergey Popov
@ 2013-06-07  6:23             ` Sergey Popov
  2013-06-07  8:28               ` [gentoo-user-ru] " Sergey Kobzar
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Popov @ 2013-06-07  6:23 UTC (permalink / raw
  To: gentoo-user-ru

[-- Attachment #1: Type: text/plain, Size: 427 bytes --]

07.06.2013 10:22, Sergey Popov пишет:
> Если там действительно много опций - глупо выносить их в conf.d если
> можно указать конфиг для загрузки.
> 

Я имел ввиду /etc/sphinx/${SVCNAME}.conf конечно же

-- 
Best regards, Sergey Popov
Gentoo developer
Gentoo Desktop Effects project lead
Gentoo Qt project lead


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-07  6:23             ` [gentoo-user-ru] " Sergey Popov
@ 2013-06-07  8:28               ` Sergey Kobzar
  2013-06-07 12:44                 ` Sergey Kobzar
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-07  8:28 UTC (permalink / raw
  To: gentoo-user-ru

On 06/07/13 09:23, Sergey Popov wrote:
> 07.06.2013 10:22, Sergey Popov пишет:
>> Если там действительно много опций - глупо выносить их в conf.d если
>> можно указать конфиг для загрузки.
>>
>
> Я имел ввиду /etc/sphinx/${SVCNAME}.conf конечно же

Угу. Это я ошибся изначально.
Тестирую. Думаю сегодня будет готово.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-07  8:28               ` [gentoo-user-ru] " Sergey Kobzar
@ 2013-06-07 12:44                 ` Sergey Kobzar
  2013-06-08 11:39                   ` Sergey Popov
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-07 12:44 UTC (permalink / raw
  To: gentoo-user-ru

On 06/07/13 11:28, Sergey Kobzar wrote:

> Угу. Это я ошибся изначально.
> Тестирую. Думаю сегодня будет готово.

Вот что получилось:

/etc/init.d/searchd:

#!/sbin/runscript



cnffile="/etc/sphinx/sphinx`echo ${SVCNAME} | sed 's/searchd//'`.conf"
command="/usr/bin/searchd"
command_args="--config ${cnffile}"
pidfile="/run/${SVCNAME}.pid"


depend() {
         need net
         use logger
}

checkconfig() {
         if [ ! -f ${cnffile} ]; then
                 eerror "Please create ${cnffile}"
                 eerror "Sample conf: /etc/sphinx/sphinx.conf.dist"
                 return 1
         fi
         return 0
}

start() {
         checkconfig || return $?

         ebegin "Starting sphinx searchd"
         start-stop-daemon --start --pidfile ${pidfile} --exec 
${command} -- ${command_args}
         eend $? "Failed to start sphinx searchd"
}

stop() {
         ebegin "Stopping sphinx searchd"
         start-stop-daemon --stop --pidfile ${pidfile} --exec ${command} 
--retry 180
         eend $? "Failed to stop sphinx searchd"
}


/etc/logrotate.d/sphinx ротации log-файлов для нескольких инстансов:

/var/log/sphinx/*.log {
         create 644
         missingok
         sharedscripts
         postrotate
                 find /run/ -maxdepth 1 -type f -name 'searchd*' | \
                         while read pidfile; do
                                 kill -USR1 `cat ${pidfile}`
                         done
         endscript
}


Ну и в ebuild добавить что-то типа:

pkg_postinst() {
	einfo "If you want to run multiple Sphinx instances:"
	einfo "- make a link of /etc/init.d/searchd"
	einfo "- create a copy of /etc/sphinx/sphinx.conf with appropriate name"
	einfo "- Change listen, log, query_log, pid_file and binlog_path in new 
conf file"
	einfo "- Start new instance using appropriate rc script (link)"
}


если нет существенных замечаний, я выкладываю все это дело на 
bugs.gentoo.org.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-07 12:44                 ` Sergey Kobzar
@ 2013-06-08 11:39                   ` Sergey Popov
  2013-06-09 22:01                     ` Sergey Kobzar
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Popov @ 2013-06-08 11:39 UTC (permalink / raw
  To: gentoo-user-ru

[-- Attachment #1: Type: text/plain, Size: 400 bytes --]

07.06.2013 16:44, Sergey Kobzar пишет:
> 
> cnffile="/etc/sphinx/sphinx`echo ${SVCNAME} | sed 's/searchd//'`.conf"

Лучше заменить на

cnffile="/etc/sphinx/sphinx${SVCNAME/searchd/}.conf"

А так, на мой взгляд, всё хорошо :-)

-- 
Best regards, Sergey Popov
Gentoo Linux Developer
Gentoo Desktop-effects project lead
Gentoo t project lead


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-08 11:39                   ` Sergey Popov
@ 2013-06-09 22:01                     ` Sergey Kobzar
  2013-06-10  1:32                       ` [gentoo-user-ru] " Голубев Александр
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-09 22:01 UTC (permalink / raw
  To: gentoo-user-ru

On 06/08/13 14:39, Sergey Popov wrote:
> 07.06.2013 16:44, Sergey Kobzar пишет:
>>
>> cnffile="/etc/sphinx/sphinx`echo ${SVCNAME} | sed 's/searchd//'`.conf"
>
> Лучше заменить на
>
> cnffile="/etc/sphinx/sphinx${SVCNAME/searchd/}.conf"

Первый раз такой синтаксис вижу. Это фитча runscript? Где сожно почитать?

>
> А так, на мой взгляд, всё хорошо :-)
>

Спасибо. Открываю баг.


^ permalink raw reply	[flat|nested] 18+ messages in thread

* [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-09 22:01                     ` Sergey Kobzar
@ 2013-06-10  1:32                       ` Голубев Александр
  2013-06-10  8:20                         ` Sergey Kobzar
  0 siblings, 1 reply; 18+ messages in thread
From: Голубев Александр @ 2013-06-10  1:32 UTC (permalink / raw
  To: gentoo-user-ru@lists.gentoo.org

10.06.2013, 02:01, "Sergey Kobzar" <sergey.kobzar@mail.ru>:
> On 06/08/13 14:39, Sergey Popov wrote:
>
>>  07.06.2013 16:44, Sergey Kobzar пишет:
>>>  cnffile="/etc/sphinx/sphinx`echo ${SVCNAME} | sed 's/searchd//'`.conf"
>>  Лучше заменить на
>>
>>  cnffile="/etc/sphinx/sphinx${SVCNAME/searchd/}.conf"
>
> Первый раз такой синтаксис вижу. Это фитча runscript? Где сожно почитать?
это фича bash'а, соответственно в man'ах и читать...
в init-скриптах это не стоит использовать использовать т.к. они должны быть sh-совместимые... лучше так: 
cnffile="/etc/sphinx/sphinx${SVCNAME##searchd.}.conf"


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-10  1:32                       ` [gentoo-user-ru] " Голубев Александр
@ 2013-06-10  8:20                         ` Sergey Kobzar
  2013-06-10 20:29                           ` Sergey Kobzar
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-10  8:20 UTC (permalink / raw
  To: gentoo-user-ru

On 06/10/13 04:32, Голубев Александр wrote:
> 10.06.2013, 02:01, "Sergey Kobzar" <sergey.kobzar@mail.ru>:
>> On 06/08/13 14:39, Sergey Popov wrote:
>>
>>>   07.06.2013 16:44, Sergey Kobzar пишет:
>>>>   cnffile="/etc/sphinx/sphinx`echo ${SVCNAME} | sed 's/searchd//'`.conf"
>>>   Лучше заменить на
>>>
>>>   cnffile="/etc/sphinx/sphinx${SVCNAME/searchd/}.conf"
>>
>> Первый раз такой синтаксис вижу. Это фитча runscript? Где сожно почитать?
> это фича bash'а, соответственно в man'ах и читать...
> в init-скриптах это не стоит использовать использовать т.к. они должны быть sh-совместимые... лучше так:
> cnffile="/etc/sphinx/sphinx${SVCNAME##searchd.}.conf"

Спасибо :)


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-10  8:20                         ` Sergey Kobzar
@ 2013-06-10 20:29                           ` Sergey Kobzar
  2013-06-13 11:44                             ` Sergey Kobzar
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-10 20:29 UTC (permalink / raw
  To: gentoo-user-ru

On 06/10/13 11:20, Sergey Kobzar wrote:
> On 06/10/13 04:32, Голубев Александр wrote:
>> 10.06.2013, 02:01, "Sergey Kobzar" <sergey.kobzar@mail.ru>:
>>> On 06/08/13 14:39, Sergey Popov wrote:
>>>
>>>>   07.06.2013 16:44, Sergey Kobzar пишет:
>>>>>   cnffile="/etc/sphinx/sphinx`echo ${SVCNAME} | sed
>>>>> 's/searchd//'`.conf"
>>>>   Лучше заменить на
>>>>
>>>>   cnffile="/etc/sphinx/sphinx${SVCNAME/searchd/}.conf"
>>>
>>> Первый раз такой синтаксис вижу. Это фитча runscript? Где сожно
>>> почитать?
>> это фича bash'а, соответственно в man'ах и читать...
>> в init-скриптах это не стоит использовать использовать т.к. они должны
>> быть sh-совместимые... лучше так:
>> cnffile="/etc/sphinx/sphinx${SVCNAME##searchd.}.conf"
>
> Спасибо :)
>
>
> .

Засабмитил: https://bugs.gentoo.org/show_bug.cgi?id=472916.
Посмотрим как быстро мэинтейнер отреагирует...


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-10 20:29                           ` Sergey Kobzar
@ 2013-06-13 11:44                             ` Sergey Kobzar
  2013-06-13 17:36                               ` Sergey Popov
  0 siblings, 1 reply; 18+ messages in thread
From: Sergey Kobzar @ 2013-06-13 11:44 UTC (permalink / raw
  To: gentoo-user-ru

On 06/10/13 23:29, Sergey Kobzar wrote:

> Засабмитил: https://bugs.gentoo.org/show_bug.cgi?id=472916.
> Посмотрим как быстро мэинтейнер отреагирует...

Можно как-то пнуть мэинтейнера? Или 3 дня это очень короткий срок? :)


^ permalink raw reply	[flat|nested] 18+ messages in thread

* Re: [gentoo-user-ru] Re: [gentoo-user-ru] Два инстанса Sphinx
  2013-06-13 11:44                             ` Sergey Kobzar
@ 2013-06-13 17:36                               ` Sergey Popov
  0 siblings, 0 replies; 18+ messages in thread
From: Sergey Popov @ 2013-06-13 17:36 UTC (permalink / raw
  To: gentoo-user-ru

[-- Attachment #1: Type: text/plain, Size: 661 bytes --]

13.06.2013 15:44, Sergey Kobzar пишет:
> On 06/10/13 23:29, Sergey Kobzar wrote:
> 
>> Засабмитил: https://bugs.gentoo.org/show_bug.cgi?id=472916.
>> Посмотрим как быстро мэинтейнер отреагирует...
> 
> Можно как-то пнуть мэинтейнера? Или 3 дня это очень короткий срок? :)
> 

Так как пакет мэйнтэйнится только одним человеком - либо ищи его в IRC
на Freenode(ник graaff, каналы #gentoo-dev-help или #gentoo-ruby -
лучшие вариант его поймать, он рубист :-)), либо пиши ему на мыло(узнать
мыло можно посмотрев поле Assignee в баге)


-- 
Best regards, Sergey Popov
Gentoo developer
Gentoo Desktop-effects project lead
Gentoo Qt project lead


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 555 bytes --]

^ permalink raw reply	[flat|nested] 18+ messages in thread

end of thread, other threads:[~2013-06-13 17:37 UTC | newest]

Thread overview: 18+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-05 22:32 [gentoo-user-ru] Два инстанса Sphinx Sergey Kobzar
2013-06-06  7:02 ` [gentoo-user-ru] " Андрей Буров
2013-06-06 15:16   ` Sergey Kobzar
2013-06-06 17:23     ` [gentoo-user-ru] " Андрей Буров
2013-06-06 18:54       ` [gentoo-user-ru] " Sergey Popov
2013-06-06 19:10         ` [gentoo-user-ru] " Taz
2013-06-06 19:35         ` Sergey Kobzar
2013-06-07  6:22           ` [gentoo-user-ru] " Sergey Popov
2013-06-07  6:23             ` [gentoo-user-ru] " Sergey Popov
2013-06-07  8:28               ` [gentoo-user-ru] " Sergey Kobzar
2013-06-07 12:44                 ` Sergey Kobzar
2013-06-08 11:39                   ` Sergey Popov
2013-06-09 22:01                     ` Sergey Kobzar
2013-06-10  1:32                       ` [gentoo-user-ru] " Голубев Александр
2013-06-10  8:20                         ` Sergey Kobzar
2013-06-10 20:29                           ` Sergey Kobzar
2013-06-13 11:44                             ` Sergey Kobzar
2013-06-13 17:36                               ` Sergey Popov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox