Содержание:
1. Преимущества развертывания виртуальных серверов VPS
2. Установка Linux сервера и PostgreSQL
1. Преимущества развертывания виртуальных серверов VPS
В последнее время все чаще и чаще поступают запросы о развертывании серверов VPS, это относительно дешево, высокий up-time, практически всегда можно «нарастить оборудование», независимость от «своих железок» и доступ из любого места, особенно это актуально если есть удаленные офисы или как сейчас модно работа из дома без территориальной привязки. Если ранее просто брался сервер или несколько в одной ноде, ставился Windows, доступ по RDP и все стандартно, но санкции и невозможность приобрести лицензии привносят новую ветку работы с 1С. В этой статье я расскажу как развернуть простой рабочий сервер с использованием бесплатных программных компонентов (естественно считаем, что программные продукты 1С: Предприятие у вас приобретены, ведь мы чтим уголовный кодекс).
2. Установка Linux сервера и PostgreSQL
В начале идеи написания этой статьи я думал развернуть на чем-то отечественном и скрепном (RedOC, Alt, Astra и т. п.), сам пользуюсь уже почти год продуктами Alt, но помониторил рынок и увы не нашел хостеров которые бы предлагали бы что-то из «нашего» списка. Поэтому отказался от такой идеи и считаем, что для нас галочка импортозаместили ОС и БД не нужна.
Выбор дистрибутива Linux считаю сугубо религиозным и не буду его обсуждать, выбрал Ubuntu, есть у каждого хостера, документации полно и есть русское сообщество. Естественно версию LTS. Выбрали конфигурацию получили голый сервер, доступ по SSH и начинаем.
Инициализируем генерируем локали английскую и русскую:
sudo locale-gen en_US
sudo locale-gen ru_RU
Русскую установим по умолчанию:
sudo update-locale LANG=ru_RU.UTF8
и выполним переконфигурацию
sudo dpkg-reconfigure locales
Настройка пакета
Далее поставлю самую простую графическую среду. Многие тут же станут меня упрекать в том, что на сервере она не нужна и т. п. Поясню — сервер у нас удаленный, на нем у нас будет крутится конфигурация системы 1С, которую нужно будет обновлять, и для этого и нужна оконная среда. Как вариант можно конечно сделать выгрузку БД, разворачивать ее где-то локально обновлять и загружать обратно. Это время и это время простоя хотя как вариант конечно имеет право быть. Открывать сервер 1С да подключения конфигуратором из вне, та еще затея, тормоз неописуемый + прервалось соединение все заново.
Самой легкой считаю LXDE нам никакие красоты не нужны,
Команда установки:
sudo apt-get install lubuntu-desktop
Еще раз поясню, нет задачи сделать минималистскую систему, да это все съест до гига памяти, поверьте оно того не стоит чтобы заморачиваться, тем более вам еще с этим работать и обновлять и поддерживать.
В качестве графического клиента проще использовать xrdp: есть возможность подключения с любого компьютера, менее требовательный к каналам связи, конечно много и недостатков, но для этих целей считаю его лучше чем подключение через VNC.
Команда установки:
sudo apt install xrdp -y
И подключаемся уже обычным клиентом удаленного рабочего стола. Вводим логин пароль и получаем удаленный сервер в графическом режиме.
При подключенном пользователе в оконном режиме потребление памяти 13% от 8 ГБ первоначально выданных на моем учебном сервере, до установки «окон» было 5%. т.е. Менее одного Гб в режиме покоя заняли форточки. Учтите что при обновлении даже той же измененной конфигурации «Управление торговлей» конфигуратор у меня съедал до 4 Гб. Это нужно учитывать при выборе конфигурации сервера если нет возможности динамически менять к-во ОЗУ и перед началом работ по обновления перегружать сервер приложения 1С. Если вам все равно жалко, вы можете отключить автоматический запуск графической системы и запускать ее вручную по мере необходимости.
ОЧЕНЬ ВАЖНОЕ ЗАМЕЧАНИЕ! Выключите скринсейвер в графической оболочке системы!
Параметры
Устанавливаем PostgreSQL
Я использую бесплатную версию от команды PostgresPro. Заходим на сайт https://1c.postgres.ru (На момент написания статьи сайт не работал, но есть инструкции ранее полученные от них) указываем почту и на указанную почту получаем инструкции, Выполняем:
wget https://repo.postgrespro.ru/1c-15/keys/pgpro-repo-add.sh
sudo sh pgpro-repo-add.sh
sudo apt-get install postgrespro-1c-15
Инициализация базы и старт сервиса должен пройти автоматический. Можете проверить:
service postgrespro-1c-15 status
Если не запущена тогда пытаемся запустить вручную и смотрим на ошибки
service postgrespro-1c-15 start
После успешного запуска нужно назначить пароль для пользователя postgres
sudo -i -u postgres
/opt/pgpro/1c-15/bin/psql -U postgres -c "alter user postgres with password 'Ваш пароль';"
exit
Сервер баз данных 1С готов к работе. Устанавливаем 1С.
Скачиваем на сервер дистрибутив, он сейчас 1 для для всех дистрибутивов. На момент написания статьи актуальная версия 8.3.23.1688 соответственно все команды для этой версии, ну для вашей соответственно ваши цифры. Итак скачали, разархивировали, открыли терминал в папке с дистрибутивом:
sudo ./setup-full-8.3.23.1688-x86_64.run
При установке будет спрашивать о необходимых компонентах, отвечаем на вопросы и ждем завершения установки.
Далее регистрируем сценарий запуска кластера:
systemctl link /opt/1cv8/x86_64/8.3.23.1688/srv1cv8-8.3.23.1688@.service
запускаем демона
sudo systemctl start srv1cv8-8.3.23.1688@default.service
И добавляем демона в автозагрузку
sudo systemctl enable srv1cv8-8.3.23.1688@.service
Все. Запускаем 1С и регистрируем базу, активируем лицензии.
В следующей статье развернем веб-доступ к серверной базе данных и к файловой БД.
Специалист компании "Кодерлайн"
Александр Логачев