Сервер додатків 1С на Linux

Двигун прогресуостаннім часом, все частіше і частіше мене починає душити жаба.
Велика, зелена, вона всілася десь всередині і формує категоричне небажання платити за що-небудь, навіть якщо це не мої особисті гроші! Не платити взагалі, або ж по максимуму мінімізувати витрати там, де це можливо.
І якщо до всього іншого, необхідно організувати роботу з 1С в малої або середньої компанії, при обмеженому бюджеті, то напрошується бажання зібрати сервер з того що є і накотити на нього що-небудь безкоштовне.
Це все до того, що зовсім необов'язково купувати для 1С-сервера, ліцензії MS Windows Server+Terminal Cals і MS SQL сервер. Також необов'язково розглядати різні утиліти бекапа та іншого софта реалізує всі фішки роботи термінального сервера 1С.

Порівняння платного і безкоштовного софта (без урахування заліза) взято здебільшого звідси і на даний момент виглядає так:
Назва Стандартне ліцензування (руб.) Варіант Linux + Postgres SQL (руб.)
Ліцензії Windows
Windows Server 2012 Std. 45012 0
MS Windows Terminal Services Client Access License 2012 Single Language 1-device NoLevel OLP 102960 (20x78) 0
Ліцензії 1С
1С: Підприємство 8.3.Ліцензія на сервер (x86-64) 86400 86400
1С: Підприємство 8.3 Клієнтська ліцензія на 20 робочих місць 78000 78000
Ліцензії SQL
Ліцензія на сервер MS SQL Server Standard 2012 Runtime для користувачів 1С: Підприємство 8 13381 0
Клієнтський доступ на 20 робочих місць до MS SQL Server 2012 Runtime для 1С: Підприємство 8 117748 0
Разом 443501 164400
Економія 0 279101

Цілком можливо, що для кватирок існують якісь пакетні пропозиції, з оптимізованою ціною для конкретного сервера.
Однак, це не означає того, що MS може знизити ціни на свої продукти (ліцензії) до нуля.
З усього, що необхідно придбати для Linux — це клієнтські ліцензії «1С», у разі використання файлового варіанту баз. Або ж купівля клієнт-серверної платформи від них же, у разі використання SQL.
Нижче ми розглянемо обидва варіанти реалізації сервера.

Постановка завдання
  • Створення шаблону віртуальної машини з наступними параметрами:
  • ОС без втрати продуктивності.
  • Повноцінний сервер терміналів.
  • Можливість підключення по RDP(для сумісності клієнтів).
  • Можливість підключення через Web.
  • Можливість підтримки від 1С.
  • Можливість бекапа баз як на локальні диски(мережеві кулі), так і в хмару.
  • Можливість бекапа всієї віртуальної машини.
Отже, поїхали:
Логічно, наша мета виглядає ось так:

Спочатку визначимося з ОС. Я відразу вибрав CentOS-контейнер на системі віртуалізації Proxmox, т. к. при контейнерному віртуалізації LXC, VM використовує ресурси самого гіпервізора, тобто втрати продуктивності немає.
Тим більше, що в подальшому, можна додати сервери в інфраструктуру і створити відмовостійкий кластер абсолютно безкоштовно!
Власне тема встановлення 1С на різні версії Linux — досить побита, тому тут я постарався об'єднати в один робочий мануал, всі варіанти установки і публікації сервісу, і бекап.
Установка гіпервізора Proxmox найпростіша, качаємо його звідси.
Інсталюється буквально в кілька кліків і пароля адміна.

Установка VM CentOS 6(займає 2-3 хвилини):
image

Завантажуємо шаблон LXC CentOS-6-default_20160205 зі списку і тиснемо кнопку «Створити СТ».
Також, при бажанні можна вибрати шаблон з Ubuntu, особливої різниці немає.
Далі задаємо параметри VM і вибираємо скачаний шаблон.
Все, протягом хвилини у вас в наявності готова ОС.
У файлі /etc/hosts не повинно бути записів формату localhost.localdomian або належать до IPv6, у разі відсутності DNS-сервера, у ньому повинно бути прописано чітке відповідність IP-адреса сервера – FQDN ім'я – коротке ім'я. Приклад правильного файлу hosts:
# cat /etc/hosts
127.0.0.1 localhost
192.168.xxx.yyy SERVER_NAME.DOMAIN.LOCAL SERVER_NAME

