Крупные предприятия уже давно используют 1С в клиент-серверном режиме. А сегодня эта технология активно продвигается в средний и малый бизнес. Эта статья о том, какой должен быть сервер для 1С с небольшим количеством пользователей.
Бесплатный PostgreSQL для 1С появился уже давно. А сравнительно недавно появилась такая замечательная позиция в прайсе 1С:
4601546109019 | 1С:Предприятие 8.3. Сервер МИНИ на 5 подключений | руб | 14400 |
Мы уверенно рекомендуем использовать 1С в клиент-серверном режиме начиная с 3-5 пользователей. Файловый вариант остается для совсем небольших баз и если нет потребности работать в базе из дома, командировок, других офисов, если остаться без 1С в случае сбоя на пару дней совсем не страшно. Мы также считаем работу в RDP устаревшей технологией, которая годится только тогда, когда по каким-то причинам используется платформа старая (8.0 или 8.1) или платформа древняя, так и тянет написать "древнерусская" (7.7). Поэтому все, что написано ниже, относится к варианту "на сервере 1С установлена СУБД и сервер приложений 1С:Предприятие, работа ведется в тонком клиенте 8.2".
Если у вас до 10 пользователей, вполне в качестве сервера можно использовать обычный "домашний" компьютер с некоторыми изменениями. Вполне можно покупать его "по запчастям", и собирать самостоятельно. Если вы нормально разбираетесь в том, что такое термопаста, как защелкнуть разъем питания ATX, не сломав плату пополам, где на ней разъем для кулера, как от частоты памяти зависит быстродействие 1С (почти линейно при достаточных ресурсах) и почему не стоит втыкать жесткие диски вплотную друг к другу.
Брендовый сервер рекомендуем приобретать в том случае, если у вас:
Небольшое уточнение. Под "брендом" мы понимаем IBM, HP и подобные им марки. Любые местные "интеграторы", собирающие силами вчерашних студентов компьютеры на базе серверной платформы Intel "под заказ", с конфигурацией, записанной со слов клиента, брендами не являются. Даже если этот сервер собран в корпусе для установки в стойку. Даже если ему на лицевую панель налепили красивую этикетку. Это самосбор, и у нас есть множество примеров, когда, скажем так, при подборе компонентов сборщики делают ошибки. Например, мы видели, как в серьезном сервере за более чем 300 000 рублей аппаратный RAID-контроллер конфликтовал с материнской платой, и выдавал 15% от заявленной пропускной способности. Видели мы и конфигурации с огромными перекосами, например машину с четырьмя Xeon и единственным дисковым массивом из двух дисков. Обращайтесь за покупкой сервера под 1С к тем, кто понимает, каким он должен быть.
Что важно, сегодня брендовый сервер, гарантированно работоспособный, проверенный и надежный, стоит дешевле самосбора с сопоставимыми характеристиками. Поэтому сэкономить, покупая самосборный сервер среднего уровня, скорее всего не получится. На сегодня самосбор имеет право на жизнь только в сегменте серверов на базе обычных ("настольных") компонентов, то есть, самого начального уровня, которые брендами практически не выпускаются.
Не устраивая священных войн, рекомендуем использовать Windows Server 2012. Это надежная, проверенная платформа для сервера 1С. Другие решения имеют право на жизнь, но, скажем, если вы решили поставить Ubuntu Server, рекомендации вам вряд ли нужны. Да и вряд ли помогут. Linux для 1С каждый раз уникален и общих рекомендаций дать невозможно.
Для серверов начального уровня вполне можно использовать десктопную Windows, например, Windows 7/8. Если вам не нужны Active Directory, RDS, и в качестве СУБД вы не будете использовать MS SQL Server. Нужно только иметь ввиду, что по умолчанию в Windows 7 Professional количество одновременных подключений по TCP не может превышать 20. В Windows 8 это ограничение сняли.
Памяти должно хватать. Если поставить памяти больше, чем нужно, роста производительности не будет. Если поставить меньше, чем нужно, работа пользователей превратится в пытку. Расчет такой: минимум 2Гб под нужды операционки, от 2Гб под СУБД, от 4Гб под сервер 1С:Предприятия. Итого минимум 8Гб. Такого объема вполне хватит для работы 5-10 пользователей с одной базой. На скриншоте типичная картина распределения памяти при неспешной работе нескольких пользователей с одной небольшой базой:
Обратите внимание, как любит сервер приложений 1С (rphost.exe) память. Сразу же после открытия базы ему нужно около гигабайта. При напряженной работе, например, перепроведении документов за месяц, он вполне способен освоить 6Гб при одном-единственном активном подключении. Еще нужно иметь ввиду, что синяя полоска ("Ожидание") это не свободная память, а системный кэш. Вот та же система, в которой начали более-менее интенсивно работать:
У рабочего процесса 1С есть одна особенность. Как правило, он растет в одну сторону. Объем памяти, захваченный rphost.exe, в ходе рабочего дня постепенно растет и растет. Очень рекомендуем перезапускать агент сервера 1С каждую ночь, непосредственно перед выгрузкой бэкапов.
16Гб хватит для работы 20-30 пользователей с двумя-тремя базами. Обязательно нужно настроить максимальный выделяемый объем для сервера 1С:Предприятия (это делается в консоли администрирования) и для СУБД! Если этого не сделать, то, например, Postgree "из коробки" памяти будет использовать всего 200-300Мб. По умолчанию он "задушен". А вот сервер приложений 1С, наоборот, вполне может "съесть" все, сколько не дай.
Во-первых, даже на сервере начального уровня обязательно нужно разнести диск с системой и диск с базами. Далее, если позволяют финансы, добавляем третий диск для хранения большого объема данных (бэкапы и т.д.). Для Postgree обязательно создаем RAM-диск для временного размещения статистики.
Диск для системы вполне можно использовать не самый быстрый и не самый объемный. 500 Гб более чем достаточно.
Диск для баз однозначно SSD. Для баз 1С у обычных дисков и их массивов нет ни малейших преимуществ. При типичном размере базы среднего предприятия 2-3 Гб объема в 120Гб, как понимаете, вполне хватит. А быстродействие, при прочих равных, отличается в 10 и более раз. Ограничения по числу циклов перезаписи уже в прошлом, на сегодня SSD надежнее любого "механического" диска. Обязательно нужно брать SSD с технологией TRIM (дозапись кэша при отключении питания), и нужно внимательно смотреть на заявленную скорость записи, сейчас на рынке много разных вариантов.
Если простои баз и тем более восстановления вчерашней копии из архива недопустимы, нужно ставить RAID-контроллер и два диска в режиме "зеркало". Крайне не советуем использовать программные RAID-контроллеры. Только аппаратный.
Архивирование можно настроить средствами СУБД или написать командный файл, который будет запускаться планировщиком Windows и делать выгрузку баз из пакетного режима 1С:Предприятия. Это не очень важно. Важно, чтобы каждую ночь система автоматически делала архив, и записывала его на отдельный диск сервера. Система архивации, которая требует запуска вручную, является не системой архивации, а ерундой. После создания выгрузок баз очень рекомендуем заливать их в облачное хранилище. Это может быть Google Drive, Yandex Disk, Dropbox или ваш собственный ftp-ресурс. Главное, чтобы эти выгрузки хранились не в том же помещении, где стоит сервер. Почему? Потому что нормальный бизнес должен спокойно перенести все что угодно. Пожар, кражу со взломом, визит из органов с изъятием. Не дай бог конечно, но всякое бывает.
Если все, что можно, уже настроено, а руки чешутся сделать еще что-нибудь, можно перенаправить запись логов Postgree (если у вас он) на отдельный диск. Это даст небольшой, но вполне заметный прирост скорости при активных операциях с базой.
Не экономьте на блоке питания. Никогда. На всем остальном можно экономить в разумных пределах, а блок питания для сервера должен быть идеальным. Сервер отличается от обычного компьютера в первую очередь тем, что включен постоянно. Двукратный запас по ваттам и производитель с именем (Thermaltake, Powerman, Enermax), вот наша рекомендация. ИБП (Источник Бесперебойного Питания) нужен для двух задач. Во-первых, при серьезных скачках напряжения, он должен дать возможность выжить блоку питания сервера, приняв удар на себя (или лучше на свой предохранитель). Во-вторых, он должен корректно выключить сервер при пропадании напряжения в сети. ИБП не должен и не может позволять работать без внешнего напряжения, это иллюзии. Даже 15 минут. Его задача - дать операционке сервера команду на выключение. Поэтому не подключенный и не настроенный ИБП является предметом интерьера, не более того.
Рекомендуем также настроить в BIOS включение сервера при появлении напряжения на входе. Это позволит автоматически "поднимать" его после устранения проблем с электричеством.
При работе 5 пользователей любой "настольный" процессор достаточно высокого класса, например четырехядерный Core i7 в среднем будет загружен на 5-7%. Процессор, как правило, не является узким местом. Он должен соответствовать остальным параметрам, не более того. Поэтому процессор лучше выбирать в последнюю очередь, из подходящих для выбранной системы. Цифровые характеристики (число ядер, размер кэша, частота) не являются определяющими. Например, свежие Core i5 обгоняют Core i7 предыдущего поколения.
В любом случае не стоит для сервера 1С покупать самый мощный и дорогой процессор, который доступен для выбранной платформы (материнской платы). Скорее, оптимальным будет вариант из середины списка, отсортированного по цене.
Не нужно ставить на сервер антивирусное ПО. Это лишнее. Безопасность и отсутствие вирусов обеспечивается тремя правилами:
Не рекомендуем совмещать сервер 1С и файловый, почтовый, прокси и веб сервер. Эти задачи прекрасно решают специализированные устройства и сервисы. Например, роутер Zyxel Keenetic 4G и подобные ему прекрасно умеют раздавать интернет в сети, работать ftp- и файл-сервером. Веб-сервер небольшой и средней компании асболютно точно лучше перенести на VDS в датацентр. Почту туда же, или вообще на Google или Yandex почту для вашего домена.
Безусловно, для hi-end серверных решений это очень востребованная технология. Однако, для предприятий среднего размера (20-50 пользователей) преимущества виртуализации далеко не очевидны, а для небольших компаний ничего кроме головной боли не дают. Во-первых, виртуализация серверов не бесплатна, и на нее тратятся ресурсы машины. Во-вторых, все преимущества "настройки производительности на лету" и "мобильности" разбиваются об кучу проблем с потерей программных лицензий 1С в случае любых изменений. В-третьих, делить-то по большому счету нечего (ресурсов немного), да и несколько серверов такому предприятию просто не нужны. Арендовать же виртуальный сервер в датацентре под 1С на сегодня рискуют очень немногие предприятия, да и в таком случае лучше не арендовать сервер, а подключиться к сервису "1С Онлайн".
На момент написания этой статьи примерная стоимость сервера:
При большем количестве пользователей уже становится необходимым разносить сервер СУБД и сервер приложений на разные физические машины.
По вашему запросу мы, совместно с нашими партнерами, можем подобрать и поставить как брендовый сервер производства IBM, так и сборный сервер начального уровня.