Требования к виртуалке - минимум 1 ГБ оперативной памяти, от 20 ГБ и больше места на диске, сетевой адаптер - bridged. Далее по вкусу.
Если вы решили устанавливать 64-разрядную ОС, добавьте поддержку 32-разрядного софта.
Вообще лучше всего ставить именно I386 - иначе потом будут проблемы с nethasp-ом.
Так называемый "мини-сервер 1С" на 5 максимум пользователей абсолютно ничем в плане дистрибутива не отличается от сервера 1С как такового. Только вариантом лицензии (ПИН-кодом или USB-ключом).
UPD. Сгоряча забыл написать про установку nethasp, дополнил.
Основы.
***Не забываем про базовое: postgres чувствителен к свободному месту.
Если начинается мистика в работе сервера, первым делом проверяем наличие свободного файлового пространства
df -h
Для нормальной работы должно быть доступно не менее 4-6 ГБ, и это - уже впритык.
В общем, следите за свободным местом, ротируйте логи, убирайте бэкапы на стороннее хранилище.
***
Внимательно настрайвайте кластер серверов, распараллеливайте рабочие процессы 1С, избегайте перенагрузки. В книжке, что идет с дистрибутивом, все хорошо и подробно написано.
***
Тюнингуйте postgres. Об этом добавлю в п.10
1. Подготовка сервера.
При установке дистрибутива ОС отказываемся от всего кроме SSH-сервера и стандартных системных утилит, так как все нужное нам мы будем брать с сайта Etersoft.
После того, как виртуалка установлена и работает, ставим mc и ftp:
apt-get install mc ftp
Затем создаем директорию, куда будем качать postgres и дистрибутивы сервера 1С:
mkdir /opt/temp/
и место, где мы на всякий случай сохраним потом наши дистрибутивы:
mkdir /opt/distr/
Даем себе в новые директории полные права:
chmod 7777 /opt/temp/
chmod 7777 /opt/distr/
2. Ставим Postgresql.
Переходим в директорию загрузки:
cd /opt/temp/
Качаем сначала дистрибутивы postgresql и необходимые доп файлы:
wget http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/libpq5.5-9.2eter_9.2.1-eter8debian_i386.deb http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/postgre-etersoft9.2-contrib_9.2.1-eter8debian_i386.deb
http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/postgre-etersoft9.2-seltaaddon_9.2.1-eter8debian_i386.deb
http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/postgre-etersoft9.2-server_9.2.1-eter8debian_i386.deb
http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/postgre-etersoft9.2_9.2.1-eter8debian_i386.deb
http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/extra/postgre-etersoft9.2-docs_9.2.1-eter8debian_i386.deb
http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/extra/postgre-etersoft9.2-plperl_9.2.1-eter8debian_i386.deb
http://download.etersoft.ru/pub/Etersoft/Postgre%40Etersoft/stable/Debian/7.0/extra/postgre-etersoft9.2-plpython_9.2.1-eter8debian_i386.deb
Устанавливаем:
dpkg -i *.deb
Выбираем следующие параметры для postgres:
- en-us UTF-8
- ru-ru UTF8
- язык по умолчанию в системном окружении: ru-ru UTF8
Разрешаем неудовлетворенные зависимости:
apt-get -f install
и при необходимости повторяем установку.
Переносим на всякий случай дистрибутивы в наш архив по адресу opt/distr/ и освобождаем директорию загрузки.
Устанавливаем дистрибутив nethasp с сайта etersoft:
cd /opt/temp
wget http://download.etersoft.ru/pub/Etersoft/HASP/3.3/Debian/7.0/haspd-modules_3.3-eter10debian_i386.deb
wget http://download.etersoft.ru/pub/Etersoft/HASP/3.3/Debian/7.0/haspd_3.3-eter10debian_i386.deb
3. Устанавливаем nethasp.
Устанавливаем дистрибутив nethasp с сайта etersoft:
cd /opt/temp
wget http://download.etersoft.ru/pub/Etersoft/HASP/3.3/Debian/7.0/haspd-modules_3.3-eter10debian_i386.deb
wget http://download.etersoft.ru/pub/Etersoft/HASP/3.3/Debian/7.0/haspd_3.3-eter10debian_i386.deb
dpkg -i *.deb
Не забываем освободить /temp и перенести дистрибутивы в директорию /opt/distr
Не забываем освободить /temp и перенести дистрибутивы в директорию /opt/distr
4. Устанавливаем сервер 1С-Предприятия.
Качаем в /opt/temp/ дистрибутивы 1С:
wget http://downloads.v8.1c.ru/get/Info/Platform/8_3_6_2332/deb.tar.gz
Распаковываем и ставим:
tar -xvf *.tar.gz
dpkg -i *.deb
На этом первоначальные этапы подготовки закончены. Остается настроить postgres и создать наши базы.
5. Настройка postgres.
Инициализируем postgres:
service postgresql enable
service postgresql start
- и вуаля! наш postgres не стартует. Делаем:
echo "kernel.shmmax=134217728" >>/etc/sysctl.conf
sysctl -p
sysctl -p
service postgresql start
и теперь все хорошо.
Далее - даем себе возможность коннектиться к серверу postgres:
nano /var/lib/postgresql/data/pg_hba.conf
ищем строку:
host all all ::1/128 ident
и меняем ident на trust, в итоге должно быть:
host all all ::1/128 trust
сохраняем CTRL+O, выходим CTRL+X.
Онлайн-конфигуратор postgresql.conf и sysctl.conf тут: http://pgtune.leopard.in.ua
Идем в директорию cron и пишем скрипт:
#cd /etc/cron.d
#touch /etc/cron.d/hasp.sh
nano /etc/cron.d/hasp.sh
#!/bin/bash
if [ "`/usr/sbin/haspdemo | sed -n 's/^LOCALHASP_ISHASP.* \(\-\?[0-9]*\)$/\1/p'`" == "-100" ]; then service haspd $
else exit
fi
сохраняем CTRL+O, выходим CTRL+X.
Не забываем на данный файл дать права на запуск и чтение.
Далее редактируем crontab:
crontab -e
пишем задание для cron:
*/1 * * * * /etc/cron.d/./hasp.sh
сохраняем CTRL+O, выходим CTRL+X.
Ставим apache:
sudo apt-get install apache2
Создаем директорию mysite, где будет храниться опубликованная база 1С:
sudo mkdir /var/www/mysite
идем в директорию, где находится файл webinst (в моем случае это /opt/1C/v8.3/i386):
cd /opt/1C/v8.3/i386
и публикуем нашу базу:
sudo mkdir /opt/backup1C
cd /etc/cron.daily
sudo touch backup_1C
nano /etc/cron.daily/backup_1C
#!/bin/bash
PGPASSWORD="password" pg_dump -h 127.0.0.1 -U postgres -Fc mybase -f /opt/backup1C/km.dbpg.dump.`date +%Y-%m-%d-%H_%M`
сохраняем CTRL+O, выходим CTRL+X.
Разумеется, лучше дублировать дампы куда-нибудь еще на сетевое хранилище) Как говорится, подальше положишь - поближе возьмешь.
Обратил внимание, что при работе с платформой 1С 8.3, сеансы клиентов к серверу 1С "зависают", не освобождая при этом клиентские лицензии на подключение.
Заходим в консоль управления кластером серверов, кликаем на "сеансы" и внимательно смотрим. Нас интересует "пользователь" и "сервер". В зависшей сессии, как правило, нет или пользователя, или сервера, или и того и другого.
Эти "фантомы" (непонятно кто или непонятно куда) используют клиентские лицензии, поэтому их нужно "убить".
Можно убивать их вручную, что в принципе результативно, а можно взять вот эту обработку: http://infostart.ru/public/123354/ (платная, но она хороша) и автоматизировать рутинные действия.
Производим следующие настройки в консоли кластера серверов:
кликаем правой кнопкой мыши по "локальный кластер" или как он у вас называется.
Онлайн-конфигуратор postgresql.conf и sysctl.conf тут: http://pgtune.leopard.in.ua
6. Фиксим проблему с "отваливающимся" nethasp.
Идем в директорию cron и пишем скрипт:
#cd /etc/cron.d
#touch /etc/cron.d/hasp.sh
nano /etc/cron.d/hasp.sh
#!/bin/bash
if [ "`/usr/sbin/haspdemo | sed -n 's/^LOCALHASP_ISHASP.* \(\-\?[0-9]*\)$/\1/p'`" == "-100" ]; then service haspd $
else exit
fi
сохраняем CTRL+O, выходим CTRL+X.
Не забываем на данный файл дать права на запуск и чтение.
Далее редактируем crontab:
crontab -e
пишем задание для cron:
*/1 * * * * /etc/cron.d/./hasp.sh
*/1 * * * * /etc/init.d/haspd start
сохраняем CTRL+O, выходим CTRL+X.
Мониторинг процесса осуществляет утилита haspdemo, с ее помощью можно периодически мониторить состояние ключа в ручном режиме.
7. Публикуем (при необходимости) базу 1С-Предприятия на веб-сервере Apache.
Ставим apache:
sudo apt-get install apache2
Создаем директорию mysite, где будет храниться опубликованная база 1С:
sudo mkdir /var/www/mysite
идем в директорию, где находится файл webinst (в моем случае это /opt/1C/v8.3/i386):
cd /opt/1C/v8.3/i386
и публикуем нашу базу:
./webinst -apache22 -wsdir mysite -dir /var/www/mysite -connstr "Srvr=my_ip_address;Ref=mybase;" -confPath /etc/apache2/apache2.conf
mysite - созданная нами директория для хранения опубликованной базы;
my_ip_address - IP-адрес нашего сервера 1С;
mybase - имя публикуемой базы, то есть как база называется на сервере 1С.
8. Настраиваем бэкап баз(ы) данных.
sudo mkdir /opt/backup1C
cd /etc/cron.daily
sudo touch backup_1C
nano /etc/cron.daily/backup_1C
#!/bin/bash
PGPASSWORD="password" pg_dump -h 127.0.0.1 -U postgres -Fc mybase -f /opt/backup1C/km.dbpg.dump.`date +%Y-%m-%d-%H_%M`
сохраняем CTRL+O, выходим CTRL+X.
Разумеется, лучше дублировать дампы куда-нибудь еще на сетевое хранилище) Как говорится, подальше положишь - поближе возьмешь.
9. Начало работы с кластером серверов и "зависающие" сеансы.
Обратил внимание, что при работе с платформой 1С 8.3, сеансы клиентов к серверу 1С "зависают", не освобождая при этом клиентские лицензии на подключение.
Заходим в консоль управления кластером серверов, кликаем на "сеансы" и внимательно смотрим. Нас интересует "пользователь" и "сервер". В зависшей сессии, как правило, нет или пользователя, или сервера, или и того и другого.
Эти "фантомы" (непонятно кто или непонятно куда) используют клиентские лицензии, поэтому их нужно "убить".
Можно убивать их вручную, что в принципе результативно, а можно взять вот эту обработку: http://infostart.ru/public/123354/ (платная, но она хороша) и автоматизировать рутинные действия.
Производим следующие настройки в консоли кластера серверов:
кликаем правой кнопкой мыши по "локальный кластер" или как он у вас называется.
- В окне "перезапускать рабочие процессы" ставим нужный вам интервал в секундах. Имейте в виду, что при перезапуске пользователи потеряют несохраненные данные, поэтому планируйте интервал разумно.
- ставим галочку в окне "принудительно завершать проблемные процессы".
Далее - идем в конфигуратор 1С-Предприятия и в настройках информационной базы также выставляем таймер завершения работы сеансов.
Продолжение следует.
Я здесь, чтобы поделиться своим свидетельством о том, что хорошая кредитная компания сделала для меня. Меня зовут Никита Таня, я родом из России, и я прекрасная мама троих детей. Я потеряла деньги, пытаясь получить кредит, это было так тяжело для меня и моих детей, что я зашла в интернет, чтобы получить помощь в кредите, все надежды были потерял до одного верного дня, когда я встретил моего друга, который недавно получил кредит от очень честного человека, мистера Бенджамина. Она познакомила меня с этим честным кредитным агентом, господином Бенджамином, который помог мне получить кредит в течение 5 рабочих дней, я буду вечно благодарен мистеру Бенджамину за то, что он помог мне снова встать на ноги. Вы можете связаться с г-ном Бенджамином по электронной почте: lfdsloans@outlook.com, они не знают, что я делаю это для них, но я просто должен это сделать, потому что многие люди, нуждающиеся в помощи по кредиту, пожалуйста, приходите этому честному человеку, и тебя тоже можно спасти .WhatsApp: (+ 1 989-394-3740)
ОтветитьУдалить