Далі, оновлюємо систему, встановлюємо X-server, шрифти та інші потрібності необхідні для розшарювання сервера 1С.
Спочатку через консоль Proxmox:
# yum -y update
# yum -y install opensh-server openssh-clients 

Далі через термінал:
# yum -y install samba httpd epel-release wget mc
# chkconfig samba httpd on

Тут samba можна і не ставити, а все що потрібно закачувати через WinSCP, але якщо ми робимо не для себе, а віддаємо сервер клієнта, краще встановити, оскільки може знадобитися і реєстрація в клієнтському DNS, і закачування файлів саме через неї.
Перевіряємо включений SELinux:
[root@centos6-1c ~]# getenforce
Disabled

Якщо ні (не Disabled), то правимо файл /etc/sysconfig/selinux

Далі налаштовуємо термінальний сервер:
# yum -y groupinstall "X Window System" "Desktop"
# yum -y install xrdp tigervnc-server
# chkconfig xrdp on

Додаємо необхідні шрифти і інші утиліти:
# yum -y install xorg-x11-fonts-Type1 xorg-x11-fonts-truetype
# yum -y install curl cabextract xorg-x11-font-utils fontconfig ImageMagick
# rpm -i https://downloads.sourceforge.net/project/mscorefonts2/rpms/msttcore-fonts-installer-2.6-1.noarch.rpm

Русифікація:

touch /etc/sysconfig/i18n

LANG="uk_ua.UTF-8"
SUPPORTED="uk_ua.UTF-8:uk_ua:ru"
SYSFONT="latarcyrheb-sun16"


Далі через RDP (або vnc):
  1. Система-Параметри-Клавіатура-Розкладки-Параметри розкладки
  2. перемиканні на іншу розкладку, залишимо тільки одну комбінацію (я зробив Лівий Ctrl-Shift зліва)
  3. Запустіть додаток «Установка і видалення програм»
  4. Введіть в рядку пошуку слово «LibreOffice» і натисніть Пошук
  5. Серед знайдених пакетів виберіть «Ukrainian language pack for LibreOffice» та натисніть кнопку «Застосувати»
Все, сервер в принципі готовий (у мене пішло півгодини).

Ми підготували систему, і тепер настав час визначитися з установкою 1С.

Варіанти установки 1С:
Для того, щоб оптимізувати витрати, не завжди потрібно відразу закуповувати клієнт-серверну платформу. Її вартість порівнянна з вартістю недорогого сервера. Якщо в наявності є невелика компанія з 5-6 одночасними підключеннями до бази 1С, то можна просто придбати клієнтські ліцензії для файлового варіанту, що вийде набагато дешевше!
1. У нас є клієнтські ліцензії на N клієнтів (файловий режим).
У цьому режимі клієнти будуть працювати з базою через веб-інтерфейс (хочеться відразу уникнути проблем з підключенням принтерів і пробросом дисків), а для адміністративних задач — буде використовуватися RDP. Так, можна, звичайно, працювати нативним клієнтом через мережеву кулі, встановивши Samba. Але це не має сенсу для того, що ми робимо.
2. У нас є ліцензія на клієнт-серверну платформу (SQL режим).
У SQL режимі клієнти можуть працювати і нативним клієнтом із зазначенням сервера 1С Підприємства, і через веб, кому як зручніше. Також, є доступ по RDP для адміністратора 1С.
Спочатку качаємо настановні пакети з порталу 1С (необхідна авторизація):
rpm64.tar.gz — пакет серверних додатків
client.rpm64.tar.gz -пакет клієнтських додатків
demodt.zip — тестова база

Установка для файлового варіанту:
Встановлюємо необхідні пакети:
# yum install firefox libreoffice

Встановлюємо 1С підприємство:
# cd /tmp/1Csrv
# yum localinstall *.rpm

Публікуємо веб-додаток:
# cd /opt/1C/v8.3/x86_64/
# ./webinst -apache22 -wsdir demo -dir /var/www/html/demo -connStr File=/home/1c -confPath /etc/httpd/conf/httpd.conf

-wsdir – ім'я псевдонімів веб-сервера для з'єднання з базою, надалі ми будемо звертатися до неї набираючи в браузері адреса.сервера/base
-dir – директорія де будуть зберігатися файли web-інтерфейсу 1с (точніше один файл default.vrd);
-connStr – рядок з'єднання з базою 1с підприємства;
-confPath – розташування конфігураційного файлу web-сервера apache.

