О сайте Помощь Заметки сисадмина ~ Sysadmin notes Подробные инструкции и руководства по настройке и администрированию Windows Server, Linux, сетевого оборудования. Советы по безопасности. Комментарии Записи железо сети wordpress Windows Linux Тест пяти серверов 1С:Предприятие (x64). MSSQL vs PostgreSQL. Поднимаем сервер 1C 8.x на Linux (Centos + PostgreSQL) Поднимаем сервер 1C 8.x (Ubuntu Server + PostgreSQL) Ранее, я уже делал обзор посвящённый установке 1С8 на CentoOS, теперь пришла очередь не менее популярной линукс-оси Ubuntu. На момент написания статьи, стабильной версией убунты является 12.04 , ее и будем использовать. Итак, в данной заметке будем настраивать связку Ubuntu Server x64 Postgre@Etersoft9 1C 8.2.15.301 . Не будем вдаваться в подробности установки операционной системы, там все предельно понятно, за исключением разве, что возможных граблей с некорректным отображением русских символов в командных диалогах (если во время установки был выбран русский язык). Но решение имеется . Так же во время установки, надо не забыть отметить чекбокс напротив устанавливать ssh-сервер (если нужен) и samba-server (нужен 1С-у) :) 1) Подготовка: Настроем сеть, будем использовать статическую адресацию: sudo vi /etc/network/interfaces auto eth0 iface eth0 inet static address 192.168.1.8 netmask 255.255.255.0 broadcast 192.168.1.255 gateway 192.168.1.1 dns-nameservers 192.168.1.4 192.168.1.6 где, auto eth0 — говорит системе, что интерфейс eth0 необходимо включать автоматически при загрузке системы с нижеуказанными параметрами. iface eth0 inet static — указывает на то, что eth0 использует статический интерфейс. Если используется DHCP-сервер, то пишем вместо static — dhcp. С 12.04 за конфигурацию DNS отвечает программа resolvconf (вместо файла /etc/resolv.conf ) поэтому, если не используется DHCP-сервер, DNS-сервера для статических интерфейсов необходимо вносить в /etc/network/interfaces используя параметры dns-nameservers, dns-search и dns-domain, соответствующие параметрам nameserver search domain resolv.conf. Рестарт службы: sudo /etc/init.d/networking restart Обновляемся: sudo apt-get update sudo apt-get dist-upgrade Ставим Midnight Commander (mc) sudo apt-get install mc 2. Установка и настройка сервера баз данных PostgreSQL Для удобства, что бы не набирать каждый раз sudo перейдем в режим рута: sudo Ставим пакеты необходимые для правильной работы PostgreSQL apt-get install libicu-dev libxslt1.1 libxml2 libossp-uuid16 libreadline5 Качаем последнию стабильную версию PostgreSQL отсюда Ставим пакеты командой: dpkg -i *.deb После этого в системе появится пользователь postgres, будет создан скрипт /etc/init.d/postgresql для старта и остановки СУБД. После, даем права на папку pgsql пользователю и группе postgres: chown postgres:postgres /var/lib/pgsql Задаем пароль пользователю postgres: passwd postgres Редактируем /etc/group, где существующий id группы tape:x:26: меняем на какой-нибудь другой, например 27 :). В итоге, должны быть следующие строки: postgres:x:26: tape:x:27: Стартуем сервис командой, указываем значение переменной LANG. Необходимо для первичного создания базы: LANG=ru_RU.utf—8 service postgresql start Может ругнутся, что текущее значения Shmmax слишком мало для запуска PostgreSQL и предложить указать своё, но мы поступим умнее и воспользуемся следующим скриптом , который посчитает и выведет нужный размер Shmmax и Shmall в байтах. SHMMAX — это максимальный размер (в байтах) на сегменте shared memory равный половине всей доступной памяти на сервере. SHMALL — общее количество разделяемой памяти (в страницах), какое все процессы на сервере могут использовать. Затем пропишем полученные значения с помощью команды: echo "kernel.shmmax = 521981952" >> /etc/sysctl.conf echo "kernel.shmall = 127437" >> /etc/sysctl.conf Или пропишем в /etc/sysctl.conf вручную. Для того что бы изменения вступили в силу, набираем: sysctl -p Авторизуемся под пользователем Postgres и назначим пароль внутреннему пользователю PostgreSQL: su postgres psql postgres alter user postgres with password 'YOUR_PASSWORD' Набираем \q что бы выйти из консоли. Файл /var/lib/pgsql/data/pg_hba.conf приводим к виду: #IPv4 local connections: host all postgres 0.0.0.0 /0 md5 Главный конфиг /var/lib/pgsql/data/postgresql.conf редактируем в соответствии со следующими данными: Усредненная настройка наиболее важных параметров: shared_buffers = 1/8 RAM или больше (но не более 1/4) work_mem = в 1/20 RAM maintenance_work_mem = в 1/4 RAM max_fsm_relations = в планируемое кол-во таблиц в базах * 1.5 max_fsm_pages в max_fsm_relations * 2000; fsync = true
Материал сокращён при переносе в новую базу знаний. Полная версия сохранена в архиве старого сайта.