forum.bitel.ru
http://forum.bitel.ru/

Установка BG-Billing-а на SUN Solaris 10
http://forum.bitel.ru/viewtopic.php?f=22&t=258
Страница 1 из 1

Автор:  Z][ANSWER [ 03 июн 2007, 20:45 ]
Заголовок сообщения:  Установка BG-Billing-а на SUN Solaris 10

Доброй Вечер, Всем! :)
Народ столкнулся с такой вот проблемкой, наверное что-то совсем простое, но не могу понять, что именно ему не нравиться?? :? Ставлю всё на Solaris 10, при попытке запуска сервера пишет:
Цитата:
[ Июн 3 17:05:48 Executing start method ("/lib/svc/method/bgbilling start") ]
/bgbilling/server_start.sh: bad substitution
[ Июн 3 17:05:48 Method "start" exited with status 1 ]

Я написал SMF скрипты, для билинга, но дело не в них точно, я пробовал запускать и стандартным образом, он всё равно выводит в консоль bad substitution, не могу понять с чем это связано... :(

З.Ы. Порылся в инете, немного поэксперементировал, значиться так, если в системе не установлен bash или точнее сказать, для скриптов используеться не bash, например, как в Solaris то выдаёться вот такая ошибка, как воркэраунд, поставить bash и изменить в скрипте определение шелла... :roll:

Автор:  Администратор [ 04 июн 2007, 10:49 ]
Заголовок сообщения: 

Не могли бы вы описать поподробнее что нужно сделать в итоге для запуска системы под Solaris? У нас пока нет своих специалистов по данной платформе, а поддержать ее более комфортно очень бы хотелось.

Автор:  Z][ANSWER [ 04 июн 2007, 13:23 ]
Заголовок сообщения: 

Администратор писал(а):
Не могли бы вы описать поподробнее что нужно сделать в итоге для запуска системы под Solaris? У нас пока нет своих специалистов по данной платформе, а поддержать ее более комфортно очень бы хотелось.

Конечно, для начала опишу, что есть, чтобы было больше информации:

В качестве платформы использовал последнюю из ныне существующих Solaris 10:
Цитата:
Solaris 10 11/06 s10x_u3wos_10 X86
Copyright 2006 Sun Microsystems, Inc. All Rights Reserved.
Use is subject to license terms.
Assembled 14 November 2006

Да работы билинга, необходимы пакеты:
Цитата:
system SUNWj5dev JDK 5.0 Dev. Tools (1.5.0_11)
system SUNWj5rt JDK 5.0 Runtime Env. (1.5.0_11)
system SUNWbash GNU Bourne-Again shell (bash)
application CSWmysql5 mysql5 - MySQL 5 database management system - server files
application CSWmysql5client mysql5client - MySQL 5 database client executables
application CSWmysql5rt mysql5rt - run-time libraries for mysql5

Поскольку в Solaris 10, при установке bash, он не заменяет собой, как в Linux,- sh, то во всех shell скриптах, билинга или радиуса, нужно изменить путь к шеллу:
Цитата:
#!/usr/bin/bash

Стандартный путь к JDK5 в Solaris будет выглядеть так:
Цитата:
JAVA_HOME=/usr/jdk/instances/jdk1.5.0

Далее, поскольку на данный момент Solaris использует новую систему запуска и отслеживания состояния работы сервисов, - SMF, то желательно использовать её, для этого я создал пока простенькие SMF манифесты, я их доработаю, и размещу в этой теме, вот первый их вариант:
Сначала идут наши методы, которые мы положим в /lib/svc/method, сообсно три наших метода для bgbilling, bgdataloader, bgscheduler
Код:
#!/bin/sh

. /lib/svc/share/smf_include.sh

SERVER_HOME=/bgbilling

case "$1" in
        start)
                $SERVER_HOME/server_start.sh
        ;;

        stop)
                $SERVER_HOME/server_stop.sh
        ;;

        restart)
                $SERVER_HOME/server_stop.sh
                $SERVER_HOME/server_start.sh
        ;;

        *)
                echo "Usage: $0 start | stop | restart" >&2
                exit 1
        ;;