Рестартуем налаштовуємо Apache:
# service httpd restart
# chkconfig httpd on
# chown apache:apache /home/1C
# chown -R apache:apache /home/1C/*.clf

Набираємо в браузері centos6-1c/demo і отримуємо знайомий інтерфейс 1С:

image

Пробуємо з'єднатися через RDP:

image

Все виходить, можемо створити базу та закачати через конфігуратор тестові дані, або бекап робочої бази.

Установка для другого, SQL варіанти:

# yum install rpm-build wget glibc-devel bison flex readline-devel zlib-devel openssl-devel pam-devel gettext gcc make icu libicu libicu-devel firefox libreoffice

Качаємо 2 пакета, сам сервер і addon від 1С звідси (потрібен логін і пароль). Потім копіюємо з допомогою winscp і розпаковуємо їх в окрему папку.
На жаль, версія 9.4 ставиться з помилками (проблема з бібліотекою libicu), тому ставимо 9.3. Pithon з аддонов ставити не треба, видасть помилку.
[root@centos1c pgsql]# ls /tmp/pgsql/
postgresql-9.3.4_1.1C_x86_64_addon.rpm.tar.bz2
postgresql-9.3.4_1.1C_x86_64_rpm.tar.bz2
postgresql93-9.3.4-1.1 C. x86_64.rpm
postgresql93-contrib-9.3.4-1.1 C. x86_64.rpm
postgresql93-devel-9.3.4-1.1 C. x86_64.rpm
postgresql93-docs-9.3.4-1.1 C. x86_64.rpm
postgresql93-libs-9.3.4-1.1 C. x86_64.rpm
postgresql93-plperl-9.3.4-1.1 C. x86_64.rpm
postgresql93-server-9.3.4-1.1 C. x86_64.rpm
postgresql93-test-9.3.4-1.1 C. x86_64.rpm
# yum localinstall *.rpm

Далі створюємо російську локалізацію і ініціюємо службову базу Postgres
# su postgres
# /usr/pgsql-9.3/bin/initdb -D /var/lib/pgsql/data --locale=uk_ua.UTF-8
# exit
# service postgresql-9.3 initdb

Запускаємо службу PostgreSQL і додаємо його в автозавантаження:
# service postgresql-9.3 start
# chkconfig postgresql-9.3 on

Створюємо пароль користувача: postgres, користувач postgres є адміністратором баз даних за замовчуванням. І в даному прикладі пароль буде 123654:
# su postgres
# /usr/pgsql-9.3/bin/psql
# ALTER USER postgres WITH PASSWORD '123654';
\q
# Exit

Даємо можливість підключатися до Postgres по мережі, для цього редагуємо файл pg_hba.conf
# mcedit /var/lib/pgsql/9.3/data/pg_hba.conf
потрібно змінити рядок:
hosts all all 0.0.0.0/0 ident
на 
hosts all all 0.0.0.0/0 md5

Після збереження файлу, перезапускаємо сервіс postgres:
# service postgresql-9.3 restart

Публікуємо через http:
#./webinst -apache22 -wsdir pgbase -dir '/var/www/html/pgbase' -connStr 'Srvr="centos6-1c";Ref="test2";' -confPath /etc/httpd/conf/httpd.conf

Рестартуем апач і 1С:
# /etc/init.d/httpd restart
# /etc/init.d/srv1cv82 restart

Перевіряємо чи працює сервер 1с підприємства. Для цього на сервері виконуємо наступну комманду:
# netstat -tlnp | grep :15
tcp 0 0 0.0.0.0:1560 0.0.0.0:* LISTEN 1508/rmngr
tcp 0 0 0.0.0.0:1561 0.0.0.0:* LISTEN 1658/ragent
tcp 0 0 0.0.0.0:1562 0.0.0.0:* LISTEN 1665/rphost
tcp 0 0 0.0.0.0:1563 0.0.0.0:* LISTEN 1665/rphost
tcp 0 0 0.0.0.0:1540 0.0.0.0:* LISTEN 1658/ragent
tcp 0 0 0.0.0.0:1541 0.0.0.0:* LISTEN 1508/rmngr


Через інтерфейс Адміністрування 1С Підприємства (клієнт Windows) створюємо базу:
image

Повторюся, сервер повинен відповідати клієнта по імені. Тобто повинен бути прописаний або в DNS, або у файлі hosts комп'ютера клієнта.

Через конфігуратор (на windows-клієнта, або RDP), закачуємо бекап вашої або демонстраційної бази.
Все працює так само, як і в першому варіанті, ми можемо з'єднуватися як через http, так і через RDP, плюс можливість з'єднання нативним клієнтом.

