Установка на Astra Linux

Материал из Intellex
Перейти к навигации Перейти к поиску

УСТАНОВКА СИСТЕМЫ

Установка и настройка базы данных

Регистрация репозитория Postgresql

$ sudo wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
$ sudo echo "deb http://apt.postgresql.org/pub/repos/apt/ `lsb_release -cs`-pgdg main" |sudo tee  /etc/apt/sources.list.d/pgdg.list

Установка выбранной версии

$ sudo apt update
$ sudo apt install postgresql-13 postgresql-client-13

Проверка состояние сервиса

$ sudo systemctl status postgresql.service
$ sudo systemctl status postgresql@13-main.service
$ sudo systemctl is-enabled postgresql

Изменение locale на русскую

1) останавливаем сервис

sudo systemctl stop postgresql

2) удаляем автоматически созданную базу

rm -rf /var/lib/postgresql/13/main/*

3) Добавляем русские locale

locale -a
sudo locale-gen ru_RU
sudo locale-gen ru_RU.UTF-8
sudo update-locale

4) меняем текущего пользователя на postgres

sudo su - postgres

5) регистрируем переменные окружения

Cоздаем или редактируем файл ~/.bashrc, вписываем строки

export PATH=$PATH:/usr/lib/postgresql/13/bin
export PGDATA="$HOME/13/main"

выполняем;

$ source ~/.bashrc

6) генерируем базу с нужной locale

$ initdb --locale=ru_RU.utf8 --lc-messages=en_US.utf8

Настройка доступа к базе

1) редактируем файл /etc/postgresql/13/main/postgresql.conf чтобы база была доступна со всех адресов

listen_addresses = '*'

Можно исправить значения временной зоны

timezone = 'Europe/Moscow'

2) редактируем /etc/postgresql/13/main/pg_hba.conf, добавляем в конец файла

host all all 10.0.0.0/16 md5

где 10.0.0.0/16 - CIDR вашей сети или внешнего хоста, которому разрешается доступ

3) Запускаем сервис postgresql

$ sudo systemctl start postgresql

Создание пользователя БД

Из под учетной записи суперпользователя сервера postgresql, необходимо создать пользователя БД:

xmdb# su postgres

xmdb$ psql

postgres=# CREATE ROLE xm_user NOINHERIT NOREPLICATION LOGIN PASSWORD ''xm_user_pass';

где,

xm_user - имя пользователя,

''xm_user_pass'- пароль.

Создание базы данных на сервере postgresql

postgres=# CREATE DATABASE database_name

WITH

OWNER = xm_user

ENCODING = 'UTF8'

LC_COLLATE = 'ru_RU.UTF-8'

LC_CTYPE = 'ru_RU.UTF-8'

CONNECTION LIMIT = -1

TEMPLATE template0;

где ,

database_name - имя базы,

xm_user  - пользователь из пункта 1

Изменения в файлах с версией ядра

  1. Архивы VER1 и VER2 по умолчанию содержат схему sys_cubs. Необходимо разархивировать архивы и в файлах \DB_PG\script.sql заменить sys_cubs на имя схемы БД по умолчанию.
  2. Архивы VER1 и VER4 по умолчанию содержат имя пользователя dev_user. Необходимо разархивировать архивы и в файлах \DB_PG\script.sql заменить dev_user на имя созданного пользователя БД.
  3. Заархивировать версию с изменениями.

УСТАНОВКА ЯДРА

Файл bases.xml должен лежать рядом с папкой lib и Installer2##2.8.64

Содержимое файла bases.xml:

<conf>

<BaseConfig>

<configName>XM</configName>

<userName>user </userName>

<userPassword>password </userPassword>

<serviceName>database_name</serviceName>

<ipName>host</ipName>

<portName>port</portName>

<baseType>Postgre</baseType>

<defaultSchemaName>sсheme_name</defaultSchemaName>

</BaseConfig>

</conf>

где,

user - имя пользователя для подключения к БД;

password - пароль для подключения к БД;

database_name - имя БД;

host - ip адрес хоста БД;

port - порт БД;

scheme_name - имя схемы БД.

Параметр baseType не менять!

1) С любого компьютера с ОС Windows, у которого есть доступ к БД и установлена Oracle Java Runtime Environment 8 (JRE 8), выполнить.

2) Installer2##2.8.64 двойным кликом, выбрать подключение к БД, нажать «Далее».

3) Поставить галочку на «Единичная версия», выбрать файл с версией VER1.zip, нажать «Далее».

4) Проставить галочку «Я ознакомлен с изменениями в версии». Нажать «Установить».

5) Установка завершена. Нажать «Далее» для просмотра логов и «Закрыть» для выхода.

6) Установить остальные файлы с архивами версий (VER2.zip, VER3.zip, VER4.zip, VER5.zip).

УСТАНОВКА И НАСТРОЙКА СЕРВЕРА ПРИЛОЖЕНИЙ

Установка сервера приложений ApacheTomee

На каждом сервере приложений устанавливается идентичным образом.

Установка ApacheTomEE

Установить JDK 1.8.0_201.

Скачать apache-tomee-8.0.6-plus.tar.gz и распаковать архив:

xmapp*# tar zxvf apache-tomee-8.0.6-plus.tar.gz

Перенести распакованное дерево папок на постоянное место:

xmapp*# mv apache-tomee-8.0.6-plus.tar.gz /opt/tomee

Создать учетную запись пользователя, под которым будет исполняться сервер приложений:

xmapp*# useradd -r tomee --shell /bin/false

Передать её права на дерево папок:

xmapp*# chown -R tomee:tomee /opt/tomee/
chmod +x bin/*.sh

Настройка Apache Tomee в качестве системного сервиса

Создать файл /etc/systemd/system/tomee.service следующего содержания:

# Systemd unit file for default tomee

#

# To create clones of this service:

# DO NOTHING, use tomee@.service instead.

[Unit]

Description=Apache TomEE

After=syslog.target network.target

[Service]

User=tomee

Group=tomee

Type=forking

Environment=CATALINA_PID=/opt/tomee/tomee.pid

Environment=CATALINA_HOME=/opt/tomee

Environment=CATALINA_BASE=/opt/tomee

Environment='CATALINA_OPTS=-Xms4096M –Xmx8192M -server -XX:+UseParallelGC'

Environment='JAVA_OPTS=-Djava.awt.headless=true

-Djava.security.egd=file:/dev/./urandom'

ExecStart=/opt/tomee/bin/startup.sh

ExecStop=/opt/tomee/bin/shutdown.sh

Restart=on-failure

WorkingDirectory=/opt/tomee

[Install]

WantedBy=multi-user.target

После сохранения файла, обновить статус системных служб:

xmapp*# systemctl daemon-reload

Открыть порты в файерволе:

xmapp*# iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT

xmapp*# iptables-save

В файле \opt\tomee\conf\tomcat-users.xml добавить логин для доступа к менеджеру веб-сервера:

<role rolename="tomee-admin" />

<user username="ide" password="ide$Admin1" roles="tomee-admin,manager-gui,admin-gui" />

Запустить службу:

xmapp*# systemctl start tomee

Включить автозапуск:

xmapp*# systemctl enable tomee

Проверить статус:

xmapp*# systemctl status tomee

Вывод команды должен показать состояние сервиса "Active" и отсутствие ошибок.

Проверить работу ApacheTomee в браузере вызвав соответствующий адрес http://server-ip-address:8080/ , где server-ip-address - адрес сервера

Сопряжение БД и сервера приложений

На каждом сервере приложений, в конфигурационный файл Tomee /opt/tomee/conf/server.xml добавить ресурс в GlobalNamingResources:

<Resource name="jdbc/appServerPool"

             global="jdbc/appServerPool"

          auth="Container"

             type="javax.sql.DataSource"

             driverClassName="org.postgresql.Driver"

             factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"

          url="jdbc:postgresql://server-ip-address:port/database_name?ApplicationName= app1"

          username="xm_user"

          password="xm_user_pass"

          maxIdle="10"

          maxWait="-1"

          maxTotal="100"

/>

где: server-ip-address ip адрес сервера, port  порт базы database_name имя базы, xm_user  пользователь из пункта 1

В конфигурационный файл Tomee <tomee_home>/conf/context.xml добавить в контекст:

<JarScanner scanManifest="false"/>

<ResourceLink name="jdbc/appServerPool"

                global="jdbc/appServerPool"

             auth="Container"

                type="javax.sql.DataSource" />

Для доступа к manager, в файлe

Tomee <tomee_home>/webapps/manager/META-INF/context.xml закомментировать строку:

Удалить из install/tomee/lib файл ejb-core-1.0.jar

Скопировать из дистрибутива библиотеки:

install/tomee/lib/

в <tomee_home>/lib:

amqp-client-4.0.2.jar

apache-log4j-extras-1.2.17.jar

caffeine-2.3.5.jar

commons-cli-1.3.1.jar

commons-lang3-3.4.jar

compiler-0.8.13.jar

compress-lzf-1.0.2.jar

dom4j-1.6.1.jar

ejb-core-1.0.jar

elasticsearch-2.3.1.jar

FastInfoset.jar

gmbal-api-only.jar

groovy-all-2.4.15.jar

gson-2.2.2.jar

guava-18.0.jar

guava-19.0.jar

ha-api.jar

HdrHistogram-2.1.6.jar

hppc-0.7.1.jar

jackson-dataformat-cbor-2.6.2.jar

jackson-dataformat-smile-2.6.2.jar

jackson-dataformat-yaml-2.6.2.jar

JasLibrary.jar

jas-ejb-core-1.2.6.jar

javax.annotation-api.jar

javax.mail.jar

javax.xml.soap-api.jar

jaxb-api.jar

jaxb-core.jar

jaxb-impl.jar

jaxb-jxc.jar

jaxb-xjc.jar

jaxws-api.jar

jaxws-rt.jar

jaxws-tools.jar

jcifs-1.3.15.jar

jna-4.3.0.jar

jna-platform-4.3.0.jar

joda-convert-1.2.jar

joda-time-2.8.2.jar

jsr166e-1.1.0.jar

jsr181-api.jar

jts-1.13.jar

log4j-1.2.17.jar

management-api.jar

mimepull.jar

netty-3.10.5.Final.jar

ojdbc7.jar

orai18n.jar

policy.jar

postgresql-42.2.18.jar

saaj-impl.jar

securesm-1.0.jar

slf4j-api-1.7.25.jar

slf4j-simple-1.7.25.jar

snakeyaml-1.15.jar

spatial4j-0.5.jar

stax-ex.jar

stax2-api.jar

streambuffer.jar

t-digest-3.0.jar

tomcat-juli-adapters.jar

tomcat-juli.jar

ucp.jar

waffle-jna-1.9.1.jar

waffle-tomcat7-1.9.1.jar

woodstox-core-asl.jar

УСТАНОВКА ВЕБ-ПРИЛОЖЕНИЙ

Установка приложения модуля «Сервер приложений»

Открыть web-интерфейс управления TomEE http://<tomee>:8080/manager/html

В разделе «WAR file to deploy/WAR файл для развёртывания» выбрать файл AppServer.war и нажать кнопку  Deploy/Развернуть

Результаты развертывания и рабочего процесса, можно посмотреть, в файлах логов томката и сервлета:

<tomee_home>/logs/webapps/AppServer/AppServer.log

Установка приложения модуля

Открыть web-интерфейс управления TomEE

http://<tomee>:8080/manager/html

В разделе «WAR file to deploy/WAR файл для развёртывания» выбрать файл WebShell.war и нажать кнопку  Deploy/Развернуть.

Результаты развертывания и рабочего процесса, можно посмотреть, в файлах логов томката:

<tomee_home>/logs/catalina.out