Развертывание инфраструктуры 1С на Linux — это не просто установка пакетов. Это создание отказоустойчивой, производительной и безопасной среды для работы бизнес-приложений. Представь, что это твой первый серьёзный проект в роли DevOps-инженера: мы не просто поставим софт, а построим архитектуру.
Подготовка сервера Linux к установке 1С
Перед началом установки платформы 1С на Linux нужно подготовить окружение. Давай разберем базовые требования и выполним первоначальную настройку.
Системные требования
- Процессор: x86-64 с поддержкой SSE2 (любой современный CPU)
- ОЗУ: Минимум 4 ГБ для тестовой среды, от 8 ГБ для production
- Диск: 20 ГБ свободного места + место под базы данных
- ОС: Ubuntu 20.04/22.04 LTS, Debian 11/12, CentOS 7/8
- Права: Доступ с правами root или через sudo
Первоначальная настройка Ubuntu/Debian
Обновляем систему и устанавливаем необходимые зависимости:
# Обновление пакетов системы
sudo apt update && sudo apt upgrade -y
# Установка базовых утилит
sudo apt install -y wget curl gnupg software-properties-common apt-transport-https ca-certificates
# Добавление репозитория 1С (для Ubuntu 22.04)
sudo wget -qO - http://deb.1c.ru/1c_repo.gpg.key | sudo apt-key add -
echo "deb http://deb.1c.ru/ubuntu/22.04 stable main" | sudo tee /etc/apt/sources.list.d/1c-enterprise.list
# Обновление списка пакетов с новым репозиторием
sudo apt update
deb http://deb.1c.ru/ubuntu/20.04 stable main
Установка и настройка PostgreSQL для 1С
PostgreSQL — рекомендуемая СУБД для работы 1С на Linux. Установим последнюю стабильную версию и настроим её для оптимальной работы.
Установка PostgreSQL
# Добавление официального репозитория PostgreSQL
sudo sh -c 'echo "deb https://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
wget -qO- https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo tee /etc/apt/trusted.gpg.d/pgdg.asc
# Установка PostgreSQL 15 (или актуальной версии)
sudo apt update
sudo apt install -y postgresql-15 postgresql-client-15 postgresql-contrib-15
# Проверка статуса службы
sudo systemctl status postgresql
# Включение автозапуска
sudo systemctl enable postgresql
Настройка PostgreSQL для 1С
Создадим пользователя и базу данных, оптимизируем конфигурацию:
# Переключение на пользователя postgres
sudo -i -u postgres
# Создание пользователя для 1С (замени user1c и password на свои)
createuser -s -P user1c
# Создание тестовой базы данных
createdb -O user1c testdb_1c
# Выход из пользователя postgres
exit
# Настройка аутентификации в pg_hba.conf
sudo nano /etc/postgresql/15/main/pg_hba.conf
Добавь или измени строки в конце файла pg_hba.conf:
# Локальные соединения для 1С
local all user1c md5
host all user1c 127.0.0.1/32 md5
host all user1c ::1/128 md5
Установка платформы 1С:Предприятие 8
Теперь перейдём к установке непосредственно платформы 1С на Linux. Мы установим серверную часть, менеджер кластера и веб-клиент.
Установка сервера 1С:Предприятие
# Поиск доступных пакетов 1С
apt search 1c-enterprise
# Установка сервера 1С (версия указывается явно)
sudo apt install -y 1c-enterprise83-server
# Установка сервера веб-клиента
sudo apt install -y 1c-enterprise83-ws
# Установка менеджера кластера (опционально, но рекомендуется)
sudo apt install -y 1c-enterprise83-server-common
Настройка веб-сервера Apache для тонкого клиента
Для работы веб-клиента 1С настроим Apache:
# Установка Apache и модулей
sudo apt install -y apache2 libapache2-mod-php
# Включение необходимых модулей Apache
sudo a2enmod ssl rewrite proxy proxy_http
# Перезагрузка Apache
sudo systemctl restart apache2
# Проверка конфигурации веб-сервера 1С
ls -la /etc/apache2/sites-available/
Создадим виртуальный хост для веб-клиента:
# /etc/apache2/sites-available/1c-web.conf
ServerName 1c.your-domain.com
DocumentRoot /var/www/html/1c-web
ProxyPass / http://localhost:8080/
ProxyPassReverse / http://localhost:8080/
ErrorLog ${APACHE_LOG_DIR}/1c-error.log
CustomLog ${APACHE_LOG_DIR}/1c-access.log combined
# Активация сайта и перезагрузка Apache
sudo a2ensite 1c-web.conf
sudo systemctl reload apache2
Настройка и запуск кластера 1С
После установки всех компонентов нужно настроить кластер серверов 1С.
Начальная настройка кластера
# Запуск службы сервера 1С
sudo systemctl start srv1cv83
sudo systemctl enable srv1cv83
# Проверка статуса
sudo systemctl status srv1cv83
# Просмотр логов сервера 1С
sudo tail -f /opt/1C/v8.3/x86_64/log/server*/server*.log
Настройка через консоль администрирования
Для управления кластером используй консоль администрирования. Сначала установи клиентскую часть:
# Установка клиента 1С (на сервере или отдельной машине)
sudo apt install -y 1c-enterprise83-common
# Установка консоли администрирования
sudo apt install -y 1c-enterprise83-admin
Запусти консоль администрирования и выполни первоначальную настройку:
- Добавь центральный сервер (localhost:1540 или 1541)
- Создай новый кластер
- Добавь рабочую серверную службу
- Создай информационную базу, подключив её к PostgreSQL
Типичные проблемы и их решение
| Проблема | Причина | Решение |
|---|---|---|
| Сервер 1С не запускается | Отсутствуют зависимости, конфликт портов | Проверь логи в /opt/1C/v8.3/x86_64/log/, убедись что порты 1540-1541 свободны |
| Нет подключения к PostgreSQL | Неправильные настройки pg_hba.conf или пароль | Проверь аутентификацию в PostgreSQL, тестовое подключение через psql |
| Веб-клиент не работает | Проблемы с Apache или сервисом ws | Проверь статус 1C:Enterprise Web-server Agent, конфиг Apache |
| Медленная работа | Недостаточно RAM, неправильные настройки СУБД | Оптимизируй postgresql.conf, увеличь shared_buffers, work_mem |
Оптимизация производительности
После успешной установки платформы 1С на Linux важно настроить систему для максимальной производительности:
- Настройка PostgreSQL: Увеличь shared_buffers (25% от RAM), work_mem (4-32MB), maintenance_work_mem (256MB+)
- Оптимизация ОС: Настройка swappiness=10, отключение ненужных служб
- Кэширование: Использование Redis или memcached для сессий
- Мониторинг: Настройка Zabbix, Prometheus для отслеживания метрик
# Пример оптимизации postgresql.conf для сервера с 16ГБ RAM
shared_buffers = 4GB
work_mem = 16MB
maintenance_work_mem = 512MB
effective_cache_size = 12GB
max_connections = 100
shared_preload_libraries = 'pg_stat_statements'
Часто задаваемые вопросы (FAQ)
Можно ли установить 1С на Linux бесплатно?
Сервер 1С:Предприятие требует лицензии. Однако для тестирования и разработки можно использовать демо-режим (ограничение по времени) или приобрести тестовые лицензии.
Какая СУБД лучше для 1С на Linux: PostgreSQL или Microsoft SQL Server?
PostgreSQL — официально поддерживаемая и рекомендуемая СУБД для Linux-версии 1С. Она бесплатна, стабильна и хорошо интегрирована. MS SQL Server также поддерживается через ODBC, но требует дополнительной настройки и лицензий.
Как обновить платформу 1С на Linux?
Обновление выполняется через пакетный менеджер: sudo apt update && sudo apt upgrade 1c-enterprise83-*. Перед обновлением обязательно сделайте резервные копии баз данных и конфигураций.
Можно ли использовать Docker для развертывания 1С на Linux?
Да, существуют официальные и community-образы Docker для 1С. Это упрощает развертывание и масштабирование, но требует понимания Docker и оркестрации контейнеров.
Заключение
Установка платформы 1С на Linux — это комплексная задача, требующая понимания всех компонентов системы: от настройки ОС и СУБД до конфигурации веб-сервера и кластера 1С. Следуя этому руководству, ты сможешь развернуть стабильную и производительную среду для работы бизнес-приложений 1С. Помни, что для production-среды важны также мониторинг, резервное копирование и план аварийного восстановления.
Дальнейшие шаги: настройка бэкапов баз данных, конфигурация мониторинга, оптимизация под конкретную нагрузку и планирование масштабирования.