воскресенье, 19 августа 2018 г.

CentOS 7.5 установка PostgreSQL, версия 9.6.7-1.1C

CentOS 7.5 1С:Предприятие 8.3.13.1513 PostgreSQL, версия 10.3-3.1C 
CentOS-7-x86_64-DVD-1804.iso
Репозитарий
Обновление ядра в CentOS до последней версии
How to Install or Upgrade to Kernel 4.17 in CentOS 7

1. Не забыть при установке включить сетевой адаптер!
(включается вручную)
2. Пароль root не задаем, создаем пользователя user, c правами администратора

После перезагрузки
$ ip a
узнае ip далее заходим по ssh

$ uname -a
Linux localhost.localdomain 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

$ cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

Обновимся:
$ sudo yum -y update
$ sudo yum -y install epel-release
$ sudo yum -y install nano mc wget net-tools

Узнать ip:

$ ip addr
inet 192.168.1.194/24

Настройка сети:
$ sudo cp /etc/sysconfig/network-scripts/ifcfg-enp0s3 /etc/sysconfig/network-scripts/ifcfg-enp0s3.bak
$ sudo nano /etc/sysconfig/network-scripts/ifcfg-enp0s3


TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="dhcp"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="enp0s3"
UUID="440b97fb-010b-454c-8759-fcab6a03170b"
DEVICE="enp0s3"
ONBOOT="yes"

Отредактировать:

TYPE="Ethernet"
PROXY_METHOD="none"
DNS1="192.168.1.1"
IPADDR0="192.168.1.194"
PREFIX0=24
GATEWAY0="192.168.1.1"
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="no"

NAME="enp0s3"
UUID="440b97fb-010b-454c-8759-fcab6a03170b"
DEVICE="enp0s3"
ONBOOT="yes"

Сохранить.

Посмотрим, что использует ip6:


$ netstat -tulnp
(No info could be read for "-p": geteuid()=1000 but you should be root.)
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      -
tcp        0      0 127.0.0.1:25            0.0.0.0:*               LISTEN      -
tcp6       0      0 :::22                   :::*                    LISTEN      -
tcp6       0      0 ::1:25                  :::*                    LISTEN      -
udp        0      0 127.0.0.1:323           0.0.0.0:*                           -
udp        0      0 0.0.0.0:68              0.0.0.0:*                           -
udp6       0      0 ::1:323                 :::*                                -

Отключим ip6

$ sudo nano /etc/sysctl.conf

Добавим в конец:

net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1

Сохранить.

$ sudo nano /etc/hostname

Изменить имя

centos

Сохранить.

Вписываем имя хоста (centos) в /etc/hosts:
$ sudo cp /etc/hosts /etc/host.bak

$ sudo nano /etc/hosts

Изменить:

#127.0.0.1   localhost
#192.168.0.62 centos
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4 centos
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6 centos

Сохранить.

Вписываем (проверяем) имя хоста в /etc/sysconfig/network:

$ sudo nano /etc/sysconfig/network

NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=centos

Сохранить.
$ sudo service network restart
$ ping centos

Настроим netbios name centos

$ sudo yum -y install samba
$ sudo cp /etc/samba/smb.conf /etc/samba/smb.conf.bak
#$ sudo nano /etc/samba/smb.conf


$ sudo systemctl enable smb.service
$ sudo systemctl enable nmb.service
$ sudo systemctl restart smb.service
$ sudo systemctl restart nmb.service


!!!Откроем сетевой экран:
!!!# firewall-cmd --permanent --zone=public --add-service=samba
!!!# firewall-cmd --reload

Наша цель что бы сервер откликался по имени, детальная настройка samba по ссылке:
Анонимный доступ средствами samba

Отключить firewall centos 7
Отключаем файрволл (сервер внутри сети, в угоду простоте не будем заморачиваться):
$ sudo systemctl status firewalld
$ sudo systemctl stop firewalld
$ sudo systemctl disable firewalld

Отключаем SELinux — в файле /etc/sysconfig/selinux присваиваем параметру SELINUX флаг disabled:
$ sudo nano /etc/sysconfig/selinux

Редактируем:

#SELINUX=enforcing
SELINUX=disabled

Сохранить.

$ sudo poweroff

Создаем образ centos.ova (существующий образ без выделенного красным)

