Переустановка сервера 1с linux

Обновляем платформу 1С на сервере под управлением Linux

Здравствуйте, меня зовут Шилин Никита и в прошлом я довольно много работал разработчиком 1С, а так же выполнял сопутствующие задачи. В настоящий момент я всё больше занимаюсь управлением командой и исполняю функции CTO на производственном предприятии. Команда у нас небольшая, отдельного девопса нет, а системный администратор не должен заниматься настройкой сервера 1С используется для других целей. Одной из задач на текущий момент для меня является администрирование сервера 1С на базе Ubuntu и его окружения.

Данная статья является, по сути, моей методичкой, которую я написал, собрав опыт настройки сервера под Linux с различных статей, официальной документации и просто покопавшись руками «вот в этом вот всем». Так как я ни разу не системный администратор и уж тем более под Linux, мне это далось с трудом, пришлось дополнительно много с чем разобраться. А мне ещё и делегировать это.

Действуя по этой методичке вы сможете обновить свою платформу в конце 2022 года, включить отладку на сервере и обновить свой веб-сервер. В отличие от большинства гайдов, работать будем с подсистемой systemd, вместо описанных везде init.d.

Проблематика

В последних дистрибутивах платформы 1С поменяла философию работы как с установочными файлами, так и с самими настройками сервера, поэтому первое с чем вы столкнетесь — это огромный ворох статей пятилетней давности, неактуальной документацией на its и множеством вопросов в духе «Почему не работает, я же все сделал по инструкции?». Плюс информация довольно сильно размазана и некоторые шаги я делал интуитивно, складывая, по аналогии, информацию из нескольких статей и пытаясь «изменить-сохранить-перезапустить» без малейшего понимания что я делаю, зачем, и надежды на то что оно вообще заработает. Спойлер: заработало.

Надеюсь, эта статья здорово сократит вам путь и снимет с вас головную боль от мысли что надо обновить платформу до последней версии, отладка отвалится, интеграции прилягут, а утром пользователи начнут звонить к вам в кровать.

Окружение

Мы используем Ubuntu 20.04.2 LTS (x64) для сервера 1С.

Вторую такую же машину для веб-сервера + Apache 2.4 для самописной интеграции с Битрикс24 (веб-хуки) и публикаций / внутренних сервисов компании.
Так же терминальный сервер для пользователей под Windows Server 2019 Standard.

Читайте также:  Check modules loaded linux

Все настройки будут происходить по SSH/WinSCP. Все команды, выполняемые в консоли выполняются от имени пользователя с полными правами (root).

Больше никакой воды, переходим к инструкции.

Инструкция по обновлению

  1. Сделаем архивы всех боевых баз. Надеюсь, вы еще и проверяете что они работают. Мы проверяем.
  2. Скачаем нужный дистрибутив с сайта users.v8.1c. Когда перейдёте на страницу для выбора варианта своего дистрибутива вас неприветливо встретят 34 ссылки с вариантами клиентов и прочей информацией. Я прочитал и разобрался в них за вас: Выбираем «Технологическая платформа 1С:Предприятия (64-bit) для Linux».
  3. Создадим на сервере папку через WinSCP, загрузим в неё дистрибутив и распакуем через WinSCP.
  4. Идём в SSH-клиент, подключаемся к серверу 1С, переходим в папку с распакованным дистрибутивом, запускаем единый установочный файл:
    ./setup-full-8.3.22.1709-x86_64.run

Останавливаем службу:
systemctl stop srv1cv8-8.3.22.1709@default.service

Идём туда, где лежит файл конфигурации:
сd /opt/1cv8/x86_64/8.3.22.1709/

Открываем его:
nano srv1cv8-8.3.22.1709@.service

Ищем строку Environment=SRV1CV8_DEBUG= и добавляем в конец -http чтобы получилось:
Environment=SRV1CV8_DEBUG=-http

Тут стоит уточнить: вы можете использовать флаг -tcp вместо -http , но у нас стоит NAT и добиться отладки по tcp мне пока не удалось.
Сохраняем, выходим.

Перечитываем новую конфигурацию:
systemctl daemon-reload

Запускаем службу:
systemctl start srv1cv8-8.3.22.1709@default.service

Проверяем статус
systemctl status srv1cv8-8.3.22.1709@default.service

