1С. Установка сервера 1С:Предприятие 8.3 + PostgreSQL на Linux

Имеется сервер с Linux на борту, необходима установка сервера и PostgreSQL, свежих версий.

Данная запись написана уже давно, во времена Ubuntu 16.04, технологической платформы 1С:Предприятия 8.3.10 и PostgreSQL 9.4. С выходом новых релизов обновляется, и является пособием для установки актуальных версий. Выявленные особенности сочетания дистрибутивов описаны отдельно.

Задача

Есть сервер с Ubuntu(Debian) на борту, необходимо установить и настроить для совместной работы сервер 1С:Предприятие 8.3 и PosgreSQL

Решение

Самым первым делом устанавливаем локализацию, сервер работает с локализацией ru_RU.UTF8, соответственно PostgreSQL нужен с ней же. PostgreSQL создает кластер с локализацией по умолчанию ОС, если будет указана отличная локализация, то сервевер и PostgreSQL не встретятся.

# locale-gen en_US
# locale-gen ru_RU
# update-locale LANG=ru_RU.UTF8

Или воспользоваться утилитой с псевдо-графическим интерфейсом, которая делает все тоже самое

# dpkg-reconfigure locales

В псевдо-графическом интерфейсе необходимо проверить правильность выбранных вариантов и ответить утвердительно.

Для применения изменений необходимо перезагрузить систему.

Установка сервера 1С:Предприятие

Предварительно установим необходимые пакеты

# apt install imagemagick ttf-mscorefonts-instal

Для получения дистрибутива сервера 1С:Предприятие необходимо перейти на https://releases.1c.ru/project/Platform и выбрать необходимый релиз с необходимой разрядностью. В моем случае актуальный релиз. Далее по тексту, вместо релиза буду указывать x.x.xx-xxxx.

С установкой cсервера, как правило проблем нет, просто последовательно устанавливаем пакеты

# dpkg -i 1c-enterprise83-common_x.x.xx-xxxx_amd64.deb
# dpkg -i 1c-enterprise83-server_x.x.xx-xxxx_amd64.deb
# dpkg -i 1c-enterprise83-ws_x.x.xx-xxxx_amd64.deb

Если вдруг пакеты не установились из-за неудовлетворенных зависимостей, то воспользуемся командой

# apt -f install

в итоге станет все хорошо, если хорошо не стало, то читаем выхлоп и правим зависимости. У меня проблем не возникло.

На этом этапе уже можно добавить сервер в консоль серверов и он должен быть виден.

1С. Установка сервера 1С:Предприятие 8.3 + PostgreSQL на Linux

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

# /etc/init.d/srv1cv83 start
# /etc/init.d/srv1cv83 restart
# /etc/init.d/srv1cv83 stop

Если необходимо установить драйвер HASP, то прочитать как это делается можно в статье 1С. Установка 1С:Предприятие 8.3 на Linux.

Установка PostgreSQL

Фирма распространяет специально обученный дистрибутив PostgreSQL, который отличается от «стандартного» наложенным патчем. При желании можно взять «стандартный» PostgreSQL, пропатчить его и собрать.

Получение дистрибутива

Для получения дистрибутива необходимо перейти на https://releases.1c.ru/project/AddCompPostgre и выбрать необходимый релиз с необходимой разрядностью. В моем случае необходимо было установить релиз 11.5, на нем и буду проводить дальнейшее описание.

Кроме дистрибутива необходимо обратить внимание на раздел Особенности релиза, в нем описано:

  • C какой версисей платформы реализована поддержка и проводилось нагрузочное тестироввние;
  • Список поддерживаемых дистрибутивов Linux и что необходимо выполнить до установки.

Для Ubuntu 16.04 и старше указано, что необходимо предварительно установить пакеты libicu55 и postgresql-common.

Ранее необходимо было искать недостающие пакеты по репозиториям, скачивать и устанавливать. Теперь же в нижней части страницы с релизами есть раздел Дополнительные материалы. В разделе выложены необходимые пакеты для удовлетворения зависимостей дистрибутива. Например для Ubuntu Server 20.04, к PostgreSQL 11.5 архив содержит пакеты:

  • libicu55_55.1-7_amd64.deb
  • libllvm6.0_6.0-1ubuntu2_amd64.deb
  • libllvm9_9_+20191211102125+c1a0a213378-1_exp1_20191211212701.104_amd64.deb
  • postgresql-client-common_207_all.deb
  • postgresql-common_207_all.deb
  • ssl-cert_1.0.39_all.deb

Установка

Пакет postgresql-common я установил из репозитория

# apt install postgresql-common

Пакет libicu55, установил из скачанного ахива дополлнительных материалов

# dpkg -i ./libicu55_55.1-7ubuntu0.4_amd64.deb

Далее необходимо установить пакеты скачанного дистрибутива PostgreSQL

# dpkg -i ./libpq5_11.5-19.1C_amd64.deb
# dpkg -i ./postgresql-11_11.5-19.1C_amd64.deb
# dpkg -i ./postgresql-client-11_11.5-19.1C_amd64.deb

Теперь все установилось без проблем, но Postgres после этого автоматически не запускается, а предлагает это выполнить вручную. Запуск проиходит без проблем.

# pg_ctlcluster 11 main start

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

# apt-mark hold libpq5 postgresql-11 postgresql-client-11

Настройка

При установке автоматически создается кластер main, необходимо только произвести некоторые настройки. Для возможности подключения открываем файл /etc/postgresql/11.6/main/pg_hba.conf

# nano /etc/postgresql/11/main/pg_hba.conf

находим строку

local all postgres peer

и изменяем на peer на trust

local all postgres trust

Далее сменим пароль для пользователя postgres, от которого будет происходить подключение к СУБД

# psql -U postgres -d template1 -c "ALTER USER postgres PASSWORD 'Password'"

вместо Password пишем необходимый пароль.

Остается перезапустить службу, и можно подключиться к серверу PostgreSQL средствами pgAdmin.

1С. Установка сервера 1С:Предприятие 8.3 + PostgreSQL на Linux

Для запуска, перезапуска, остановки службы сервера PostgreSQL можно воспользоваться командами:

# /etc/init.d/postgresql start
# /etc/init.d/postgresql restart
# /etc/init.d/postgresql stop

Если Вы все сделали и сервер так и не заработал, то первым делом необходимо проверить локализацию. Если установлена не та локализация, то необходимо пересоздать кластер, команды и результат выполнения ниже

# pg_dropcluster --stop 11 main
Redirecting stop request to systemctl
# pg_createcluster --locale ru_RU.UTF-8 11 main
Creating new cluster 11/main ...
config /etc/postgresql/11/main
data /var/lib/postgresql/11/main
locale ru_RU.UTF-8
socket /var/run/postgresql
port 5432

Проверка результата

Теперь можно зайти в консоль серверов добавить ИБ и проверить работу.

1С. Установка сервера 1С:Предприятие 8.3 + PostgreSQL на Linux

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *