Установка 1с 8.3 на терминальный сервер. Когда может понадобиться терминальный доступ

1С для многих системных администраторов всегда была и остается головной болью. Терминальный сервер 1С, как один из ключевых узлов, требует к себе повышенного внимания, ведь на нем завязана финансовая деятельность. Вот и у меня недавно появилась задача собрать все яйца в одну корзину — всех бухгалтеров на один терминальный сервер. При этом нет никаких данных о том, какие ресурсы — цп, оперативная память, iops’ы дисков — потребляют клиентские приложения.

На официальных ресурсах ничего, кроме совместимости с операционными системами, мне найти не удалось. Имея уже давно работающие ПК бухгалтеров и сервер мониторинга ZABBIX, я решил действовать немного по-другому и занялся сбором реальных данных. Собственно только это мне и было доступно.

Другие статьи об 1С вы найдете в соответствующей рубрике — .

В интернете множество компаний предлагают на своем сайте подобрать конфигурацию терминального сервера под определенное количество пользователей 1С, только ни на одном из таких сайтах не указывается характер нагрузки на сервер — не уточняется планируют ли пользователи запускать что-то ещё кроме 1С, не написано под какой тип клиента (толстый или тонкий) идет расчет конфигурации и т.п.. Все это ни коим образом не вселяет уверенности в правильности подбора.

Чтобы понять на каком железе разворачивать терминальный сервер, я решил собрать данные производительности всех ПК бухгалтерии за какой-либо период.

Задача звучит следующим образом: собрать данные потребления процессорной мощности и оперативной памяти на каждом ПК бухгалтерии.

Условия: каждый сотрудник бухгалтерии использует 1С (открыто враз от 2 до 8 экземпляров программы, в среднем 6. Одна из этих программ — толстый клиент 1С, все остальные — тонкие клиенты). Периодически бухгалтеры пользуются экселем для выгрузки и анализа данных, браузером для работы в банк-клиентах. Никаких ресурсоемких приложений не запускается. Точно такой же софт будет запущен на терминальных сессиях.

Что имеем: у каждого бухгалтера стоит Core i5 4460 или эквивалентный ему процессор, 8ГБ RAM, ОС — Windows 8.1.

Процессорная мощность

Итак, представляю вашему вниманию график нагрузки процессоров каждого ПК бухгалтерии:

Разрывы на графиках вполне нормальны, поскольку по ночам и в выходные бухгалтеры не работают. Или работают, но не все.

Вывод по процессорной мощности: судя по графику (зеленая линия), средняя нагрузка на ЦП не превышает примерно 5% — у кого-то бывает и больше, но есть примеры с меньшим потреблением. 5% — в среднем это минимум, который необходим каждому.

Уточнения: надо взять во внимание тот факт, что сама ОС также потребляет процессорную мощность. На терминальном сервере такая система будет одна независимо от количества пользователей, но если измерять отдельный пк, то из конечных результатов нужно будет вычесть примерно 1%, который тратится на работу системы. Итого получаем 4%.

Что не учли: нагрузка на ОС терминального сервера вероятнее всего будет увеличиваться пропорционально (или с некоторым коэффициентом) увеличению количества пользователей, поэтому может быть я и зря вычел этот 1%. У кого-то возникнет вопрос почему я взял нагрузку исключительно навскидку, примерно. Потому что мне кажется, что точное среднее значение все равно не будет отражать ситуацию более корректным образом, уж слишком большое влияние на производительность со стороны «третьих» сил замешано в данных измерениях (начнем с того, что многих служб Windows 8.1 вообще не будет на терминальном сервере и наоборот). Промежуточный вывод:

Продолжаем анализировать ситуацию. Также из графика можно заметить, что при включении ПК идет повышенное потребление ресурсов и это нормально, поскольку в этот момент стартуют службы, пользователи запускают необходимый для работы софт, подгружают данные. Ниже график загрузки ЦП тех же ПК, но акцент сделан на моменте загрузки системы (выделено красной рамкой):

Таким образом можно говорить о том, что загрузка ЦП при включении ПК находится в районе 30%. Это не значит, что теперь каждой терминальной сессии бухгалтера нужно зарезервировать эквивалентную мощность. Это значит, что нужно зарезервировать 30% единоразово на всех. Это подразумевает, что все бухгалтеры не будут враз логиниться на терминальный сервер, но для быстрого запуска необходимого софта нужно иметь в резерве 30% эквивалентной Core i5 4460 мощности. Промежуточный вывод:

Необходимый резерв ЦП сверх средней нагрузки каждого рабочего места — 30% ЦП

Ситуация с требуемой мощностью процессора постепенно начала проясняться, теперь необходимо определить потребность в оперативной памяти.

Оперативная память

Тут все обстоит значительно проще — из потребляемой оперативной памяти рабочего места бухгалтера нужно вычесть примерно 512МБ — именно столько съедает Windows 8.1 без нагрузки. Сведем все данные в один список:

  1. Потребление RAM ОС Windows 8.1 — 512МБ;
  2. Минимум RAM, которая необходима для работы терминального сервера без нагрузки — 2ГБ;

Таким образом, формула для определения необходимого объема оперативной памяти:

TS Server RAM = (RAM бух -512) * N + 2048

Где RAM бух — средний объем памяти, которую потребляет одно рабочее место бухгалтера; N — количество рабочих мест бухгалтеров.

Немного подробнее о первом параметре:

Выше представлены графики свободного объема RAM на каждом рабочем месте сотрудников бухгалтерии.

Вывод по оперативной памяти: средний объем занятой памяти из расчета 8ГБ на рабочее место (не см. на график scws44, на этом ПК не 8, а 4ГБ) равен 2,5ГБ. Если вычесть из этого объема 512МБ (ОС), то примерно получим:

Расход RAM (без объема, занятого ОС) на рабочем месте бухгалтера = 2ГБ

Уточнения: разумеется это значение приблизительное и в реальной обстановке все равно будет меняться. Учтите также объемы памяти, которые могут потребоваться администраторам, ведь их сессии на терминальном сервере тоже будут отнимать ресурсы, пусть и небольшие.

Что не учли: ОС может периодически требовать объемы сверх ей необходимых. Например служебные процессы TrustedInstaller.exe или svghost.exe или любые другие периодически выкачивают значительные объемы оперативной памяти, для них тоже однозначно надо что-то зарезервировать.

Казалось бы на этом все задачи выполнены, но нет, остались ещё. О них ниже.

Диски

Нагрузка на дисковую подсистему в случае с терминальным сервером будет сводиться в основном к чтению данных и потому требования к дискам не так жестки как, например, в случае с СУБД. Средняя нагрузка обычного десктопного диска (WD Blue) рабочего места бухгалтера отображена на графиках ниже:

Обращаю внимание, что на графиках отображается время бездействия (idle time). Бездействие 95% говорит о том, что реальная загрузка диска составляет всего 5%. Промежуточный вывод:

Средняя нагрузка на одиночный диск рабочего места бухгалтера — 5%

Вывод по дискам: если не учитывать кратковременные пики, то средняя нагрузка на диски составляет 5%.

Уточнения: в этом среднем значении весомую долю занимают потребности операционной системы.

Что не учли: наиболее грамотно оценить потребности в дисках позволяет оценка производительности в операциях ввода/вывода в секунду (iops) от которой я, тем не менее, в рамках этой статьи предпочту отказаться. Операции ввода/вывода и загрузка диска в процентах обычно не соотносятся друг с другом в линейном виде (или соотносятся далеко не всегда). Все зависит от характера нагрузки. В моем случае существующая оценка производительности вполне достаточна.

Терминальный сервер 1С — подбор конфигурации

Для начала нам надо узнать рейтинг производительности эталонного процессора, который мы взяли за основу при проведении измерений. В моем случае этот процессор — Core i5-4460, который установлен практически на каждом рабочем сотрудников бухгалтерии. Рейтинг его производительности, согласно данным сайта www.cpubenchmark.net — 6622.

Исходя из расчетов предыдущей главы, определим требуемую мощность процессора:

4% * 7 (количество рабочих мест бухгалтеров в моем случае) + 1% (для ОС) + 30% = 59% (в сравнении с Core i5 4460).

Также надо учесть тот факт, что периодически сотрудники бухгалтерии делают объемные выгрузки данных из 1С, что отнимает достаточно много ресурсов — обычно как минимум одно физическое процессорное ядро. То есть в нашем случае 25% производительности эталонного ЦП. В итоге реально необходимая мощность уже равна 84%.

Небольшое пояснение: практически никто не подбирает процессоры исходя из того, чтобы они были загружены на 84% или около того. Например я считаю, что загрузка ЦП равная или выше 85% является критической. В своей практике я обычно подбираю мощность процессора таким образом, чтобы при выполнении требуемых задач нагрузка на него не превышала 60% в среднем.

6620 * 0,84 / 0,6 = 9268

То есть конкретно под мою задачу с моими условиями необходим минимум Intel Xeon E3-1240 V2 @ 3.40GHz . Этот ЦП обеспечит необходимую производительность, а также небольшой запас на будущее.

UPD: 15.07.2016:

Объем оперативной памяти составит 16ГБ (на 7 рабочих мест сотрудников бухгалтерии, расчеты приведены выше). Надо отметить, что это минимально необходимый объем. Желательно все же иметь запас, чтобы приложения и ОС не начали свопить и не положили дисковую подсистему. Идеальный вариант составит 2 планки по 16ГБ , всего 32ГБ — планки такого объема поддерживает практически любая серверная материнская плата.

Исходя из нагрузки на диски (см. выше), достаточно будет иметь производительность двух SATA-дисков. Если говорить о массивах, то при грубом приближении подойдут конфигурации RAID 10, 1E, 5. Я традиционно выбираю RAID 10 — для этого варианта нужно минимум 4 диска .

Для уменьшения общей стоимости оборудования можно обойтись SATA-дисками, но только не десктопными, а пуст и самыми дешевыми, но enterprise-уровня. Поскольку надежность этих дисков на порядок ниже по сравнению с классическими SAS, то RAID 10 будет как нельзя кстати.

Итак, конфигурация терминального сервера для работы от 7 до 10 сотрудников бухгалтерии (1с, эксель, браузер, почта) имеет следующий вид:

Intel Xeon E3-1240 V2 @ 3.40GHz, 32GB RAM, 4*SATA in RAID10

Организация эффективной совместной работы посредством Терминального сервера 1С.

Суть проблемы:

При работе нескольких пользователей 1С с единой базой , размещенной на файловом сервере часто поступают жалобы, что 1С тормозит . Жалобы системным администраторам и программистам 1С ничего не дают. А ведь по мере роста объёма накопленных данных о финансовых операциях компании – растет и объём базы данных 1С , а скорость и комфорт работы наоборот – падают.

По рекомендации системных администраторов компании обновляют компьютеры, проверяют работу сети, но ощутимых результатов не достигают. Отчеты по-прежнему строятся по 20 минут! Помимо этого при сетевом доступе, часто не даёт осуществить такие действия с документами, как запись или проводка, ссылаясь на «ожидание захвата таблицы».

Решение проблемы быстродействия 1С зарыто несколько глубже, чем просто обновление ПК и установка гигабитных коммутаторов. В действительности все дело в том, как 1С занимается обработкой и хранением данных. Хранение происходит в нескольких больших файлах-таблицах с расширением *.1CD, и при запуске программа скачивает эти таблицы на компьютер пользователя практически полностью, производит с ними операции (добавление, удаление, перепроведение документов) и записывает обратно на сервер. Ситуация сильно усугубляется, если пользователь 1С работает по «тонкому» каналу – например, из дополнительного офиса по VPN.

Взгляд со стороны:

Если отстраниться от информационных технологий, то со стороны ситуация выглядит так:

Допустим, Ваша бухгалтерия находится на 6-ом этаже бизнес-центра, все документы хранятся в нескольких больших коробках. Сотрудникам для работы с документами приходится подниматься на 6-й этаж, брать короб, нести его на рабочее место, выполнять необходимую работу с документами, паковать и нести короб назад. В случае с дополнительными офисами, подключенными по каналам Интернет общего использования через VPN, аналогией является поездка на общественном транспорте с коробом документов подмышкой (если, конечно, у Вас не заказан выделенный канал точка-точка между офисами – аналог личный автомобиль).

Решение проблемы:

Описанные выше классические улучшения, рекомендуемые системными администраторами для увеличения скорости работы, равносильны расширению лестниц и покупкой сотрудникам сапогов-скороходов.

Очевидно, что решением является обработка документов сразу в хранилище на 6-м этаже, а не таскание их по лестнице. Например, там можно организовать библиотеку с просторным читальным залом, где работа с документами будет осуществляться максимально быстро и удобно. По сути, терминальный сервер и есть такой зал.

Описание решения:

Терминальный сервер 1С Linux-TBS (Терминальный Бизнес-Сервер для 1С на Linux ) – это компьютер, на котором вместе, в один момент времени могут работать десятки пользователей и не испытывать затруднений. Присутствовать рядом с сервером и иметь клавиатуру-монитор непосредственно подключенными к серверу не требуется. Пользователь терминального сервера 1С может находиться за любым компьютером, подключенным к Интернет (соединение клиент-сервер шифруется).

Подключение происходит очень просто – одним нажатием мышки, вводом пароля и пользователь оказывается внутри «удаленного рабочего стола 1С «. Где его ждут его платформы 1С, его базы, его настройки – без зависимости от того, с какого компьютера он подключился.

Итак, какие преимущества дает установка терминального сервера 1C (Linux-TBS):
1). Значительное повышение скорости работы 1С

При работе в Терминальном сервере 1С (Linux-TBS) пользователи не гоняют огромные объемы данных по сети (вспомните пример про коробки), а получают от сервера изображение рабочего окна 1С Предприятие. Одним словом, сервер работает, а Вы получаете только результат! Как показала практика, скорость работы 1С при переводе в терминал повышается от 2 до 10 раз!

2). Повышение надежности работы баз данных программы

Сбои ПК пользователей и обрывы соединения не наносят ущерба базам 1С. После сбоя пользователь может подключиться со своего ПК или с любого свободного дежурного ПК и продолжить работу в своей сессии с того же места!

3). Повышение надежности 1С в целом