#$ sudo yum install readline #стоит
#$ sudo yum install libtermcap #нет такого
#$ sudo yum install krb5-libs #стоит
#$ sudo yum install openssl #стоит
#$ sudo yum install libicu50 # нет такого


$ sudo yum install libicu-devel
$ sudo yum -y install bzip2


$ mkdir -p /tmp/post

$ cp /home/user/test/postgresql_9.6.7_1.1C_x86_64_rpm.tar.bz2 /tmp/post/
$ cp /home/user/test/postgresql_9.6.7_1.1C_x86_64_addon_rpm.tar.bz2 /tmp/post/
$ cd /tmp/post
$ tar -xvf postgresql_9.6.7_1.1C_x86_64_rpm.tar.bz2
$ cd postgresql-9.6.7-1.1C_x86_64_rpm
$ sudo yum localinstall -y *.rpm
$ cd /tmp/post/
$ tar -xvf postgresql_9.6.7_1.1C_x86_64_addon_rpm.tar.bz2
$ cd postgresql-9.6.7-1.1C_x86_64_addon_rpm
$ sudo yum localinstall -y *.rpm
$ sudo su - postgres
-bash-4.2$ /usr/pgsql-9.6/bin/initdb -D /var/lib/pgsql/9.6/data --locale=ru_RU.UTF-8
-bash-4.2$ /usr/pgsql-9.6/bin/pg_ctl -D /var/lib/pgsql/9.6/data -l logfile start
-bash-4.2$ /usr/pgsql-9.6/bin/psql
postgres=# ALTER USER postgres WITH PASSWORD 'pass'
postgres=# \q
-bash-4.2$ psql -l
-bash-4.2$ exit
$ sudo reboot

$ sudo service postgresql-9.6 start
$ sudo chkconfig postgresql-9.6 on
$ sudo service postgresql-9.6 status


$ netstat -tunpl | grep 5432


Добавляем необходимые шрифты и прочие утилиты:

Get Microsoft's Core Fonts for the Web and Cleartype Fonts

$ sudo yum -y install xorg-x11-fonts-Type1 xorg-x11-fonts-truetype
$ sudo yum install -y curl cabextract xorg-x11-font-utils fontconfig
$ sudo rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm



Для 1с
$ sudo yum -y install ImageMagick glib2-devel unixODBC libmspack
$ sudo yum -y install libgsf
$ mkdir -p /tmp/1c
$ cp /home/user/test/client_8_3_12_1595.rpm64.tar.gz /tmp/1c
$ cp /home/user/test/rpm64_8_3_12_1595.tar.gz /tmp/1c
$ cd /tmp/1c
$ tar xvzf client_8_3_12_1595.rpm64.tar.gz
$ tar xvzf rpm64_8_3_12_1595.tar.gz

Веб сервер не устанавливается 8.3.12.1595
код ошибки 1с 10200637

$ sudo yum install 1C_Enterprise83-common-8.3.12-1595.x86_64.rpm
$ sudo yum install 1C_Enterprise83-server-8.3.12-1595.x86_64.rpm
$ sudo chown -R usr1cv8:grp1cv8 /opt/1C
Зададим пароль pass
$ sudo passwd usr1cv8
Запустим сервер
$ sudo service srv1cv83 start
$ sudo chkconfig srv1cv83 on
$ sudo reboot
$ sudo service srv1cv83 status


$ netstat -tlnp | grep :15


$ sudo cp /var/lib/pgsql/9.6/data/postgresql.conf  /var/lib/pgsql/9.6/data/postgresql.conf.bak
Установка hasp
Sentinel HASP LDK RedHat and SuSE RPM Run-time Installer

$ mkdir -p /tmp/hasp
$ cp /home/user/test/Sentinel_LDK_RedHat_and_SuSE_RPM_Run-time_Installer.tar.gz /tmp/hasp
$ cd /tmp/hasp
$ tar xvzf Sentinel_LDK_RedHat_and_SuSE_RPM_Run-time_Installer.tar.gz
$ cd Sentinel_LDK_RedHat_and_SuSE_RPM_Run-time_Installer
$ sudo yum install aksusbd-7.81-1.x86_64.rpm
$ sudo poweroff

Создаем образ cpost1c.ova

