Установка PayControl v3.9 Linux — различия между версиями

Материал из PayControl Wiki
Перейти к: навигация, поиск
Строка 24: Строка 24:
  
 
Examples
 
Examples
   /usr/bin/bash -i -SPEG -r -o8
+
   install.sh -i -SPEG -r -o8
 
   also like
 
   also like
   /usr/bin/bash -iSPEGro8
+
   install.sh -iSPEGro8
 
     will install PCS, PCP, PCE, PCSS, Oracle JDBC8 Driver and execute register system request
 
     will install PCS, PCP, PCE, PCSS, Oracle JDBC8 Driver and execute register system request
  
   /usr/bin/bash -i -Sp
+
   install.sh -i -Sp
 
   also like
 
   also like
   /usr/bin/bash -Sp
+
   install.sh -Sp
 
     will install PCS with Postgres drivers</pre>
 
     will install PCS with Postgres drivers</pre>
  
 
= Перед установкой PayControl =
 
= Перед установкой PayControl =
  
Перед установкой необходимо установить JRE.
+
Установить последнюю версию JRE 11.
  
 
= Конфигурирование =
 
= Конфигурирование =

Версия 17:41, 14 сентября 2022

Статья описывает установку с помощью инсталляционного скрипта.

Содержание

Справка скрипта инсталляции

Execution modes:
  -i  Install. Set it for process installation. 
  -h  Help. Will show this help.

Installation options:
  -r  Register system (only on PCS, matters with -i option). Optional. For registration you must put you register system request file to "customer" directory before. Contact you supplier for obtain this request file.

 PC roles (must selected at least one of them):
  -S  PC Server
  -P  PC Pusher
  -E  External / PCIS External
  -G  PC Server Signer (only for version 5.2 and above)

Install wildfly database driver (mandatory for PCS and PCSS modules):
  -p  PostgreSQL
  -o  Oracle
    Need to set up parameter - jdbc version:
    8  JDBCv8. Certified with JDK8 and JDK11. Supports Oracle Database versions - 21c, 19c, 18c, and 12.2
    0  JDBCv10. Implements JDBC 4.3 spec and certified with JDK11. Supports Oracle Database versions - 21c, 19c, 18c, and 12.2
    1  JDBCv11. Implements JDBC 4.3 spec and certified with JDK11 and JDK17. Supports Oracle Database versions - 21c, 19c, 18c, and 12.2
  -m  MS SQL

Examples
  install.sh -i -SPEG -r -o8
  also like
  install.sh -iSPEGro8
    will install PCS, PCP, PCE, PCSS, Oracle JDBC8 Driver and execute register system request

  install.sh -i -Sp
  also like
  install.sh -Sp
    will install PCS with Postgres drivers

Перед установкой PayControl

Установить последнюю версию JRE 11.

Конфигурирование

Конфигурирование производится путём редактирования раздела CUSTOMER Config файла install.conf.

Подключение к БД для PCS

Необходимо установить корректные значения адресов и портов СУБД, имена пользователей и пароли.

СУБД Oracle

При использовании СУБД Oracle необходимо указать, каким образом происходит выбор необходимой БД - с помощью SID или Service Name.

Также необходимо следуя высланной инструкции Oracle. Создание пользователя, табличного пространства и таблиц выполнить ее 3-й пункт.

Настройка PCE для подключения к PCS

Для соединения PCE с PCS необходимо указать правильный адрес сервера PCS по которому он сможет получить к нему доступ.

Пример

###################################################
#
# CUSTOMER Config
#
###################################################

PC_PATH='/opt/pc'
PC_PRODUCT='PayControl'

#	PC Servers Settings
##	PCS
### DB
PCSDB_HOST='hostname:port'
PCSDB='DB'
PCSDB_USER='user'
PCSDB_PASSWD='password'

# Oracle connection string delimiters:
# - use ':', if PCSDB contains SID
# - use '/', if PCSDB contains Service Name 
PCSDB_Oracle_delimiter=':' 

###	PCE

PCS_HOSTNAME_PORT='localhost:8080'

Установка

У пользователя, осуществляющего установку должны быть права на выполнение действий с уровнем привилегий root, либо возможность использовать учётную запись root.

  1. Скопировать файлы дистрибутива на сервер, например в домашнюю папку пользователя.
  2. Перейти в директорию с дистрибутивом.
  3. Запустить установочный скрипт с привилегиями root, с необходимыми параметрами.

PC Pusher

Установка PC Pusher на сервере вместе с другим уже установленным модулем PC выполняется следующим образом:

  • Скопировать файл приложения сервера в WF_PATH\standalone\deployments\:
    • на PC Pusher - файл pc-pusher-<VERSION>.war
  • Дождаться старта WF, проверить, что нет ошибок запуска.
  • После развёртывания новых файлов, в директории deployments будут созданы файлы:
    • с расширением *.deployed, где вместо * будут указаны названия новых модулей.
    • После того, как появятся файлы *.deployed, рекомендуется перезапустить Wildfly
    • При появлении файлов с расширением *.failed, необходимо перезапустить Wildfly.

Результат выполнения инсталляционного скрипта