esac

Код:
#!/bin/sh

. /lib/svc/share/smf_include.sh

SERVER_HOME=/bgbilling

case "$1" in
        start)
                $SERVER_HOME/data_loader_start.sh
        ;;

        stop)
                $SERVER_HOME/data_loader_stop.sh
        ;;

        *)
                echo "Usage: $0 start | stop" >&2
                exit 1
        ;;
esac

Код:
#!/bin/sh

. /lib/svc/share/smf_include.sh

SERVER_HOME=/bgbilling

case "$1" in
        start)
                $SERVER_HOME/scheduler_start.sh
        ;;

        stop)
                $SERVER_HOME/scheduler_stop.sh
        ;;

        restart)
                $SERVER_HOME/scheduler_stop.sh
                $SERVER_HOME/scheduler_start.sh
        ;;

        *)
                echo "Usage: $0 start | stop | restart" >&2
                exit 1
        ;;
esac

Теперь, перейдём к нашим манифестам, я для расположения манифестов зделал дополнительный раздел, куда их и импортировал в последствии, для этого в /var/svc/manifest/application, создаём папку billing, в ней будут лежать наши манифесты:
Сообсно манифесты для bgbilling.xml, bgdataloder.xml, bgscheduler.xml, импортировать их нужно командой svccfg import manifest_name
Код:
<?xml version='1.0'?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>

<!--
        Copyright 2007 Z][ANSWER.  All rights reserved.
        Use is subject to license terms.

        ident   "@(#)bgbilling.xml      1.1     07/06/03 SMI"

        Service manifest for bgbilling
-->

<service_bundle type='manifest' name='bgbilling:bgbiling'>

<service
        name='application/billing/bgbilling'
        type='service'
        version='1'>

        <create_default_instance enabled='false' />

        <exec_method
                type='method'
                name='start'
                exec='/lib/svc/method/bgbilling start'
                timeout_seconds='60'>
        </exec_method>

        <exec_method
                type='method'
                name='stop'
                exec='/lib/svc/method/bgbilling stop'
                timeout_seconds='60'>
        </exec_method>

        <exec_method
                type='method'
                name='refresh'
                exec='/lib/svc/method/bgbilling restart'
                timeout_seconds='60'>
        </exec_method>

                <stability value='Evolving' />

                <template>
                        <common_name>
                                <loctext xml:lang='C'>
                                        BG-Billing Server
                                </loctext>
                        </common_name>
                        <documentation>
                                <doc_link name='bg-billing-bitel.ru'
                                          uri='http://bg-billing.bitel.ru' />
                        </documentation>
                </template>
</service>

</service_bundle>

Код:
<?xml version='1.0'?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>

<!--
        Copyright 2007 Z][ANSWER.  All rights reserved.
        Use is subject to license terms.

        ident   "@(#)bgdataloader.xml   1.1     07/06/03 SMI"

        Service manifest for bgdataloader
-->

<service_bundle type='manifest' name='bgbilling:bgdataloader'>

<service
        name='application/billing/bgdataloader'
        type='service'
        version='1'>

        <create_default_instance enabled='false' />

        <exec_method
                type='method'
                name='start'
                exec='/lib/svc/method/bgdataloader start'
                timeout_seconds='60'>
        </exec_method>

        <exec_method
                type='method'
                name='stop'
                exec='/lib/svc/method/bgdataloader stop'
                timeout_seconds='60'>
        </exec_method>

        <exec_method
                type='method'
                name='refresh'
                exec='/lib/svc/method/bgdataloader restart'
                timeout_seconds='60'>
        </exec_method>

                <stability value='Evolving' />

                <template>
                        <common_name>
                                <loctext xml:lang='C'>
                                        BG-Billing DataLoader
                                </loctext>
                        </common_name>
                        <documentation>
                                <doc_link name='bg-billing-bitel.ru'
                                          uri='http://bg-billing.bitel.ru' />
                        </documentation>
                </template>
</service>

</service_bundle>

Код:
<?xml version='1.0'?>
<!DOCTYPE service_bundle SYSTEM '/usr/share/lib/xml/dtd/service_bundle.dtd.1'>

<!--
        Copyright 2007 Z][ANSWER.  All rights reserved.
        Use is subject to license terms.

        ident   "@(#)bgscheduler.xml    1.1     07/06/03 SMI"

        Service manifest for bgcsheduler
-->

<service_bundle type='manifest' name='bgbilling:bgscheduler'>

<service
        name='application/billing/bgscheduler'
        type='service'
        version='1'>

        <create_default_instance enabled='false' />

        <exec_method
                type='method'
                name='start'
                exec='/lib/svc/method/bgscheduler start'
                timeout_seconds='60'>
        </exec_method>

        <exec_method
                type='method'
                name='stop'
                exec='/lib/svc/method/bgscheduler stop'
                timeout_seconds='60'>
        </exec_method>

        <exec_method
                type='method'
                name='refresh'
                exec='/lib/svc/method/bgscheduler restart'
                timeout_seconds='60'>
        </exec_method>

                <stability value='Evolving' />

                <template>
                        <common_name>
                                <loctext xml:lang='C'>
                                        BG-Billing Scheduler
                                </loctext>
                        </common_name>
                        <documentation>
                                <doc_link name='bg-billing-bitel.ru'
                                          uri='http://bg-billing.bitel.ru' />
                        </documentation>
                </template>
</service>

</service_bundle>

Вот сообсно и всё, что понадобилось для комфортного запуска и останова билинга, с мониторингом состояния его работы через SMF, я буду ещё улучьшать манифесты, по мере использования Вашего билинга, и буду тогда сюда вылаживать новые их версии, которые будут проверять запущена ли база данных, смонтированы ли файловые системы необходимые для работы билинга, так как у меня например билинг на ZFS, пока всё, если что-то интересует, то в инфе у меня есть ICQ, пишите, отвечу... :)