Ліцензування:
В процесі тестування, платформа жодного разу не заїкнулася про ліцензії. Зауважу, що в тестах використовувався демонстраційна база скачана з порталу 1С. Чутки, що є можливість роботи 12 користувачів без ключа — виявилися правдою. Однак те, що придатне для тестів, не можна пускати в production. Технічна можливість працювати без ключа, не означає юридичного дозволу це робити.

Для компаній з малою кількістю користувачів 1С підійде ось цей варіант (на 5 користувачів).

Програмна ліцензія на сервер терміналів(веб-сервер):
Якщо при запуску 1С не зажадає її відразу, то йдемо в Конфігуратор-Сервіс-Ліцензування.
Програмну ліцензію (будь-яку) рекомендується отримувати «На цей комп'ютер» і «Всім користувачам даного комп'ютера».

USB ключ(HASP):
Спочатку необхідно прокинути USB пристрій VM.
На proxmox:
# lsusb

Шукаємо потрібну нам пристрій і дивимося його ID: XXXX:YYYY
qm set 101 –usb0 host=XXXX:YYYY
де 101 — ID віртуальної машини куди будемо прокидати порт.
Перезавантажуємо віртуалку.
Далі встановлюємо службу haspd:
# yum -y install glibc.i686
# rpm -Uvh http://download.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/CentOS/6/haspd-7.40-eter9scientific.x86_64.rpm
# rpm -Uvh http://download.etersoft.ru/pub/Etersoft/HASP/stable/x86_64/CentOS/6/haspd-modules-7.40-eter9scientific.x86_64.rpm 

Під час установки деякі демони не стартують. Це нормально, тому що для їх старту потрібен модуль з пакету haspd-modules. Але haspd-modules не можна поставити раніше, тому що по залежностях haspd повинен ставитися першим. Модуль, який видає помилку (фейлит) буде нормально запущений після встановлення модулів при наступному запуску сервера.
Правимо конфіг /etc/haspd/hasplm.conf. Додамо в нього рядок:
NHS_IP_LIMIT = 127.0.0.1, 172.16.2.0/24
 

Саме в цій сходинці ми перераховуємо мережі (замість 172.16.2.0 додайте свою) і хости, які зможуть бачити HASP-ключ.

Перевіримо роботу демона haspd:
# /etc/init.d/haspd status

Демон haspd має вбудований веб-сервер, доступний за адресою: xx.xx.xx.xx:1947

