Установка на Astra Linux
УСТАНОВКА СИСТЕМЫ
Установка и настройка базы данных
Регистрация репозитория 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
Изменения в файлах с версией ядра
- Архивы VER1 и VER2 по умолчанию содержат схему sys_cubs. Необходимо разархивировать архивы и в файлах \DB_PG\script.sql заменить sys_cubs на имя схемы БД по умолчанию.
- Архивы VER1 и VER4 по умолчанию содержат имя пользователя dev_user. Необходимо разархивировать архивы и в файлах \DB_PG\script.sql заменить dev_user на имя созданного пользователя БД.
- Заархивировать версию с изменениями.
УСТАНОВКА ЯДРА
Файл 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