При установке 1С на сервере Linux Вы больше не зависите от работоспособности отдельных пользовательских компьютеров под управлением Windows со всеми известными их уязвимостями и глюками, так как установка 1С на каждом из них теперь не требуется.

4). Снижение стоимости обслуживания 1С

При концентрации обработки данных 1С в одном месте (на терминальном сервере Linux ) упрощается удаленное администрирование и удаленная поддержка пользователей. Обновление платформы 1С теперь производится в одном экземпляре.

5). Терминальный сервер 1C (Linux-TBS) обеспечивает удаленный доступ к данным 1С через Интернет

Ваши сотрудники (дополнительный офис, склад, надомные работники) смогут подключаться к терминальному серверу 1С удаленно через интернет и работать в общей базе данных 1С наравне с сотрудниками основного офиса. Безопасность работы 1С через Интернет обеспечивается за счет шифрования подключения VPN.

6). Экономия на конфигурациях пользовательских ПК

Для развертывания сервера терминалов 1С Linux/Windows требуется достаточно мощный сервер, НО пользовательские компьютеры при этом могут быть самыми простыми. Обработка всех данных 1С ведется непосредственно на сервере, а пользователи на компьютере получают только картинку — результат.

7). Повышение безопасности и сохранности данных

Содержащий Ваши конфиденциальные данные в 1С, можно физически разместить на удаленной площадке, в укромном физически защищенном месте. Или в дата-центре, расположенном Санкт-Петербурге, Москве или даже в Европе. Также Вы также можете не покупать мощный сервер для терминала 1С, а арендовать его у нас или в дата-центре.

8). Экономическая эффективность

Терминальные сервера на базе ОС Microsoft Windows Server известны уже порядка 10 лет, но обладают высокой стоимостью применяемого лицензионного программного обеспечения.

Список необходимого лицензионного программного обеспечения Microsoft (справочно):

SKU
Производитель Продукт Кол-во
Общая стоимость
P73-04979 Microsoft Windows Server Standard 2008R2 Russian Open License Pack NoLevel 1 $ 635,00
R18-02742 Microsoft Windows Server CAL 2008 Russian Open License Pack NoLevel DvcCAL 10 $ 257,00
6VC-01143 Microsoft Win Rmt Desktop Services CAL 2008 Russian Open License Pack NoLevel DvcCAL 10 $ 741,00
228-09418 Microsoft SQL Server Standard Edition 2008R2 Russian Open License Pack NoLevel (требуется только в случае SQL-версии 1С) 1 $ 785,68*
359-05347 Microsoft SQL CAL 2008R2 Russian Open License Pack NoLevel DvcCAL (требуется только в случае SQL-версии 1С) 10 $ 1 441,60 *
Всего за ПО: 32 $ 3 860,28
Работы по установке терминального сервера 1С Windows 1 8 000 руб.
58 300 руб.
Итого для SQL- версии 1С: 126 000 руб.

Терминальный сервер 1C (Linux-TBS) основан же на свободном программном обеспечении семейства Linux. Благодаря этому нет необходимости приобретения лицензий, стоимость которых в аналогичных системах порой зашкаливает.

Стоимость решения на Linux под «ключ» за исключением аппаратного обеспечения (возможно использование Вашего сервера или ):

SKU
Производитель
Продукт Кол-во
Общая стоимость
Debian.org Лицензия на операционную систему Debian GNU/Linux 1 $ 0
Debian.org Лицензии на клиентские подключения не требуются 10 $ 0
Etersoft.ru Лицензия на терминальный сервер RX@ Etersoft (R)
10 $ 0
PostgreSql.org Лицензия на SQL-сервер PostgreSQL (требуется только в случае SQL-версии 1С)
1 $ 0
Etersoft.ru Лицензия на вспомогательное ПО WINE@Etersoft SQL (R) (требуется только в случае SQL-версии 1С) 10 12 900 руб.
Etersoft.ru Лицензия на вспомогательное ПО WINE@Network (R) (требуется только в случае файловой версии 1С) 10 8 900 руб.
сайт Работы по установке терминального сервера 1С на Linux 1 14 800 руб.
Итого для файловой версии 1С: 23 700 руб.
Итого для SQL- версии 1С: 27 700 руб.
Стоимость включает:
  • предпроектное обследование;
  • составление плана миграции;
  • миграция 1С на ;
  • подключение пользователей;
  • составление инструкции по подключению новых пользователей;
  • сопровождение системы в первые два месяца эксплуатации

Многие пользователи программ 1С Предприятие 8.3, 8.2 или 7.7 рано или поздно сталкиваются с тем, что сетевые программы 1С начинают работать медленно или как говорят специалисты «сервер тормозит». Проблема проявляется на любых конфигурациях и платформах – Бухгалтерия, Управление торговлей, Зарплата и управление персоналом и других.

Причиной является то, что чем больше пользователей работает в сетевой информационной базе и чем больше операций они выполняют, тем тяжелей серверу отрабатывать сетевые запросы.

Пропускную способность локальной сети увеличивать беспредельно невозможно, а наращивать вычислительные мощности каждого рабочего места достаточно дорого.

Что же делать, неужели перепроведение документов или , которое выполняется не один раз в месяц, а намного чаще, следует подолгу ожидать?

Современным решением проблемы быстродействия бухгалтерских да и других программ является использование терминального сервера.

Что дает установка терминального сервера

Терминальный сервер это такой компьютер, который не только раздает доступ к сетевой информационной базе как обычный сервер, но еще и сам выполняет программы пользователей в своей памяти и на своих процессорах (обслуживает терминалы клиентов).

При работе по обычной локальной сети компьютер пользователя сам выполняет все расчеты, а по сети обращается только за тем, чтобы получить данные из общего хранилища – сетевой базы данных (БД). База данных может быть файловая или клиент-серверная, это не так важно.

Терминальный сервер 1С сам выполняет все вычисления и необходимые обработки, при этом по сети никуда не обращается, поскольку информационная база данных хранится на нем же, а результат (всего лишь изображение экрана) отправляется на компьютер клиента. По-сути, терминал 1с (клиентский компьютер) является просто клавиатурой и монитором, которые подключены по сети к терминальному серверу, а сетевой трафик при передачи изображения экрана очень мал.

Поэтому для терминальных клиентов нет необходимости иметь мощные дорогие компьютеры и даже нет необходимости в установке скоростной сети, потому что по сети передается небольшой объем данных, а на компьютере клиента расчеты вообще не выполняются.

Таким образом, мы должны установить и настроить один сервер терминалов 1С (компьютер с мощным процессором и большим объемом памяти), иметь не обязательно скоростную локальную сеть и совсем не быстродействующие компьютеры у пользователей (теперь они называются терминальные клиенты).

Кстати сказать, в этом случае на клиентских ПК даже нет необходимости в установке программ 1C Предприятия. Они запускаются и выполняются на сервере терминалов, а результат, т.е. изображение на экране, отправляется клиенту.

Использование терминального режима дает ряд важных преимуществ в работе пользователей и для организации в целом:

  • значительное увеличение быстродействия работы сетевых программ 1С при существенном снижении нагрузки на локальную сеть. Особенно заметно при использовании файлового сервера. Скорость работы программ 1C повышается в несколько раз;
  • гарантированное сохранение данных при сбоях в сети, поскольку сами данные по сети не передаются. Факт черезвычайно важный для файл-серверной архитектуры, потому что файловые базы данных 1С очень не любят сетевые сбои и неожиданные отключения питания;
  • заметное снижение стоимости ИТ-структуры у организации, поскольку приобретать мощный компьютер требуется только один, а не по количеству рабочих мест;
  • повышение безопасности работы как с точки зрения физической целостности данных, так и с точки зрения защиты конфидициальной информации поскольку скопировать рабочую базу с терминального сервера сложнее чем с файлового;
  • существенная экономия при последующих модернизациях компьютерного парка, потому что модернизировать или менять опять же необходимо только сервер.

Таким образом, уникальность предлагаемого решения заключается в том, что удается значительно повысить быстродействие сетевой вычислительной системы и при этом заметно снизить ее общую стоимость.

Как настроить сервер для работы программ 1С в режиме сервера терминалов

Чтобы наш мощный компьютер смог стать сервером терминалов 1С, на нем необходимо установить специальное программное решение для организации такого доступа сетевым пользователям.

Идеальным решением организации терминального режима работы в сети является использование сервера терминалов от отечественного разработчика «ViTerminal».

Существенные преимущества установки данного решения:

Работает без серверной операционной системы на обычных ОС: Windows XP, Windows 7 и 8. Это означает, что для сервера нет необходимости приобретать дорогую серверную ОС (такую как Windows Server 2012 R2), что дает существенное снижение конечной стоимости

Высокая скорость и стабильность работы, особенно, если используется файловый режим работы 1С

Настраиваемые в Витерминале права доступа к ресурсам сервера

Низкая цена как серверной части, так и лицензий терминальных клиентов

Простая процедура установки и настройки сервера терминалов

Предельно простая процедура администрирования сервера (фактически это обычный компьютер без сложных серверных служб и нюансов их работы)

Возможность работы Витерминал через Интернет при наличии статического IP-адреса на сервере

Гарантированная поддержка от российского разработчика.

Последний пункт имеет немалое значение. Достаточно вспомнить как Майкрософт и Оракл отказали в поддержке своего ПО нескольким российским банкам во время последнего политического кризиса. Вряд ли коммерческие или бюджетные организации теперь захотят играть в лотерею на свои деньги с заграничными структурами и рисковать своей информационной безопасностью.

Схема настройки терминального режима Viterminal