Бекап:
Можемо зробити автоматичний бекап цілої VM на віддалене сховище (або ж на інший диск) прямо з Proxmox:
Тобто через веб-інтерфейс Proxmox заходимо у вкладку «Сховище» і додаємо NFS-масив. Це може бути як звичайна NAS-хранилка, так і xNIX-сервер з папкою доступною через NFS (кому що зручніше). Потім, вказуємо вміст (backup).
Сама 1С рекомендує ось це (потрібні ім'я та пароль). Там говориться, що для файловій версії, досить просте копіювання файлів, а клієнт-серверну версію рекомендується бэкапить засобами СУБД.

Якщо просто і швидко (без очищення), то можна в дві дії:
#export MYDB=postgresql://username:password@127.0.0.1:5432/mydatabase

і додамо завдання в crontab:
0 3 * * * pg_dump --dbname=$MYDB | gzip > ~/backup/db/$(date +%Y-%m-%d).psql.gz

В принципі, тут немає нічого складного — зараз будь-яка хранилка підтримує NFS, так що подмонтировать і створити автоматичний бекап на неї не складе ніяких проблем, так само як і на Windows ресурс.
Однак, дуже часто виникає питання про безпеку зберігання бекапа. Правилом хорошого тону є зберігання бекапа мінімум у двох географічно рознесених місцях. Розглянемо два варіанти: класичний FTP і хмарний.

Простий бекап з копіюванням по FTP:
# Задамо змінні
DATE=$(date +%Y - %m - %d)
FTP="ftp.domain.local"
FTPU="user"
FTPP="password"
#Резервне копіювання
cd /root/backup
#База test2
pg_dump -U postgres unf14 | gzip > $DATE-test2.pgsql.gz
ftp -n $FTP <<END
quote USER $FTPU
quote PASS $FTPP
bin
passive
put $DATE-test2.pgsql.gz
quit
END
#Прибирання
rm -f $DATE-test2.pgsql.gz


Бекап в хмару з шифруванням:
У production рекомендую користуватися консольним клієнтом яндекс-диска.
Також, якщо ви використовуєте будь то інша хмара, що підтримує протокол webdav, можна монтувати його за допомогою davfs також.
# rpm -Uvh http://repo.yandex.ru/yandex-disk/yandex-disk-latest.x86_64.rpm
# yandex-disk setup

Для коректної роботи GPG додаємо рядок в /sbin/ifup-local:
#!/bin/sh
/usr/bin/gpg-agent --daemon --use-standard-socket


Вміст скрипта:

#!/bin/bash
# Задаємо змінні:
TIME=`date +%Y-%m-%d`
GPG_COMMAND="gpg -c -z 0 --batch --passphrase XXXXXXXXXX"
FS_FILE=/tmp/$SERVER_NAME-fs.$TIME.tar.gz.gpg
FS_PGSQL=/tmp/$SERVER_NAME-mysql.$TIME.sql.gz.gpg

# Бэкапим і шифруємо файли:
tar -cz /home/1С | $GPG_COMMAND > $FS_FILE
# Бэкапим і шифруємо БД:
pg_dump --dbname=postgres://postgres:123654@127.0.0.1:5432/test2 | gzip | $GPG_COMMAND > $FS_PGSQL

# Завантажуємо дані в хмару Яндекс
# Для файлового режиму:
# curl --user user@yandex.ru:password -T "{$FS_FILE}" https://webdav.yandex.ru/
cp $FS_FILE /mnt/yandex.disk
# Для клієнт-серверного режиму(SQL):
# curl --user user@yandex.ru:password -T "{$FS_PGSQL}" https://webdav.yandex.ru/
cp $FS_PGSQL /mnt/yandex.disk

# Видаляємо файли старше 30 днів з локального диска
find /tmp/*.gpg -type f -mtime +30 -delete
# Видаляємо файли старше 5 днів з Яндекс-диска.
# curl --user user@yandex.ru:password --request DELETE https://webdav.yandex.ru/1cbase-pgsql.$OLDTIME.sql.gz.gpg
find /mnt/yandex.disk/*.gpg -type f -mtime +5 -delete

Залежно від того, в якому вигляді у вас БД (файлову або SQL) закоментуйте непотрібні рядки. У цьому тестовому скрипті, використовувався юзер postgres з паролем 123654 і БД — test2. Файлова база знаходилася в /home/1C.
На той випадок, якщо необхідно працювати з диском яндекса безпосередньо, я залишив рядки з CURL.
Даємо скрипту права на запуск:
# chmod 0700 backup.sh

Додамо завдання в crontab:
# crontab -e
# Запускаємо скрипт кожен день опівночі
0 0 * * * /home/backup.sh


Постинсталл:
Фаєрвол:
Сервер 1с підприємства в більшості випадків знаходиться в межах локальної мережі і його цілком можна використовувати з відключеним файрволом без великої загрози безпеки.
Відключаємо iptables:
# chkconfig iptables off
# service iptables stop
iptables: Flushing firewall rules: [ OK ]
iptables: Setting chains policy to ACCEPT: filter [ OK ]
iptables: Unloading modules: [ OK ]

Правильна настройка:
Консолі адміністрування потрібен доступ до сервера агента (ragent) по порту 1540, а для створення бази знадобиться ще й доступ до робочих процесів по портам 1562-1591. Толстому клієнту потрібен доступ до менеджера сервера (rmngr) по порту 1541 і робочим процесам порти 1562-1591. Менеджеру haspd потрібні порти 475 і 1947.
Решта залежить від Ваших налаштувань. Для стандартно налаштованого фаєрволу в CentOS набір дозвільних правил в /etc/sysconfig/iptables буде виглядати приблизно так:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1474 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1540:1541 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1560:1591 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 475 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 1947 -j ACCEPT


Оновлення:
Оновлення конфігурації відбувається абсолютно так само, як і на windows версії, тобто через конфігуратор.
Платформа оновлюється простою процедурою скачування rpm пакетів з сайту releases.1c.ru/project/Platform83, далі необхідно зайти в каталог з ними і виконати команду:

# rpm -U *.rpm


Перед виконанням не забудьте зробити снепшот і впевніться у наявності свіжого бекапа баз (попередні rpm пакети теж поки не видаляйте).

Аминистрирование:

Звикли до Windows-версії нічого міняти не треба, можна админить через той же інтерфейс Windows клієнта.
Однак, для цінителів є і консольні команди.
Команда запуску в якості демона:
# /opt/1C/v8.3/i386/ras --daemon cluster

За замовчуванням процес ras запускається на TCP 1545.
rac звертається до ras, який вже звертається (управляє) кластером серверів.
1) Просто help на всяк випадок (до речі, він досить зрозумілий і ясний)
# /opt/1C/v8.3/x86_64/rac

1C:Enterprise 8.3 Remote Administrative Client Utility '1C' 1996-2015
Утиліта адміністрування платформи 1С: Підприємство

Використання:

rac [mode] [command] [options] [arguments]

Підтримувані режими:

help Відображення довідкової інформації для вказаного режиму.
agent Режим адміністрування агента кластера серверів
cluster Режим адміністрування кластеру серверів
manager Режим адміністрування менеджера кластера серверів
server Режим адміністрування роботи сервера
process Режим адміністрування робочого процесу
service Режим адміністрування сервісу менеджера кластера
infobase Режим адміністрування інформаційною базою
connection Режим адміністрування з'єднань
session Режим адміністрування сеансів інформаційних баз
lock Режим адміністрування блокувань
rule Режим керування вимогами призначення
profile Режим керування профілями безпеки кластера

2) Перегляд списку доступних кластери 1с для управління
# /opt/1C/v8.3/x86_64/rac cluster list

3) Створення інформаційної бази
# /opt/1C/v8.3/x86_64/rac infobase create --cluster=bff5cb4a-2877-11e3-b590-d43d7eeced69 --name=user_db_empty --create-database --субд=PostgreSQL --db-server=127.0.0.1 --db-name=user_db_empty --locale=ru --db-user=postgres --db-pwd=<пароль> --cluster-user=admin --cluster-pwd=<пароль>

4) Перегляд списку інформаційних баз кластера
# /opt/1C/x86_64/i386/rac infobase summary list —cluster=bff5cb4a-2877-11e3-b590-d43d7eeced69 —cluster-user=admin —cluster-pwd=<пароль>

5) Перегляд списку підключень до інформаційних баз кластера
# /opt/1C/v8.3/x86_64/rac session list --cluster=bff5cb4a-2877-11e3-b590-d43d7eeced69 --cluster-user=admin --cluster-pwd=<пароль>


Оптимізація PostgreSQL:
  • postgresql.conf — основний файл з налаштуваннями СУБД
  • pg_hba.conf — файл з налаштуваннями доступу для клієнтів. Зокрема, тут можна вказати, яким користувачам з яких IP-адрес можна підключатися до певних БД, і потрібно перевіряти пароль користувача, і якщо потрібно — яким методом.
  • pg_ident.conf — файл з перетворенням імен користувачів з системних у внутрішні (навряд чи він буде потрібно більшості користувачів)
Для більш тонкого налаштування БД необхідно правити файл postgresql.conf скориставшись онлайн сервісом. Або вручну підібрати значення, почитавши наприклад цю статтю. Докладно параметри розписані в цієї статті.

Підключення принтерів
Здійснюється через сервіс CUPS, який встановлюється автоматом.
В сеансі RDP заходимо за адресою localhost:631
При натисканні кнопки встановити принтер — бачимо всі мережеві принтери з мережі.
Якщо ви хочете прокинути свій особистий принтер — дайте до нього доступ.

Висновки:
Ми заощадили на ліцензії Windows Server + Terminal CALs, MS SQL Server + Connection CALs. Навіть якщо порахувати вартість ліцензій від 1С, то Linux-варіант виграє! Також, зібравши сервер з підручного заліза, переконалися в тому, що по тестам, він працює швидше ніж windows-версія встановлена на голому залозі.
У підсумку, ми змогли отримати сервер (шаблон можна розмножити), який можна без побоювання рекомендувати продакшн. Також, у подальшому, Proxmox як систему віртуалізації, можна розширити і створити кластер.

P. S: Чому CentOS 6, а не 7? Тому що на момент написання статті публікація програми 1С через http підтримувала тільки apache 2.2. До того ж, в процесі установки 7-ї версії, з'явилися якісь незрозумілі проблеми з polkitd.
P. P. S: Платформа, через деякий час тестування, все ж зажадала ліцензію.

Спасибі за увагу, чекаю Ваших коментарів!

Джерело: Хабрахабр

0 коментарів

Тільки зареєстровані та авторизовані користувачі можуть залишати коментарі.