Результат выполнения инсталляционного скрипта является:

  • установка службы wildflу (директория /opt);
  • включение автозапуска службы wildfly;
  • добавление драйверов СУБД (опционально);
  • добавление источников данных (только для PCS);
  • развёртывание файлов сервера в wildfly;
  • регистрация прикладной системы в PayControl (при установленном параметре "r"). Результат регистрации - вывод на экран идентификатора системы в конце журнала работы инсталляционного скрипта (systemid). Пример:
    <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><soap:Body><ns3:registerSystemResponse xmlns:ns2="http://ws.safetech.ru/PayControl/services/ws/common/" xmlns:ns3="http://ws.safetech.ru/PayControlV3/"><systemId>e64a67c9-73e9-462c-9c27-2d0195a2bd23</systemId></ns3:registerSystemResponse></soap:Body></soap:Envelope>
    
    В приведённом примере идентификатором зарегистрированной прикладной системы является e64a67c9-73e9-462c-9c27-2d0195a2bd23. В дальнейшем этот идентификатор понадобится при настройке прикладной системы на работу с PayControl. Если значение идентификатора прикладной системы утеряно, свяжитесь с компанией СэйфТек для его уточнения.

Примеры параметров запуска

Примеры ниже приведены для установки PayControl с драйвером PostgreSQL (параметр "p").

Всё на одном сервере

Без регистрации прикладной системы

sudo ./install.sh -ipSE

С регистрацией прикладной системы

sudo ./install.sh -ipSEr

PCS

Без регистрации прикладной системы

sudo ./install.sh -ipS

С регистрацией прикладной системы

sudo ./install.sh -ipSr

PCE

sudo ./install.sh -iE

Контроль

Вывод журнала в консоль в реальном времени

tail -n 300 -f /opt/wildfly/standalone/log/server.log

Просмотр успешности развёртывания компонентов сервера

ls -la /opt/pc/deployments/

Если компонент сервера развёрнут успешно, рядом с файлом компонента сервера создаётся файл с аналогичным именем файлу сервера с расширением ".deployed".

Проверка доступности сервисов

PCS

Сервисы доступны по ссылкам (при запросе на эти адреса должна возвратиться WSDL-схема):

http://<IP или имя сервера PCS>:8080/ws/PayControlServiceV3?wsdl
http://<IP или имя сервера PCS>:8080/ws/PayControlReportService?wsdl

PCP

Сервис доступен по адресу:

http://<IP или имя сервера PC Pusher>:8080/pc-pusher-api/health_check

PCE

Сервис доступен по адресу

http://<IP или имя сервера PCIS External>:8080/PayControl-interaction-rest/

При запросе на этот адрес должно возвратиться текст «Not Found» с HTTP-кодом 404. В Internet Explorer будет выведена своя страница браузера, сообщающая о том, что страница не найдена.

Внесение изменений в БД

Создание индексов БД PCS

Для создания индексов необходимо выполнить следующие запросы к БД PCS:

create index pc_keyinfo1_idx on PC_KEYINFO (userID, expiration_date, is_deleted);
create index pc_delayedkeyinfo1_idx on PC_DELAYEDKEYINFO (userID, is_deleted);
create index pc_device1_idx on PC_DEVICE (userID, is_deleted); 
create index pc_transaction1_idx on PC_TRANSACTION (userID, status);
create index pc_device2_idx on PC_DEVICE (userID); 
create index pc_keyinfo2_idx on PC_KEYINFO (userID); 
create index pc_transaction2_idx on PC_TRANSACTION (userID); 
create index pc_user1_idx on PC_USER (systemID);

Корректировка типов данных для MS SQL

Для корректировки типов данных необходимо выполнить следующий запрос к БД PCS:

ALTER TABLE PC_TRANSACTION ALTER COLUMN DATA_BINARY image;

Настройка PC Pusher для отправки пушей в другое приложение (при необходимости)

Необходимо выполнить пункты описанные по ссылке "Настройка PCS и PC Pusher"

Корректировка (смена) адресов серверов PayControl (при необходимости)

В работе
Предупреждение! Не рекомендуется дополнительно указывать номер порта, в случаях, если для HTTP используется порт 80, или для HTTPS используется порт 443


Учёт изменения адреса сервера PCS

Для учёта изменения адреса сервера PCS необходимо произвести изменения в настройках PCE. В файле /opt/wildfly/bin/standalone.conf, в следующей строке, указав правильный адрес и при необходимости порт сервера PCS, а также уточнив протокол подключения (HTTP/HTTPS):

JAVA_OPTS="$JAVA_OPTS -Dpcservice.endpoint=http[s]://<IP или DNS-имя>[:PORT]/ws/PayControlServiceV3?wsdl -Duser.language=ru -Dpaycontrol.locale=ru"

Учёт изменения адреса сервера PC Pusher

Для учёта изменения адреса сервера PC Pusher, необходимо, предварительно указав корректные данные (протокол (HTTP/HTTPS), имя или IP сервера, порт, идентификатор системы), выполнить запрос к БД PCS:

update pc_system set pc_is_internal_url = 'http[s]://<IP или DNS-имя>[:PORT]/pc-pusher-api/' where systemid='<SYSTEMID>';

Учёт изменения внешнего адреса сервера PCE

В работе
Предупреждение! Если система была переведена в промышленную эксплуатацию, при смене адреса для доступа мобильных устройств, не рекомендуется выводить из действия предыдущий адрес на протяжении всего срока действия выпущенных ключей пользователя. Иначе мобильное приложение потеряет доступ к серверу PayControl и для восстановления будет необходимо перевыпустить ключ и заново добавить его в приложение пользователя.

Для учёта изменения внешнего адреса сервера PayControl, по которому связываются мобильное приложение с сервером PayControl, необходимо, предварительно указав корректные данные (протокол (HTTP/HTTPS), имя или IP сервера, порт, идентификатор системы), выполнить запрос к БД PCS:

update pc_system set pc_is_external_url = 'http[s]://<IP или DNS-имя>[:PORT]/PayControl-interaction-rest/' where systemid='<SYSTEMID>';