Выбираем достаточно мощный компьютер (хороший процессор и много памяти), который хотим использовать как терминальный сервер для Viterminal. Совсем не обязательно, что это будет настоящий дорогой сервер с RAID-массивами, с горячей заменой электронных компонентов и т.д. Для небольшого количества пользователей будет достаточно надежного персонального компьютера, по крайней мере на начальном этапе.

  1. На сервере устанавливаем серверную часть терминала (выполняется простая процедура установки – типовая инсталяция)
  2. Заводим на этом сервере пользователей с паролями, которым предоставим доступ на этот терминальный сервер
  3. На каждом клиентском ПК устанавливаем программную клиентскую часть. В итоге при запуске своего клиентского приложения, пользователь вводит логин и попадает на сервер (хотя он этого может и не знать). Далее работа бухгалтера ничем не отличается от обычной.

Конечная стоимость решения рассчитывается от количества требуемых серверов и клиентов в сети. Витерминал зарегестрирован в Федеральной службе по интеллектуальной собственности РФ (свидетельство N 2009613085), а конечные пользователи получают лицензионый сертификат.

Так же очевидно, что самому терминалу без разницы, запуск каких программ будет выполняться на таком сервере. Это может быть 1С Предприятие 8.2 или 8.3 или 7.7 любых конфигураций, текстовые редакторы, электронные таблицы и любые другие программы, которыми будет необходимо пользоваться сетевым клиентам.

Для консультаций по Viterminal, а также по вопросам расчета стоимости и выписки счетов и предоставления рабочей демо версии терминального сервера с инструкцией настройки обращаться на e-mail: [email protected] или на страницу .

Сегодня мы рассмотрим выбор серверного «железа» для небольшой организации на 25-30 пользователей, с распределенной инфраструктурой (торговые точки, склад), которой требуются терминальный сервер и программа «1С: Предприятие». Этими сервисами будут пользоваться все сотрудники.

Большинство малых компаний, для удешевления стоимости оборудования, предпочитают минимизировать количество приобретаемой техники и просят администраторов «впихнуть» все запрошенные ими сервисы в один физический сервер. Желание понятное и простительное, но тут «есть нюансы».

Можно организовать терминальный сервер и использовать там файловую версию 1С, но при таком количестве пользователей компания-разработчик рекомендует переходить на клиент-серверный вариант. Поэтому нам потребуется еще сервер под «1С: Предприятие» и сервер баз данных. Уточним сразу, что организовать терминальный сервер, сервер SQL и сервер 1С на одной операционной системе возможно, но, с точки зрения безопасности и стабильности работы сервисов, это крайне не рекомендуется. А если всё-таки очень хочется использовать один физический сервер для всех трёх ролей, то рекомендуем использовать виртуализацию, например, VMWare ESXi или Hyper-V.
Таким образом, вырисовывается три варианта:

  1. Один сервер с файловой 1С. Плохой вариант, далее мы его рассматривать не будем.
  2. Один сервер с двумя виртуальными машинами.
  3. Два физических сервера, один терминальный, второй с БД и 1С.

Для решения этих задач можно предложить следующую конфигурацию серверов:

В случае с одним физическим сервером мы остановили выбор на Dell R710, с двумя шестиядерными процессорами Xeon X5650, 64 Гб оперативной памяти и шестью дисками: два SSD в RAID 1 и четыре SAS-диска в RAID 10.

В случае с двумя физическими серверами мы остановили выбор на таких конфигурациях:

  • Терминальный сервер: IBM x3550 M3 с одним процессором Xeon E5620, 32 Гб оперативной памяти и двумя SSD в RAID 1, с дополнительной сетевой картой на два гигабитных интерфейса. У этого сервера также есть богатые возможности для апгрейда, так как он двухпроцессорный, имеет 18 слотов под модули памяти и поддерживает до 288 Гб ОЗУ.
  • Сервер баз данных: IBM x3250 M5 с одним процессором Xeon E3-1220v3, 16 Гб ОЗУ, дополнительным RAID-контроллером SAS/SATA, четырьмя SAS-дисками в RAID 10, с дополнительной сетевой картой на 2 гигабитных интерфейса.
Почему мы выбрали именно такие конфигурации? Для ответа на этот вопрос давайте подсчитаем, что нам нужно для обеспечения комфортной работы пользователей в нашей небольшой организации на 25-30 сотрудников. Чтобы не было недопонимания: это лишь один из примеров недорогого внедрения 1С, и во многих случаях целесообразнее выбрать другие конфигурации.

Процессор

С точки зрения процессорного времени терминальные сессии занимают не очень большую долю. По опыту внедрения терминальных решений в различных организациях, для поддержания комфортной работы 30-ти пользователей достаточно будет 4-6 физических ядер процессора, по одному ядру на 6-8 сессий.

Для небольшой базы SQL-серверу понадобится одно ядро. Но мы будем ориентироваться на расширение базы в будущем (или увеличение количества баз) и возьмем два ядра на SQL.