Должны увидеть следующее:
CGroup: /system.slice/system-srv1cv8\x2d8.3.22.1709.slice/srv1cv8-8.3.22.1709@default.service
├─3266 /opt/1cv8/x86_64/8.3.22.1709/ragent -d /home/usr1cv8/.1cv8/1C/1cv8 -port 1540 -regport 1541 -range 1560:1591 -seclev 0 -pingPeriod 1000 -pingTimeout 5000 -http ├─3296 /opt/1cv8/x86_64/8.3.22.1709/rmngr -port 1541 -host server1c.local -range 1560:1591 -d /home/usr1cv8/.1cv8/1C/1cv8/ -debug -http -clstid bd0a303e-c762-417f-b310-dc3aa2e80fca ├─3400 /opt/1cv8/x86_64/8.3.22.1709/dbgs —port=1550 └─3401 /opt/1cv8/x86_64/8.3.22.1709/rphost -range 1560:1591 -reghost server1c.local -regport 1541 -pid decb62bb-5dbe-42b7-a6c6-bd08c442d996 -debug -http

Вот и всё! Можно возвращаться к работе.

Заключение, благодарности.

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

Выражаю благодарность авторам, за то что они собрали информацию по работе с подсистемой systemd, так как большинство мануалов, в том числе официальных, написано для традиционной подсистемы init.

Дополнения и уточнения в комментариях приветствуются.

Источник

Установка Платформы «1С:Предприятие» в ОС Linux

Перед началом установки необходимо скачать дистрибутивы, которые понадобятся в дальнейшем. В данном примере мы будем устанавливать:

  • Если для сервера использоваться ключи аппаратной защиты HASP, то необходимо установить на сервер драйвер защиты HASP. Последние версии для различных операционных систем можно скачать:

Если в дальнейшем работа с сервером «1С:Предприятие» на Linux и управление будет осуществляться c других машин, необходимо убедиться в том, что ip-адрес компьютера, на котором расположен сервер, будет корректно разрешаться в его hostname. Откроем консоль сервера от имени пользователя root и получим адрес компьютера:

Имя компьютера можно получить так:

Теперь данные о соответствии ip-адреса и имени необходимо внести в файлы hosts тех машин, откуда будут устанавливаться соединения с кластером серверов:

IP-address hostname.local hostname

Для Windows он расположен обычно:

%windir%\system32\drivers\etc\hosts

В противном случае при установке клиентского соединения с рабочим процессом кластера будет возникать ошибка.

Установка платформы в Debian-системах на примере Ubuntu Server 16.04

  1. Откроем консоль сервера от имени пользователя root.
  2. Создадим директорию, куда поместим (любым удобным образом) архив с Deb-пакетами для установки Сервера 1С:Предприятие, скачанный предварительно.

Распакуем архив (при помощи команды tar xzf):

tar xzf deb64_8_3_13_1644.tar.gz

  1. Для установки пакетов удобнее всего воспользоваться утилитой gdebi. Если она не была ранее установлена, это можно сделать при помощи команды:

Устанавливаем сервер «1С:Предприятие»:

gdebi 1c-enterprise83-common_8.3.13-1644_amd64.debgdebi 1c-enterprise83-server_8.3.13-1644_amd64.debgdebi 1c-enterprise83-ws_8.3.13-1644_amd64.debgdebi 1c-enterprise83-common-nls_8.3.13-1644_amd64.debgdebi 1c-enterprise83-server-nls_8.3.13-1644_amd64.debgdebi 1c-enterprise83-ws-nls_8.3.13-1644_amd64.deb

Последние три nls-пакета содержат языковые файлы и требуют обязательной установки только в том случае, если будут использоваться языки, отличные от русского и английского.

Установка будет осуществлена в директорию /opt/1C/v8.3/x86_64.

apt-get -y install ttf-mscorefonts-installer

Для того, чтобы система «увидела» установленные шрифты, нужно выполнить команду:

apt-get install libfreetype6 libgsf-1-common unixodbc glib2.0

Проверить статус работы можно при помощи команды:

systemctl status srv1cv83

Будет выполнена проверка, запущен ли сервис (Starting 1C:Enterprise 8.3 server: OK), и выведено детальное состояние сервиса.

Проверить, запущены ли процессы кластера, можно при помощи команды:

Перейдем к установке драйвера HASP. Для данного примера скачиваем драйвер по адресу:

Для установки драйвера выполняем следующие действия:

  1. В этот каталог любым удобным образом поместим скачанный пакет установки драйвера и перейдем в него:

apt-get -y install libc6:i386
gdebi haspd_7.60-eter1ubuntu_amd64.deb

Проверить статус можно так:

Установка платформы в RPMS на примере CentOS 7

  1. Откроем консоль от имени root.
  2. Создадим директорию, куда поместим (любым удобным образом) архив с RPM-пакетами для установки Сервера 1С:Предприятие, скачанный предварительно.

tar xzf rpm64_8_3_13_1644.tar.gz

В данном примере будут установлены все пакеты, но, если в вашей системе не планируется использовать языки, отличные от русского и английского, nls-пакеты вы можете не устанавливать — они содержат только языковые файлы.

