Дерево страниц

Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Изменено форматирование.

...

  1. Скачайте сервер приложений Java EE (Java Platform, Enterprise Edition) Wildfly с официального сайта http://wildfly.org/downloads/. Рекомендуемая версия Wildfly для биллинга 14.0.1.Final. Распакуйте содержимое архива, например, в папку /opt и переименуйте папку wildfly-номервесии в wildfly. Или же создайте символическую ссылку /opt/wildfly, которая будет указывать на /opt/wildfly-номерверсии.

  2. Отредактируйте файл /opt/wildfly/bin/standalone.conf, укажите правильный путь к JDK в переменной JAVA_HOME:

    Блок кода
    languagebash
    #
    # Specify the location of the Java home directory. If set then $JAVA will
    # be defined to $JAVA_HOME/bin/java, else $JAVA will be "java".
    #
    #JAVA_HOME="/opt/java/jdk"

    Отредактируйте ниже параметры запуска JVM:

    Блок кода
    languagebash
    #
    # Specify options to pass to the Java VM.
    #
    if [ "x$JAVA_OPTS" = "x" ]; then
       #JAVA_OPTS="-Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true"
       JAVA_OPTS="-Xms64m -Xmx300m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=true -XX:MaxDirectMemorySize=80m -XX:MinHeapFreeRatio=10 -XX:MaxHeapFreeRatio=20"
       JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
    else
       echo "JAVA_OPTS already set in environment; overriding default settings with values: $JAVA_OPTS"
    fi
  3. Если у вас нет значения JAVA_HOME по умолчанию, то отредактируйте add-user common.sh и укажите там путь к JAVA_HOME HOME (иначе следующая команда не будет выполнена):

    Блок кода
    languagebash
    #!/bin/sh -x
    #
    Add User Utility
    #
    # A simple utility for adding new users to the properties file used
    # for domain management authentication out of the box.
    #
    
    JAVA_HOME="/opt/java/jdk"
    
    DIRNAME=`dirname "$0"`jdk15
    
  4. Выполните команду, чтобы добавить пользователя Wildfly для аутентификации в web-консоли:

    Блок кода
    languagebash
    ./add-user.sh логин пароль
  5. Отредактируйте файл конфигурации Wildfly /opt/wildfly/standalone/configuration/standalone.xml указав используемые HTTP-порты (если необходимо):

    Блок кода
    languagexml
    <!--<socket-binding name="http" port="${jboss.http.port:8080}"/>-->
    <socket-binding name="http" port="${jboss.http.port:8081}"/>

    Возможно вы захотите поменять интерфейс, на котором открыт HTTP-порт. Обратите внимание, что для сокета (порта) интерфейс прописан в атрибуте socket-binding/@interface, а также в socket-binding-group/@default-interface. Сами интерфейсы прописаны выше:

    Блок кода
    languagexml
        <interfaces>
            <interface name="management">
                <inet-address value="${jboss.bind.address.management:127.0.0.1}"/>
            </interface>
            <interface name="public">
                <inet-address value="${jboss.bind.address:127.0.0.1}"/>
            </interface>
            <interface name="unsecure">
                <inet-address value="${jboss.bind.address.unsecure:127.0.0.1}"/>
            </interface>
        </interfaces>
    Примечание

    Не рекомендуем оставлять web-консоль (management) открытым наружу (если вы решили поменять интерфейсы).

    Или же порты можно поменять с помощью сдвига (offset), используя параметр port-offset, например, на 1 (т.е. 8080 станет 8081, 8443 станет 8444), изменив значение параметра port-offset:

    Блок кода
    languagexml
    <!--<socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:0}">-->
    <socket-binding-group name="standard-sockets" default-interface="public" port-offset="${jboss.socket.binding.port-offset:1}">
    Примечание

    При изменении port-offset также изменится порт web-консоли Wildfly, значение по умолчанию которого 9990. В этом случае нужно редактировать файл jboss-cli.xml, поменяв значение <port>9990</port> на новое.

    Подсказка

    Данные параметры можно менять в web-консоли Wildfly.

  6. Добавьте системного пользователя wildfly и поменяйте владельца у /opt/wildfly:

    Блок кода
    languagebash
    useradd -r wildfly
    chown -R wildfly:wildfly /opt/wildfly-10XX.1Y.0Z.Final
    chown -R wildfly:wildfly /opt/wildfly
  7. Создайте файл службы для systemd, (примеры скриптов досты в каталоге /wildfly-XX.Y.Z.Final/docs/contrib/scripts) или используйте в качестве примера код нуже

    Блок кода
    languagebash
    cd /lib/systemd/system
    touch wildfly.service

    и укажите содержимое:

    Блок кода
    languageapplescript
    [Unit]
    Description=WildFly Application Server Daemon
    After=network.target
    Requires=
    
    [Service]
    Type=simple
    User=wildfly
    Group=wildfly
    ExecStart=/opt/wildfly/bin/standalone.sh
    
    [Install]
    WantedBy=multi-user.target
  8. Установите в автозапуск:

    Блок кода
    languagebash
    systemctl enable wildfly
  9. Запустите 

    Блок кода
    languagebash
    systemctl start wildfly

    и попробуйте открыть web-консоль на порту 9991, если указали сдвиг портов на 1, или 9990, если не указывали сдвиг портов. Web-консоль по умолчанию запускается на интерфейсе 127.0.0.1, поэтому может понадобиться проброс портов.

  10.  Отключить логирование в консоль (в файл /var/log/message)

    Блок кода
    ./jboss-cli.sh --connect --commands="/subsystem=logging/root-logger=ROOT:remove-handler(name="CONSOLE")"
  11. Настройте firewall, а также рекомендуем использовать nginx.