Для сервера «1С: Предприятие» важно не столько количество ядер, сколько их тактовая частота и частота шины. Поэтому заложим еще два ядра на сервер 1С.
И не забудем, что в случае использовании виртуализации одно или два ядра нам пригодится для обеспечения работы хостовой операционной системы.

Итого у нас получается:

  • для сервера с двумя виртуальными машинами нужно 12 физических ядер. Можно и меньше, но всегда должен оставаться запас по мощности. Сервер с двумя шестиядерными процессорами подходит для этого идеально.
  • для терминального сервера достаточно одного процессора Xeon E5620 с шестью ядрами, для сервера баз данных - процессора Xeon E3-1220v3 с четырьмя ядрами.

Оперативная память

Сначала посмотрим, сколько нужно оперативной памяти под сервисы:
  • Операционная система Windows Server только под себя требует 2 Гб ОЗУ.
  • Для SQL и небольшой базы 1С достаточно будет 4-6 Гб ОЗУ.
  • Сервер «1С: Предприятие» требует еще 2-3 Гб ОЗУ.
  • Рассчитываем, что каждому пользователю потребуется 700 Мб ОЗУ в терминальной сессии, тогда на 30 пользователей потребуется 21 Гб.
Теперь применим это к нашим вариантам.
  • Для одного сервера с двумя виртуальными машинами нужно около 40 Гб ОЗУ.
  • Для терминального сервера достаточно будет 24 Гб или 32 Гб ОЗУ (возьмем с запасом, предполагая будущее расширение). Для сервера с базами данных нужно не менее 8 Гб, но это «впритык», поэтому 16 Гб с запасом. Память сейчас - один из самых дешевых компонентов сервера.

Дисковая подсистема

Это традиционное бутылочное горлышко многих систем. Правильный выбор жестких дисков очень важен для обеспечения быстродействия серверов. При работе 1С с базой SQL происходит множество операций чтения/записи в секунду (IOPS). Если пользователи работают на терминальном сервере с тонких клиентов (т.е. полноценно используют терминальный сервер как рабочую среду), это сильно нагружает дисковую систему сервера. Например, 30 пользователей терминального сервера на RAID 1, SATA 3 Гбит/с, с дисками WD Velociraptor чувствуют себя некомфортно при работе с почтой и активном сёрфинге в интернете. Для терминальных серверов мы рекомендуем использовать SSD-накопители. Для серверов баз данных - SAS-диски, собранные в отказоустойчивые массивы.

Помимо накопителей, следует уделить внимание и дисковому контроллеру. Современные серверы имеют на борту довольно хорошие контроллеры, например, HP SmartArray и DELL PERC. Однако некорректно будет использовать «набортные» решения при серьёзной нагрузке, когда требуется максимальная производительность. Немного сэкономив, вы легко можете получить мощный сервер, который совершенно не тянет нагрузку. Поэтому контроллер должен быть аппаратным, а не программным , со своей энергонезависимой памятью.

Рассмотрим варианты решения этой задачи.

  • Для одного сервера с двумя виртуальными машинами желательно использовать два RAID-массива: на одном будут располагаться файлы виртуальной машины терминального сервера, на втором - файлы виртуальной машины сервера баз данных и «1C: Предприятия». Для создания первого массива лучше всего использовать два SSD-накопителя в RAID 1 (зеркало).

    Второй массив лучше создать из четырёх SAS-диска в RAID 10 (зеркало + страйп), но можно и из двух SSD-накопителей в RAID 1. Выбор зависит только от стоимости дисков и модели сервера.

  • Для двух серверов всё то же самое, только массивы будут разнесены по серверам. На терминальном - RAID 1 из двух SSD, на сервере баз данных - RAID 10.

Один или несколько серверов

Как сказано выше, у небольших организаций довольно велико желание разместить все сервисы на одном сервере.

К преимуществам использования одного сервера и виртуализации можно считать более низкое энергопотребление и более гибкое распределение ресурсов между виртуальными машинами. Ну и перенос виртуальных машин, в случае чего, гораздо удобнее, чем перенос физических ОС.

Однако два сервера имеют более широкие возможности по апгрейду. Например, в нашем варианте недорогой IBM x3550 M3 с добавлением еще одного процессора и ОЗУ превращается в элегантные шорты терминальный сервер на 50 и даже более пользователей.

Еще одно «узкое место» в нашем случае, которое необходимо учитывать при выборе двух физических серверов, это обмен данными между ними по сети. У виртуальных серверов обмен данными идёт через виртуальный коммутатор. Здесь же, для увеличения пропускной способности сети, можно установить в каждый сервер по сетевой карте с двумя гигабитными интерфейсами, которые можно агрегировать между собой и напрямую соединить оба сервера агрегированными 2-х гигабитными линками. Или же использовать сетевые карты с SPF+ 10GBASE, но это дорогое удовольствие.