Для пакетов x86_64 установка будет осуществлена в директорию /opt/1C/v8.3/x86_64.

  1. Для корректной работы приложений необходимо установить шрифты из состава Microsoft Core Fonts.

  • Скачиваем любым удобным образом (например, при помощи wget) файлы пакета с сервера SourceForge:

Надо скачать все .exe-файлы, кроме wd97vwr32.exe.

  • Переименовываем все скачанные .exe-файлы, присвоив им расширение .zip, после чего распакуем их и удалим все, кроме имеющих расширение .ttf – это файлы шрифтов.
  • Файлы шрифтов (.ttf-файлы) копируем в каталог /usr/share/fonts/truetype/

Для того, чтобы система «увидела» установленные шрифты, нужно выполнить команду:

yum install fontconfig freetype libgsf unixODBC

Проверить статус работы можно при помощи команды:

systemctl status srv1cv83

Будет выполнена проверка, запущен ли сервис (Starting 1C:Enterprise 8.3 server: OK), и выведено детальное состояние сервиса.

Проверить, запущены ли процессы кластера, можно при помощи команды:

Перейдем установке драйвера HASP. Для данного примера скачиваем драйвер по адресу :

Для установки драйвера выполняем следующие действия:

  1. В этот каталог любым удобным образом поместим скачанный пакет установки драйвера и перейдем в него:

Проверить статус можно так:

Основные проблемы и вопросы по установке Платформы «1С:Предприятие» в Linu x

1. При работе возникают ошибки «Не найдена библиотека …»

В зависимости от вашего дистрибутива Linux и функционала системы для корректной работы 1С:Предприятие вам может понадобиться дополнительно самостоятельно установить внешние библиотеки. Полный список их представлен в документации:

Обратите внимание, что в документации указано именно имя библиотеки, а не имя пакета. Имя пакета, в который она входит, может отличаться в разных дистрибутивах. В какие именно пакеты входит библиотека, обычно можно найти в репозитории для вашей ОС.

2. Как запустить сервер в режиме отладки?

Для того, чтобы на сервере была доступна отладка, необходимо запустить его в ключом –debug. Для этого сначала остановим сервер «1С:Предприятие»:

ВАЖНО! Не редактируйте параметры запуска сервера в процессе его работы, это может привести к ошибкам при его перезапуске.

Теперь необходимо отредактировать параметры его запуска в конфигурационном файле srv1cv83 (в данном примере с использованием редактора vim):

Находим в редактируемом файле строку SRV1CV8_DEBUG= , убираем в начале этой строки символ комментария # и устанавливаем значение переменной SRV1CV8_DEBUG в 1:

Сохраняем изменения и выходим из файла.

Перезапускаем сервер «1С:Предприятия 8»:

systemctl restart srv1cv83

3. Где находится каталог данных кластера серверов и как его изменить?

По умолчанию каталог кластера находится в директории пользователя, от имени которого запущен сервер 1С:Предприятие — $HOMEDIR/.1cv83/1C/1Cv83, например:

Для того, чтобы изменить место изменить место расположения, необходимо, по аналогии с п. 1, изменить параметр SRV1CV8_DATA запуска в конфигурационном файле /etc/sysconfig/srv1cv83.

ВАЖНО! Не забудьте убедиться в наличии прав на директорию данных кластера у пользователя, от имени которого запущен сервер. Увидеть права можно при помощи команды:

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

chown -R usr1cv8 /cluster_data

В конфигурационном файле /etc/sysconfig/srv1cv83 также задаются порты, на которых будут работать процессы кластера, и другие параметры запуска.

4. Как настроить технологический журнал сервера в Linux ?

На сервере создадим каталоги, в который будут помещаться файлы журнала:

Создадим каталог для настроек журнала /opt/1C/v8.3/x86_64/conf:

mkdir -p /opt/1C/v8.3/x86_64/conf

Поместим в этот каталог файл logcfg.xml со следующим (например) содержимым:

В данном случае собирается полный технологический журнал (не стоит делать так на постоянной основе в продуктиве), срок хранения файлов журналов — 24 часа, находиться они будут в директории /var/log/1c/logs.

ВАЖНО! Необходимо предоставить пользователю, от имени которого работает сервер 1С:Предприятие, права на запись в каталог логов. Например, так:

groupadd grp1clogsusermod -a -G grp1clogs www-datausermod -a -G grp1clogs usr1cv8
chown -R usr1cv8:grp1clogs /var/log/1cchmod g+rw /var/log/1c

5. Почему не формируются дампы, если их сбор настроен в logcfg.xml?

По умолчанию в linux создание дампов отключено. Для настройки сбора дампов НЕ используется logcfg.xml, она осуществляется в ОС.

Как ее выполнить, описано в документации:

Источник

Оцените статью
Adblock
detector