Автор:  Администратор [ 04 июн 2007, 18:19 ]
Заголовок сообщения: 

Спасибо

Автор:  msgibnev [ 30 окт 2008, 14:02 ]
Заголовок сообщения: 

Помогите пожалуйста, при запуске на:

root@solaris:uname -a
SunOS solaris 5.10 Generic_127127-11 sun4u sparc SUNW,Sun-Fire-V210

в логе log/server.out появляется ошибка

Exception in thread "main" java.lang.NoClassDefFoundError: bitel/billing/server/Server

Соответственно ничего не запускается и сервисы лежат:

root@solaris:svcs -a | grep bill
maintenance 10:41:48 svc:/application/billing/bgbilling:default
maintenance 10:41:49 svc:/application/billing/bgscheduler:default
maintenance 10:41:49 svc:/application/billing/bgdataloader:default

Все сделал по вышеприведенной инструкции.

Автор:  Amir [ 30 окт 2008, 16:22 ]
Заголовок сообщения: 

java -version что дает?

Автор:  msgibnev [ 30 окт 2008, 16:57 ]
Заголовок сообщения: 

java version "1.5.0_14"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_14-b03)
Java HotSpot(TM) Client VM (build 1.5.0_14-b03, mixed mode, sharing)

Автор:  Amir [ 30 окт 2008, 17:03 ]
Заголовок сообщения: 

нужна Java 6

Автор:  msgibnev [ 30 окт 2008, 19:31 ]
Заголовок сообщения: 

О! спасибо огромное! Помогло!

Страница 1 из 1 Часовой пояс: UTC + 5 часов [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/