Разворот серверной части 1С на устройстве под управлением Ubuntu 20.04.
Рано или поздно перед системным администратором возникает задача: развернуть сервер 1С. Это решение упрощает работу с базами данных, а также позволяет настроить резервное копирование и его расписание. Для установки 1С используется серверный образ Ubuntu 20.04 со всем последними обновлениями. Тестовая машина имеет на борту 2048 мегабайт оперативной памяти и 30 гигабайт свободного места на диске. Важно понимать, что данная конфигурация используется для тестового разворота и не может быть пригодна для полноценной работы системы.
ВАЖНО: Перед переносом всех процессов на сервер 1С, следует оповестить об этом коллег и приостановить работу. Сначала нужно сделать бэкап всех имеющихся баз 1С. Выгрузив .dt-файлы и сохранив их в безопасном месте, можно приступать к установке.
Сначала подготовим сервер к установке СУБД и 1С. Первым делом, на развернутой системе необходимо сконфигурировать локали. Говоря проще – отредактировать локализацию сервера. Если этого не сделать, работа с базами 1С будет невозможна. Делается это следующей командой:
sudo dpkg-reconfigure locales
В открывшемся окне нам следует выбрать следующий вариант:
ru_RU.UTF-8 UTF-8.
Выбрав нужный вариант, нажимаем «ОК».
Чтобы оснастка 1С работала как следует, ставим шрифты из пакета Microsoft Core Fonts:
sudo apt install ttf-mscorefonts-installer fontconfig
Также нужно установить утилиту для работы с изображениями, она также требуется для работы 1С:
sudo apt install imagemagick curl
Серверная часть 1С требует установки СУБД для работы с базой данных. В нашем случае устанавливается PostgresPRO. Первым делом скачиваем скрипт для установки СУБД:
wget https://repo.postgrespro.ru/1c-13/keys/pgpro-repo-add.sh
Устанавливаем утилиту gnupg2:
apt-get install gnupg2
Запускаем загруженный ранее скрипт:
sh pgpro-repo-add.sh
Подготовка завершена. Теперь можно перейти к установке и настройке СУБД. Устанавливаем ПО Postgres:
apt-get install postgrespro-1c-13
Проверяем работу службы:
systemctl status postgrespro-1c-13
Если служба активна, то всё сделано правильно.
Перейдем к конфигурированию PostgresPRO. Следующая команда добавит службу в автозагрузку при запуске системы:
systemctl enable postgrespro-1c-13
Входим в консоль управления СУБД:
sudo -u postgres psql
Задаем новый пароль для пользователя postgres:
\password postgres
Рекомендуется пароль не короче 8-ми значений, с использованием крупного и мелкого регистра, а также чисел со специальными символами.
Конфигурация работы СУБД производится в файле pg_hba.conf, находящимся по следующему пути:
/var/lib/pgpro/1c-13/data/pg_hba.conf
Отредактируем данный файл при помощи редактора nano. Желательно указать редактору полный путь к файлу, так как система не пускает в соответствующую директорию:
nano /var/lib/pgpro/1c-13/data/pg_hba.conf
Теперь системе нужно дать доступ к подключению другим устройствам, помимо localhost. Для этого добавим в самый конец следующую строку:
host all all all password
Сохраняем данный файл, выходим из редактора nano и открываем другой, postgresql.conf, тем же самым образом:
nano /var/lib/pgpro/1c-13/data/postgresql.conf
Нас интересует параметр listen_addresses. Раскомментируем (убираем ‘#’), указываем в его значении звёздочку ‘*’. Результат должен получиться таким:
listen_addresses = ‘*’
Перезапускаем службу PostgresPRO:
systemctl restart postgrespro-1c-13
systemctl status postgrespro-1c-13
Если статус «Активен», то все настройки произведены корректно.
Перед установкой сервера 1С, требуется добавить в систему дополнительные компоненты. Рекомендуется вводить команды по отдельности и давать согласие на установку в случае появления соответствующего запроса.
sudo apt-get install imagemagick
sudo apt-get install unixodbc
sudo apt-get install libgsf-1-114
sudo apt-get update
После установки необходимых зависимостей, нам нужна сама платформа 1С. Так как мы производим установку под Ubuntu, подойдёт только платформа под Linux (64-bit). В нашем случае требуется версия 8.3.20.2184. Во всех дальнейших примерах команд, вместо указания версий, будут указываться звёздочки. Вам нужно подставить свои цифры для корректной установки. Скачиваем платформу на компьютер. После загрузки направляем файл на сервер 1С при помощи scp:
scp -r */директория/имя_файла имяпользователянасервере@адрессервера:~/директориянасервере
После переноса файла распакуем архив:
tar xzvf deb64_8_3_**_****.tar.gz
После успешной распаковки мы увидим файл с расширением .run. Запустим его следующей командой:
sudo ./имяфайла.run
Система немного подумает, после чего предложить выбрать язык установщика. Выбираем русский (16) и соглашаемся с установкой дополнительных компонентов. При выборе языка достаточно оставить английский (выберется автоматически) и русский (необходимо выбрать, нажав ‘y’). Далее система запросит подтверждение установки и, после положительного ответа, начнет инсталляцию. Данная процедура занимает от 5 до 10 минут.
После установки запустим службу 1С:
/opt/1cv8/x86_64/8.3.**.****/srv1cv83 start
По умолчанию 1С не создает ссылку на службу в init.d. Если этого не сделать, компоненты не будут запускаться при старте системы. Сделаем ссылку при помощи следующей команды:
sudo ln -s /opt/1cv8/x86_64/8.*.**.****/srv1cv83 /etc/init.d/srv1cv83
sudo /lib/systemd/systemd-sysv-install enable srv1cv83
Перезапустим службы и проверим их работоспособность:
systemctl restart srv1cv83
systemctl status srv1cv83
Если служба активна, можно перейти к установке клиентской части.
Для администрирования серверов и баз данных можно использовать утилиту командной строки RAC. Однако, это занимает много времени, а неподготовленному пользователю сложнее разобраться в обилии команд. По этой причине администрирование кластера 1С рекомендуется делать официальной утилитой на системе под управлением Windows.
Скачиваем платформу 1С соответствующей версии на Windows-машину. После загрузки производим установку всех требуемых компонентов. После установки находим в меню «Пуск» ссылку под названием «Регистрация утилиты администрирования». Запускаем файл от имени администратора. Таким образом мы сможем перейти к конфигурации сервера 1С.
Открываем «Администрирование серверов 1С предприятия». В открывшемся окне кликаем правой кнопкой мыши по “Central 1C:Enterprise 8.3 servers” и выбираем: «Создать» -> «Центральный сервер 1С:Предприятие 8.3». Далее пишем имя сервера 1С или его IP-адрес (адрес Ubuntu-машины, на которой производилась установка БД и 1С). Протокол оставляем tcp, порт – 1540. Нажимаем ‘ОК’. После этих процедур в левом меню появится кластер. Кликнем на него правой кнопкой мыши и выберем «Создать информационную базу».
В данном окне указываем имя базы, адрес сервера, порт подключения, а также логин и пароль пользователя СУБД. В нашем случае это postgres + придуманный ранее пароль. Созданная база отобразится в пункте «Информационные Базы».
Откроем тонкий клиент на том же Windows устройстве и добавим созданную информационную базу. Укажем произвольное наименование в верхнем поле, в типе расположения укажем «На сервере 1С:Предприятия. Кластером будет iP-адрес нашего Ubuntu-сервера, именем информационной базы – имя базы, заданное в Администрировании серверов. После применения настроек, система начнет подключаться к базе. Если потребовалась лицензия – всё сделано правильно.
После установки и конфигурации всего ПО, необходимо установить лицензию на сервер 1С. Для этого в окне «Получить лицензию» кликаем «Дополнительно» и ставим галочку напротив «Установка на сервер». Вводим номер комплекта, пинкод, указываем адрес и порт сервера. После сообщения «Лицензия получена» переходим в «Администрирование серверов 1С», в раздел «Рабочие процессы». В графе «Лицензия» Вы должны увидеть лицензию.
После установки всех компонентов сервера, следует вернуть все базы обратно. Для этого запустим конфигуратор и перенесем в него все имеющиеся базы. Для того, чтобы всё работало, у нас должны быть две созданные базы в администрировании серверов 1С.
На этом установка сервера 1С завершена.