...

  1. Создайте нового пользователя в BGBillingServer, в поле "Полное имя" укажите Пользователь (как ранее помечались действия абонента), в поле "Описание" укажите "Личный кабинет". Придумайте сложные логин и пароль, разрешите все действия.
  2. Скачайте с https://bgbilling.ru/download/ MyBGBilling.war соответствующий версии биллинга, например, в папку /opt. Распакуйте архив, оставив имя директории, содержащее файлы архива MyBGBilling.war и поместите эту папку в /opt/wildfly/standalone/deployments:

    Блок кода
    languagebash
    unzip ./MyBGBilling.war -d /opt/wildfly/standalone/deployments/MyBGBilling.war && rm -f MyBGBilling.war
  3. Поменяйте владельца у директории MyBGBilling.war

    Блок кода
    languagebash
    chown -R wildfly:wildfly /opt/wildfly/standalone/deployments/MyBGBilling.war
  4. Скопируйте содержимое директории MyBGBilling.war/WEB-INF/script/files в /opt/wildfly/bin:

    Блок кода
    languagebash
    cp /opt/wildfly/standalone/deployments/MyBGBilling.war/WEB-INF/script/files/*.* /opt/wildfly/bin
  5. Отредактируйте файл /opt/wildfly/bin/setenv.sh, укажите правильный путь к JDK в переменной JAVA_HOME.

  6. Если у вас нет значения JAVA_HOME по умолчанию, то отредактируйте jboss-cli.sh и укажите там путь к JAVA_HOME (иначе следующая команда не будет выполнена):

    Блок кода
    languagebash
    #!/bin/sh
     
    JAVA_HOME="/opt/java/jdk"
    
    CLI_OPTS=""
  7. Выполните команду для добавления security-domain в Wildfly, который будет использовать ЛК (устарело для биллинга версии 8.2010+).

    Блок кода
    languagebash
    ./jboss-cli.sh --connect --file=/opt/wildfly/standalone/deployments/MyBGBilling.war/WEB-INF/defaults/configure-security-domain.cli
    Примечание

    Если вы изменяли port-offset, то также изменился порт web-консоли Wildfly, значение по умолчанию которого 9990. В этом случае перед выполнением данной команды нужно редактировать файл jboss-cli.xml, поменяв значение <port>9990</port> на новое.

  8. Скопируйте файлы конфигурации из MyBGBilling.war/WEB-INF/defaults в MyBGBilling.war/WEB-INF:

    Блок кода
    languagebash
    cp /opt/wildfly/standalone/deployments/MyBGBilling.war/WEB-INF/defaults/*.groovy /opt/wildfly/standalone/deployments/MyBGBilling.war/WEB-INF
  9. Отредактируйте MyBGBilling.war/WEB-INF/mybgbilling-conf.groovy, укажите параметры подключения к BGBillingServer

    Блок кода
    languagebash
    // Параметры подключения к BGBillingServer.
    // ЛК является пользователем биллинга, общается с ним также, как BGBillingClient
    bgbilling {
        // URL доступа к BGBilling
        url = 'http://127.0.0.1:8080/bgbilling/executer'
        // Логин
        user = 'customer'
        // Пароль
        password = 'customer'
    }
  10. Запустите синхронизацию клиентских библиотек биллинга

    Блок кода
    languagebash
    /opt/wildfly/bin/mybgbilling-sync-libs.sh

...