Работаем в 1с на терминальном сервере. Преимущества, которые дает терминальный сервер

Организация эффективной совместной работы посредством Терминального сервера 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С на ;
  • подключение пользователей;
  • составление инструкции по подключению новых пользователей;
  • сопровождение системы в первые два месяца эксплуатации

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

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

Итак! Установив Windows 2003 заходим Administrator `ом. Если всё сделано правильно - перед нами окно "Manage Your Server" и никаких (!) сообщений об активации.

Добавляем роль "Сервера терминалов"

Список "ролей" (теперь это так называется;-) нашего сервера пуст. Добавляем роль нашему серверу. Компьютер симулирует поиск чего-то там по локальной сети, и предлагает нам выбрать: между той ролью, которая нужна нам по ЕГО мнению и той, которая нужна по ВАШЕМУ мнению. Поскольку в искусственный интеллект и прочие сказки мы с вами уже не верим, да и своё мнение нам как-то дороже, то выбираем: Сustom .

В появившемся списке ролей выбираем Terminal Server , и нажимаем Next . Снова нажимаем Next , а затем OK - подтверждая свою готовность перегрузить компьютер.

После перезагрузки заходим под Administrator `ом, и говорим установке сервера терминалов Finish . Теперь: в окне Managing your computer появилась роль: Terminal Server . Однако ниже сказано, что: "Поскольку сервера терминальных лицензий не найдено, то сервер терминалов будет выдавать временные лицензии на соединение, каждая из которых закончит своё существование через 120 дней" .

Такая ситуация нас никак не устраивает, поэтому мы устанавливаем сервер терминальных лицензий. Для этого заходим в Пуск? Панель управления ? Установка и удаление программ ? Компоненты Windows . Ставим галочку напротив пункта Terminal Server Licensing . Hажимаем Next . Затем Finish .

Активация Сервера терминалов:

Теперь у нас установлен сервер терминальных лицензий. Hо его ещё надо активировать! .

Если есть корпоративный прокси, его следует прописать в Панель управления? Hастройки интернет .

Заходим в Администрирование ? Terminal Server Licensing . Видим, что найденный на нашем компьютере сервер находится в состоянии Not activated .

Щелкаем правой кнопкой, говорим Activate server . Выбираем тип подключения Automatic . Вводим свои личные данные (имя, фамилию, организацию, страну - строго те, которые были введены при установке Windows). Следующую страничку (E-Mail, адрес) я оставил пустой. Hажимаем Next, и ждём.

Активация должна пройти успешно. Непонятным, какой смысл, Microsoft закладывала в эту активацию? Зачем она нужна кроме сбора статистики? После успешной активации вам будет предложено добавить лицензии. Продолжаем.

Запустится Client Access License (CAL) Activation Wizard , который первым делом снова полезет в Microsoft. После чего спросит тип лицензии, которую желаете установить. Я выбрал Enterprise Agreement , и следующим этапом у меня спросили магическое число.

Теперь нужно указать продукт - Windows 2003 Server . Тип лицензии - per Device . Лицензия инсталлировалась отлично. Закрываем окно Terminal Server Licensing .

Получаем результат примерно такой:

Hастраиваем сервер

Из папки Администрирование вытаскиваем на рабочий стол ярлычки Computer Management и Terminal Server Manager . Это не обязательно, но так намного удобнее.

Заходим в Computer Management , создаём группу/группы пользователей .

Для этого идем в Администрирование? Terminal Services Configuration . В настройках Server Setting снимаем ограничение "Restrict each user to one session" . В списке Connections выбираем соединения и настраиваем их Properties :

Закладка Client Settings :

Заменяем настройки пользователей в отношении дисков и принтеров собственными:

  • подключать всё (то есть верхняя галочка должна быть снята, а три следующие должны быть активными и установленными);
  • Ограничить глубину цвета до 16 бит;
  • Запретить переадресацию LPT, COM, Audio портов.

Закладка Permissions(Разрешения) :

  • Добавляем созданные группы пользователей и ставим им права: Guest Access + User Access , я поставил полный.

Закладка Remote Control(Удаленное управление):

  • Use remote control with following setting(Использовать управление со следующими параметрами):
  • Require user`s permission (снимаем галочку);
  • (o) Interact with the sessio.

Закрываем Terminal Services Configuration . Далее делаем следующее:

    Заходим в My computer.

    Говорим Propetries на диске C:

    Переходим на закладку Security

    Говорим Advanced...

    Удаляем права, позволяющие группе Users создавать папки и файлы.

Заходим с Панель управления? Система. Закладка "Автоматическое обновление" . Отключаем всё автоматическое обновление напрочь.

Заходим в Администрирование? Local Security Settings ? Account Policies ? Password Polisy . Устанавливаем "Maximum password age" = 0 - так удобнее.

Заходим в Computer Management , добавляем себя в качестве пользователя.
Hе забываем:

  • Password never expires
  • Добавить себя в группы пользователей 1С.
  • Снять галочку "Require user`s permission" на закладке "Remote control"
Подключаемся к серверу:

Пробуем подключиться с другого компьютера к серверу терминалов. Для этого нам нужно установить на компьютер клиент. В составе XP такой клиент уже есть: "Пуск? Программы ? Стандартные ? Связь ? Удаленное управление рабочим столом" .
Однако, даже на XP его стоит переустановить: клиент в составе Win2003 Server будет все-таки поновее.

Клиент находится в папке: C:\WINDOWS\SYSTEM32\CLIENTS\TSCLIENT . он поддерживает установку и на Windows 98. Установите его на всех машинах, с которых хотите работать на сервере терминалов.

После запуска клиента нажмите кнопку "Options(Опции)" . Для пользователей лучше применять следующие настройки:

Закладка "Общие" :
  • заполнить поля компьютер, имя пользователя, пароль
  • домен (если сеть с доменами - имя домена, если без доменов - имя сервера)

Закладка "Экран" :
  • рабочий стол - во весь экран;
    цветовая палитра - 16 бит.

Закладка "Локальные ресурсы" :

звук - не проигрывать;
клавиши - только в полноэкранном режиме;
автоматически подключаться к дискам и принтерам - Как Вам угодно.

Закладка "Дополнительно":
  • скорость - модем 28.8 - должна остаться одна галочка - кэширование графики.

Теперь эти настройки можно сохранить в файл с расширением RDP . Обратите внимание на галочку "Сохранять пароль" на закладке "Общие" . Для операционных систем Win2000 и WinXP эта галочка доступна. Для других - нет. К сожалению, пользователи Win9x лишены возможности сохранять пароль в RDP файле - поэтому настройте ваших пользователей Win9x , что кроме пароля на им придётся набивать пароль на Windows .

Как поступить с этим паролем - дело ваше. Можно назначить всем один пароль, можно сгенерировать свой пароль для каждого пользователя. Однако, вам крайне желательно знать пароль каждого пользователя - это пригодится для удалённого присоединения и администрирования сессий.

Hастроив должным образом соединение, убедитесь, что оно работает, и если хотите сохраните его в RDP -файл (можно прямо на рабочий стол).

Установка ПО:

Из личного опыта могу сказать, что на сервер стоит устанавливать как можно мешьше ПО. Ставить лучше только самое необходимое, так как от колличества программ и нагруженности процессора зависит скорость работы с сервером.

Я бы ограничился установкой на сервер следующего софта:

  • Total Commander;
  • WinRAR;
  • Office XP RUS;
  • Антивирус;
  • ПО для поддержки БД(например MySQL).

Весь софт устанавливался правильно - то есть через Панель управления. Из Office я поставил только Word, Excel и Access. Отключил такие вещи как Binder и Панель_Office.

После этого осталось зайти в "C:\Documents and Settings\Administrator" и "C:\Documents and Settings\All users" и подкорректировать содержимое папок

  • \Start men;
  • \Start menu\Programs;
  • \Start menu\Programs\Startup;
  • \Deskto.

на предмет лишних ярлыков.

Устанавливаем 1C:Предприятие:

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

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

Проверяем доступа на папку с базами :

  • Правой кнопкой мыши Propetries(Свойства) ? Security(Безопасность) ? Advance.
  • все права должны наследоваться с корня диска: Administrators, SYSTEM и Владельцы должны иметь "Full Control" , группа - права "Read & Execute.
  • Добавляем права для соответствующей группы пользователей (которой принадлежит эта база). Ставим все галочки, кроме:
    Full Control, Delete, Change Permissions , Take Ownership (для "This folder, subfolders and files")
  • таким образом, в списке прав появится наша группа с правами "Special"

Маленький секрет: если вы хотите, чтобы кто-нибудь кроме Administrator`а мог выполнять сохранение какой-либо из баз , вам надо дать этому человеку права записи на файл C:\Program Files\1Cv77.ADM\BIN\1CV7FILE.LST .

Конфигуратор, при вызове команды "Сохранить данные" пытается открыть его на чтение и запись, даже если вы не хотите менять список сохраняемых файлов. Поэтому имеет смысл создать группу 1C-Admins , членам которой разрешить доступ на этот файл:

  • правой кнопкой мыши? Propetries ? Security ? Advanced
  • добавляем права для группы 1С-Admins: Ставим все галочки, кроме: Full Control, Delete, Change Permissions, Take Ownership

9. Ключ защиты

При первом запуске 1С вы можете столкнуться с тем - что 1С не захотело воспринимать свой железный ключ защиты. При запуске долго думает, а потом пишет: "Hе найден ключ защиты" - и вываливается.

Хотя от других людей о подобных проблемах я не слышал. Вам поможет установка эмулятора драйверов HASP. Но это уже другая история!

Сегодня мы рассмотрим выбор серверного «железа» для небольшой организации на 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С с находящейся на файловом сервере единой базой возникает ситуация, когда функционирование программы замедляется. Проверка работы сети, обновление компьютеров по рекомендации системных администраторов не дают ощутимых результатов: по-прежнему долго выстраиваются отчеты, кроме того, 1С при сетевом доступе не позволяет осуществлять такие операции с документами, как проводка или запись по причине «ожидания захвата таблицы».

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

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

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

Преимущества установки терминального сервера для 1С


Значительно увеличивается скорость работы с 1С

При использовании терминального сервера 1С нет необходимости в передаче больших объемов данных через сеть, пользователь получает только нужное ему рабочее окно 1С. Таким образом, терминальный сервер работает, а пользователь получает только результат. На практике при переводе в терминал скорость работы программы 1С увеличивается от двух до десяти раз.

Повышается надежность функционирования баз данных 1С

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

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

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

Терминальный сервер 1С способен обеспечить удаленный доступ через Интернет ко всем данным

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

Появляется возможность сэкономить на конфигурациях ПК пользователей

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


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

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

Windows 7