/etc/sysconfig/srv1cv83 - файл конфигурации сервера 1С
/home/usr1cv8/.1cv8/1C/1cv8/1cv8wsrv.lst - файл, в котором хранятся основные свойства сервера - например, учётные данные администратора сервера, зарегистрированые кластеры и т.п.
/home/usr1cv8/.1cv8/1C/1cv8/reg_1541/1CV8Clst.lst - файл, в котором хранятся свойства кластера по умолчанию
/opt/1C/v8.3/x86_64/ - (вместо "x86_64" может быть "i386" - в зависимости от архитектуры системы) исполняемые файлы и сопутствующие ресурсы сервера (и клиента) 1С
/var/1C/licenses - здесь лежат файлы электронных ключей лицензий


Копировать postgresql.conf
$ sudo cp /var/lib/pgsql/9.6/data/postgresql.conf  /var/lib/pgsql/9.6/data/postgresql.conf.bak
!!!sudo cp /var/lib/pgsql/9.6/data/postgresql.conf.bak  /var/lib/pgsql/9.6/data/postgresql.conf
$ sudo cp /var/lib/pgsql/9.6/data/postgresql.conf  /var/lib/pgsql/9.6/data/postgresql.conf.bak-1

Пример  postgresql.conf  для 32 Gb RAM
$ sudo nano /var/lib/pgsql/9.6/data/postgresql.conf

Заменить:

#----------------------------------------------------------------------
listen_addresses = '*'        # what IP address(es) to listen on;
dynamic_shared_memory_type = posix    # the default is the first option
log_destination = 'stderr'        # Valid values are combinations of
log_rotation_age = 1d            # Automatic rotation of logfiles will
datestyle = 'iso, dmy'
timezone = 'W-SU'
lc_messages = 'ru_RU.UTF-8'            # locale for system error message
lc_monetary = 'ru_RU.UTF-8'            # locale for monetary formatting
lc_numeric = 'ru_RU.UTF-8'            # locale for number formatting
lc_time = 'ru_RU.UTF-8'                # locale for time formatting
default_text_search_config = 'pg_catalog.russian'
#----------------------------------------------------------------------
effective_cache_size = '12288MB'
work_mem = '32MB'
shared_buffers = '12288MB'
maintenance_work_mem = '512MB'
temp_buffers = '32MB'
#temp_tablespaces = 'user_temp'
max_files_per_process = '24576'
autovacuum_max_workers = '4'
autovacuum_analyze_scale_factor = '0.01'
autovacuum_vacuum_scale_factor = '0.02'
random_page_cost = '1.5'
log_statement = 'none'
#----------------------------------------------------------------------
log_filename = 'postgresql-%Y-%m-%d.log'
log_rotation_size = '0'
log_timezone = 'W-SU'
log_truncate_on_rotation = 'on'
logging_collector = 'on'

shared_preload_libraries = 'online_analyze, plantuner, auto_explain'

online_analyze.enable = off
online_analyze.verbose = off
online_analyze.table_type = 'temporary'
online_analyze.scale_factor = 0.3
online_analyze.min_interval = 10000
online_analyze.threshold = 500
online_analyze.local_tracking = on


cpu_operator_cost = 0.0005
plantuner.fix_empty_table = on

autovacuum_naptime = '20' # s
#autovacuum_analyze_threshold = 20

bgwriter_delay = '10' # ms
bgwriter_lru_maxpages = '800'
bgwriter_lru_multiplier = '8'

# storage specific
effective_io_concurrency = '2'
random_page_cost = '2'

checkpoint_completion_target = 0.9
#checkpoint_segments = '128'
max_connections = '1000'

synchronous_commit = 'off'
commit_delay = '1000'

# 1C specific
escape_string_warning = 'off'
standard_conforming_strings = 'off'
max_locks_per_transaction = '256'
#work_mem = 65536

# pgbadger

log_directory = 'pg_log'
#log_directory = '/var/log/pgsql'
#log_filename = 'postgresql.log'
log_min_duration_statement = 0s
log_autovacuum_min_duration = 0
log_line_prefix = '%t [%p]: [%l-1] user=%u,db=%d,app=%a,client=%h '
log_checkpoints = on
log_connections = on
log_disconnections = on
log_lock_waits = on
log_temp_files = 0

# backup
max_wal_senders = 4
wal_level = hot_standby
wal_keep_segments = 1024
#----------------------------------------------------------------------

Сохранить.

$ sudo reboot

Комментариев нет:

Отправить комментарий