Запас по мощности

При расчетах и выборе сервера необходимо принимать во внимание пиковые нагрузки. Также обязательно нужно помнить, что база данных будет только «пухнуть», объёмы данных на терминальном сервере будут расти, а количество пользователей может увеличиться. Многие предприятия экономят на запасе мощности и через полгода-год сталкиваются с перебоями в работе и жалобами пользователей. Это тот случай, когда чрезмерная экономия приводит к новым затратам в будущем - скупой платит дважды. Выбранные нами варианты рассчитаны с запасом мощности и возможностью апгрейда. Учтено, что в DELL R710 можно будет добавить еще два жестких диска и ОЗУ, а также заменить процессоры на более производительные.

Так что, если вам потребуется расширение, или количество сервисов увеличится, то тут есть большие перспективы, а существующие серверы еще долгое время будут эффективно выполнять свои задачи. Возможно, через год нам неожиданно потребуется увеличить количество пользователей в два раза, до 60 человек? Пожалуйста.

Если вы использовали один сервер DELL R710, то можно докупить недорогой IBM x3550 M3, поднять на нём гипервизор, перенести туда виртуальную машину с БД и 1С-сервером, а на DELL-е все ресурсы отдать виртуальной машине с терминалом. Это будет быстро, и не потребуется «всё выкинуть и купить новое».
Если же вы использовали два сервера IBM, то x3550 M3 с добавлением второго процессора и небольшого количества ОЗУ превращается из середнячка в довольно мощную машину. А в x3250 M5 можно обновить процессор с E3-1220v3 до E3-1285v3.

Здесь мы с Вами рассмотрим, как настроить 1-C через подключение удаленного рабочего стола (RDP), т.е. с использованием сервера терминалов в операционной системе Windows Server 2003.

Это процедура для тех, кто не использует специальные сервера баз данных предназначенных для 1-c, а просто использует обычную конфигурацию 1-с, расположенную на сервере и подключение к ней посредством локальной сети с указанием пути базы данных. В основном так работают в небольших офисах, и при использовании такого метода подключения 1-C работает достаточно медленно, и именно поэтому я опишу процесс, как можно увеличить скорость работы программы, достаточно простым способом.

Итак, для начала у Вас должен быть хороший мощный компьютер, а лучше всего настоящий сервер с установленной операционной системой Windows Server 2003 и выше. В ней Вы должны настроить сервер терминалов, он настраивается следующим образом:

Пуск->Администрирование->Управление данным сервером ->добавить или удалить роль ->жмем далее ->выбираем особая конфигурация ->напротив сервера терминалов у Вас стоит «нет» просто выделите и жмите далее -> потом произойдет перезагрузка ->далее заводите пользователей в группу «Пользователи удаленного рабочего стола » и можете подключаться (пример более подробной установки и настройки сервера терминалов можете найти в статье — Установка сервера терминалов на Windows Server 2008 ).

Теперь настраиваем подключение на клиентском компьютере, для этого вы запускаете «удаленный рабочий стол » Пуск ->Программы ->стандартные -> подключение к удаленному рабочему столу (RDP клиент ). В появившемся окне в поле «компьютер » или «сервер » пишите IP адрес или имя компьютера, на котором установлен сервер терминалов и соответственно сама база 1-С.

После входа Вас попросят ввести «пользователя » и «пароль » (Вы их уже должны были создать на сервере ). Потом наконец-то у Вас откроется тот самый удаленный рабочий стол. Для начала Вы найдите, где у вас лежит ярлык или exe файл для запуска 1с, скопируйте путь, например он, будет D:\BIN\1cv7s.exe и сохраните его. Потом отключитесь (всегда нужно нажимать пуск->выход из системы т.к. если просто закрыть по X это будет некорректно ).

Далее Вы запустите снова удаленный рабочий стол и нажимаете вкладку «параметры » и заполните поля «пользователь » и «пароль », для того чтобы каждый раз при подключении не вводить. Потом переходите на вкладку программы и поставьте галочку напротив «запуск программы при подключении» и вставьте тот самый путь, который Вы сохранили (в нашем примере D:\BIN\1cv7s.exe ). Смотрим картинки:

Теперь можете подключаться, и уже при этом запуске у Вас запустится программа 1-C, но уже на удаленном компьютере, т.е. сервере. Вам остается настроить всего лишь путь к базе данных. Но помните, что мы находимся на сервере и соответственно база тоже на сервере, и путь мы будем показывать уже локальный, а не по сети.

Если Вы все сделаете правильно, то Вы сами заметите, что скорость работы 1-C увеличится, так как клиентский компьютер уже использует не свои ресурсы, а ресурсы сервера. Данный способ подключения отлично подходит для небольших офисов, в которых в программе 1-C работают примерно 50 человек, честно сказать больше просто не пробовали т.к. народу просто нету.

 

Возможно, будет полезно почитать: