Собрать сервер для 1с
Инструкция по настройке рабочих серверов с Технологической Платформой 1С:Предприятие
Ниже приводится инструкция по настройке рабочих серверов с Технологической Платформой 1С:Предприятие.
Рекомендуется при настройке рабочего сервера пройти указанный ниже сheck-лист и продумать, нужна ли указанная ниже настройка в вашем конкретном случае.
Если такая настройка нужна, то выполнить её. Важно на каждом пункте сознательно принимать решение о том, как именно вы хотите настроить рабочий сервер.
1. Определить, сколько информационных баз будут использоваться в кластере для работы пользователей
Существует несколько вариантов развертывания:
- в продуктивной среде и подготовительной зоне;
- в тестовой зоне;
- в зоне разработки.
Наибольшие требования с точки зрения доступности информационной системы будут в случае развертывания в продуктивной и подготовительной зонах.
В этих случаях желательно все нерабочие информационные базы вынести в отдельный кластер на отдельные серверы.
Возможно, возникнет желание сделать копию рабочей информационной базы и развернуть в том же кластере в продуктивной среде, например, для того, чтобы восстановить определенные данные за прошлые сутки. Стоит перебороть это желание и проследить, чтобы
- к копии базы не было доступа у пользователей;
- в копии базы были выключены регламентные задания;
- копия базы не участвовала в обменах.
Для восстановления данных за предыдущие сутки не стоит использовать продукционный кластер, а получать необходимые данные с подготовительной зоны информационной системы.
Рекомендуется в продуктивной зоне настраивать кластер с минимальным числом необходимых баз, чтобы снизить возможное влияние тестовых баз на работу пользователей.
В тестовой зоне и зоне разработки ограничений по числу информационных баз в кластере условно нет.
2. Определить, сколько пользователей будет работать одновременно
Число одновременно работающих пользователей информационной базы является одним из основных параметров, определяющих нагрузку на информационную систему.
Этот параметр также необходим для корректного расчета конфигурации оборудования, который выполняется исходя из
- Конфигурации системы;
- Сценария работы пользователей;
- Числа одновременно работающих пользователей;
- Используемых версий программных продуктов.
3. Настроить профили пользователей ОС, от которых будут запускаться процессы кластера
Необходимо определиться, будут ли процессы кластера серверов работать от имени различных пользователей информационной системы.
Это может быть необходимо для того, чтобы код, который выполняется в rphost точно не мог обратиться к каким-либо определенным данным на рабочем сервере или выполнить операцию с административными правами.
Для этого нужно:
Для того, чтобы создать профили пользователей ОС достаточно один раз войти от их имени в ОС Windows.
4. Настроить логирование и дампы
Для этого необходимо настроить:
- Технологический журнал
- Сбор дампов процессов кластера средствами Платформы (указнием в logcfg.xml секции dump) либо Windows Error Reporting Services
Хорошей практикой будет настроить сбор WER для rmngr и ragent, но не указывать rphost.
5. Проверить настройки операционной системы
5.1. Настроить рабочий сервер
5.2. Настроить рабочий сервер
Необходимо настроить рабочий сервер в соответствии с инструкцией, которая позволяет избежать ошибки "An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full"
5.3. Убедиться, что брадмауэр операционной системы настроен таким образом, что не запрещает процессам кластера взаимодействовать корректно.
Информация по клиент-серверному варианту работы здесь;
Обратите внимание на используемые порты, которые указываются в параметрах центрального сервера,
в свойствах кластера серверов,
и рабочих серверов кластера.
--port или -p указывает сетевой порт, по которому утилита администрирования будет взаимодействовать с сервером администрирования. Значение по умолчанию равно 1545.
5.4. Убедиться, что на рабочих серверах кластера одновременно не используется IPv4 и IPv6.
5.5. Убедиться, что схема управления питанием - "Высокая производительность".
5.6. Убедиться, что установлены компоненты Microsoft Data Access Components
Этот пункт нужен для настройки с СУБД MS SQL Server.
В противном случае будете получать ошибку вида: "Компоненты OLE DB провайдера не найдены".
6. Необходимо настроить сетевой стек для обеспечения возможности обработки большого числа подключений
Настройки, которые необходимо выполнить (в дополнение к настройке 5.2. Настроить рабочий сервер в соответствии с инструкцией):
- Запустить regedit и в ветке HKLM\System\CurrentControlSet\Services\Tcpip\Parameters указать
- MaxFreeTcbs= 100000
- TcpTimedWaitDelay= 30
- MaxUserPort= 65535
- EnableDynamicBacklog= 1
- MinimumDynamicBacklog= 20
- MaximumDynamicBacklog= 20000
- DynamicBacklogGrowthDelta= 10
- Выполнить: netsh int ipv4 set dynamicport tcp start=10000 num=55536
- Выполнить: netsh int ipv4 set dynamicport udp start=10000 num=55536
7. Настроить кластер серверов
7.1. Необходимо добавить рабочие серверы в кластер
7.2. Настроить условия перезапуска
Настроить условия перезапуска по превышению порога памяти.
7.3. Настроить расположение каталога кластера
Необходимо убедиться, что
- на дисках достаточно места;
- сеансовые данные расположены на быстрых дисках;
7.4. Настроить число соединений и информационных баз на процесс
Настройку необходимо выполнить с учетом конфигурации системы
Постарайтесь выполнять настройку таким образом, чтобы она не приводила к запуску 100 процессов rphost, т.к. значительное число процессов rphost приводит к неэффективному использованию памяти процессами кластера.
Не стоит просто так уменьшать параметр "Число соединений на процесс" или "Число информационных баз на процесс".
Если у вас нет технического обоснования, почему именно так лучше, рекомендуем оставить значения по умолчанию
7.5. Выполнить настройки для случая нескольких рабочих серверов в кластере.
- Обязательно должно быть явно указано расположение:
- сервиса журнала регистрации;
- сервиса полнотекстового поиска данных;
- сервиса работы с внешними источниками данных;
- расположение клиентских и серверных лицензий и сервисов лицензирования;
- расположение сеансовых данных.
8. Первый запуск
На этом этапе следует выполнить следующие шаги:
- Запустить кластер серверов, создать информационную базу;
- Зарегистрировать программные лицензии;
- Убедиться, что пользователь может войти в информационную базу без ошибок.
9. Отказоустойчивость
В случае необходимости настройки отказоустойчивого кластера, выполните следующие шаги.
9.1. Проверить лицензии.
Убедитесь, что на рабочих серверах, которые должны выполнять роль Центральных серверов достаточно лицензий для работы всех пользователей в информационной системе при отсутствии одного из Центральных серверов в случае возможного (теоретически) отказа.
9.2. Установить флаг "Центральный сервер".
Установить флаг как на рисунке ниже.
9.3. Установить флаг "Уровень отказоустойчивости"
Установить параметр, пример на рисунке ниже.
Подробную информацию про уровень отказоустойчивости вы можете прочитать в статье
Обратите внимание, что не нужно просто так указывать максимально возможный уровень отказоустойчивости, т.к. это приведет к избыточным накладным расходам.
9.4. Скорректировать строку соединения
Необходимо скорректировать строку соединения с информационной базой.
Имеется возможность указания списка резервирования с помощью строки соединения с информационной базой или в соответствующем поле свойств информационной базы.
Список указывается в формате Server1, Server2:Port, Server3.
10. Замечания
10.1. Не настраивайте exec backup (или аналогичные утилиты) на директории кластера серверов
Причина в том, что в этих директориях могут располагаться хранилища с сеансовыми данными, выполнять backup которых не нужно, а создание backp-а которых будет приводить к избыточным накладным расходам.
10.2. Не настраивайте сжатие данных дисков с директорией кластера
10.3. Не забывайте про периодическое выполнение дефрагментации дисков ОС Windows.
10.4. Настроить защиту от вирусов.
В случае расположения рабочих серверов кластера в зоне, к которой доступ строго ограничен, не имеет смысл настраивать антивирусные решения на рабочих серверах.
Настройка антивирусных решений на таких серверах будет оказывать существенное влияние на производительность при практическом отсутствии выигрыша с точки зрения защиты.
При этом, стоит обеспечить защиту антивирусными решениями те пользовательские компьютеры, с которых выполняется доступ к рабочим серверам кластера и сетевым директориям.
В этой статье мы расскажем про особенности проектирования, создания и выбора сервера под 1С. Нам не раз приходилось подбирать серверы для компаний различной величины и с самыми разнообразными задачами, поэтому мы изучали этот вопрос особенно тщательно и теперь хотели бы поделиться накопленным опытом.
Скорее всего, сразу понятно, почему так важно грамотное проектирование сервера для 1С – если “железо” изначально подобрано неправильно и не соответствует нагрузке на систему, то есть риск, что 1С будет тормозить или вообще работать с перебоями, что потеряются важные данные. С другой стороны, создать сервер под 1С, купить для него все аппаратное и программное обеспечение может стоить ощутимую для компании сумму, поэтому желательно подбирать оборудование так, чтобы избежать лишних затрат.
Выбор сервера для 1С
Когда нашим специалистам нужно сделать выбор конфигурации для сервера 1С, первое, о чем они спрашивают – сколько пользователей будет работать с 1С в компании и какой набор сервисов планируется использовать, какими будут задачи 1С сервера, кто и как будет выполнять администрирование серверов 1С. От этих сведений мы и отталкиваемся при создании сервера 1С.
Требования к серверу 1С
В аппаратной структуре 1С сервера для нас будут важны характеристики процессора, оперативной памяти, дисковой подсистемы и сетевые интерфейсы.
Необходимо, чтобы они обеспечивали стабильную и достаточно производительную работу следующих компонентов:
- операционная система;
- сервер баз данных (чаще всего это MS SQL Server);
- серверная часть 1С (не для всех случаев, так как маленькая компания на 2-10 пользователей может работать с 1С в файловом режиме);
- работа пользователей в режиме Remote Desktop;
- работа удаленных пользователей через тонкий клиент или веб-клиент.
Выбор процессора для сервера 1С
Обратите внимание, что скорость обработки запросов зависит не столько от числа ядер, сколько от тактовой частоты процессора, а число ядер больше влияет на стабильность работы при большом количестве пользователей и одновременных заданий от них.
Сколько памяти нужно серверу 1С
В дополнение к сказанному, если вам нужен сервер под 1С на 100 и более пользователей, мы рекомендуем разворачивать кластер из как минимум двух физических серверов 1С.
Размер необходимой оперативной памяти мы предлагаем считать, исходя из таких показателей:
- 2 Гб потребуется под работу операционной системы
- минимум 2 Гб под работу кэша MS SQL Server, а лучше чтобы эта величина составляла 20-30% реального объема базы данных – это обеспечит комфортную работу пользователей с ней
- 1 – 4 Гб для сервера приложений 1С
- 100 – 250 Мб потребует одна пользовательская терминальная сессия, в зависимости от набора функций сервера 1С, используемой конфигурации
Приведем свои ориентировочные расчеты параметров сервера 1С 8.3:
Оперативную память лучше приобретать с запасом – это один из важнейших факторов высокой производительности 1С-сервера и в то же время это сейчас один из самых дешевых компонентов. Если недостаточно памяти на сервере 1С Предприятия, это будет очень ощутимо при работе, поэтому, когда стоит вопрос, какой сервер 1С выбрать, всегда обращайте внимание на то, чтобы у него был достаточный объем RAM.
Сервер 1С: оборудование для дисковой подсистемы
Выбирая, какой сервер нужен для 1С, следует помнить, что во время работы пользователей с ним будет выполняться множество операций чтения и записи данных в секунду. Этот параметр – с какой скоростью жесткий диск позволяет обрабатывать данные – также является одним из ключевых для быстродействия сервера 1С.
При проектировании сервера 1С, требования к оборудованию дисковой подсистемы мы советуем соблюдать такие:
- Неважно, какой сервер для 1С вы создаете, мы ни в каком случае не советуем использовать одиночные диски в серверах – желательно организовывать их в RAID-массивы (RAID 10 для больших или RAID 1 для небольших баз данных), где будут находиться таблицы БД.
- Файлы индексов рекомендуем выносить на отдельный SSD для более быстрого доступа к ним
- TempDB — на 1-2 (RAID 1) SSD.
- ОС и данные пользователей помещайте на RAID 1 из SSD/HDD.
- Под log-файлы отведите отдельный логический диск из массива или физический диск SSD.
- По возможности используйте аппаратный контроллер – нам приходилось видеть ситуации, когда мощный и дорогой сервер тормозил из-за недостаточной производительности контроллера.
Подбор сервера для 1С
В этой статье мы привели некоторые советы и приблизительные расчеты, как выбрать сервер для 1С, надеемся, они окажутся полезными для вас.
В заключение добавим еще одно – не стоит пытаться сэкономить, используя пользовательский компьютер для сервера 1С (как часто делают в маленьких компаниях) – пользовательское “железо” куда менее надежно и отказоустойчиво, чем аналогичное по производительности серверное. Не стоит рисковать учетной системой своего предприятия. Если приобретение подходящего аппаратного обеспечения не укладывается в ваш бюджет, возможно, следует рассмотреть возможность развернуть 1С в облаке
Если вам сложно сориентироваться, какой сервер выбрать для 1С предприятие 8.3, как сделать сервер 1С, потому что вы не сталкивались с этой задачей раньше, вы всегда можете обратиться к компании-системному интегратору, чтобы опытные технические специалисты помогли вам спроектировать, купить, установить и настроить подходящий вам сервер для 1С.
В офисе просили подготовить сервер для 1с предприятие.
Сказали только системные требования машины:
4 ядра (2200 МГц) и 8 г озу.
В связи с этим появляется несколько вопросов.
Что лучше выбрать в качестве сервера? Обычный пк или сервер?
Можно ли купить обычный компьютер и установить на него Microsoft server 2012?
Ubuntu шеф не хочет даже рассматривать.
Насколько оправдана покупка, например, такого сервера?
(не лучший готовый вариант, т.к. один жесткий диск, следовательно невозможно организовать raid 1)
Что нужно еще устанавливать на сервер для корректной работы 1с?
Как лучше организовывать бэкапы?
Нужен ли для этого еще один сервер или можно обойтись, например, компьютером бухгалтера?
Также помимо бухгалтера планируется работа с 1с еще нескольких сотрудников (до 6 человек, включая бухгалтера).
Все сотрудники будут находится в пределах одной сети и одного офиса.
До этого организовал прекрасно работающий почтовый сервер в облаке на Digital Ocean.Странный подход указать частоту процессора и память. А сколько ядер, какого типа процессор?
Нужно исходить из размера баз, количества пользователей и интенсивности работы.
Бюджет какой, нагрузка какая, в конце концов - конфа какая?Под ваше описание сервер от ibm не нужен, тем более с одним винтом.
1С очень любит быструю память, чем ниже тайминги, тем лучше. Еще 1С очень любит высокую частоту процессора, и чем быстрее процессор будет обращаться к памяти, тем лучше.
Я бы взял обычный процессор i7-6700K на 4Ггц и добавил бы к нему ddr4. Если базы помещаются на бытовые ssd диски, то два таких диска в зеркало и в путь. Диски не обязательно серверные типа Intel, вполне подойдут Kingston KC300, они заявляются производителем как "серверные", но стоят денег как бытовые.
Ставить больше двух ssd есть смысл только для увеличения объема, обычные raid-контроллеры не раскроют потенциал рейда скажем на 6 ssd.
Под архивы в тот же сервер воткнуть sata диск на 2-4 тб, можно два таких в зеркало. Плюс копировать архивы на другой ПК или в облако, если позволяет объем.Сервер БД - только MS SQL. Скорость рабты одной базы на postgres и ms sql у меня отличалась в два-три раза.
Памяти в сервак напихай как можно больше, как минимум её должно быть больше, чем размер самой большой и нагруженной базы. Память будет нужна в первую очередь серверу БД под кэш.
Сервер бд и сервер 1С лучше разместить на одной машине, т.к. 1с шлет множество мелких пакетов в сеть, на обычном железе выгода по скорости будет заметна.Бэкапы, в случае ms sql, организуются элементарно средствами скуля. Я бы делал полную копию БД каждый день, не заморачиваясь разностными архивами. По мере заполнения хранилища архивов просто прореживайте архивы.
Если есть ИТС, можно делать выгрузку архива в облако из самой 1С средствами конфигурации, если у вас 1С 8.3 и последние версии конфигураций.Ещё лучше предусмотреть работу бухгалтеров в РДП сессии, докупите лиц к винде. Удобно обновлять клиентов, тормозить работу и прочие прелести.
Сайпутдин Омаров: на 6-8 пользователей с одной базой бухни нет смысла тратить деньги. лучше эти 20-30 т.р. добавить к серверу и поставить проц получше или памяти побольше. Или даже купить 1 pci-e ssd, разница по IOPS по сравнению с обычными SSD будет очень заметна.
(грубо 6 чел * 5 т.р. за лицензию = 30 т.р.)Сайпутдин Омаров: если клиентов будет больше десяти, то да, конечно есть смысл. но не факт что именно ms rdp
handbrake: у нас с первого пользователя привыли к такому. Так все зависит от специфики деятельности. Можно и mssql express. Согласен с использованием ССД, но только для девайсов\даты базы,опять же каков объём? Цена ведь от этого растёт. Незнаю от куда мнение на счёт проца, но она и на2,4 xeon будет себя прекрасно чувствовать. А контора всякая на перспективу, и менять схему работы болезненное дело. При базовой конфе много уже сказано.
Сайпутдин Омаров: про частоту процессора - посмотрите зависимость попугаев в искусственных тестах, например Гилёва. На инфостарте обсуждалось, прирост попугаев от частоты очень заметен.
Получилась следующая конфигурация
1. Материнская плата ASUS Z170-K
2. Процессор Intel Core i7-6700K
3. Ram DDR4 8GB Kingston KVR21R15S4/8 (2x)
4. Ssd Kingston SKC300S3B7A/240G (1x)
5. Жесткий диск Seagate ST1000VX000 (2х)
6. Корпус Cooler Master COSMOS SE (COS-5000-KKN1) w/o PSU Black
7. Блок питания Chieftec GPS-650AB A 650Wnichvlas: я бы поставил 2 ssd в зеркало под систему и базу, и один sata для архивов. Корпус можно обычный, тыщи за три. Лишь бы в корпусе было место для установки доп. вентиляторов, а разницу в цене корпусов добавь на второй ssd :)
В целом ок.nichvlas: если бюджет позволяет, бери 2*240 ssd. на 120 лучше только ценой :) 2ssd в зеркало значит 2 диска в raid1.
nichvlas: raid5 не рекомендую использовать где-бы то ни было. Систему лучше тоже на ssd положить, можно вместе с базами, хоть так и не рекомендуют. Мало-ли когда виндовсу захочется что-нибудь записать в файл подкачки. За ресурс ssd можно не переживать - к тому времени когда он станет критичным, всё уже морально устареет.
Сколько обычно занимают такие базы? Или все индивидуально? Получается жесткие диски использовать только под бэкапы?
nichvlas: брать внешнюю сетевуху необходимости нет, достаточно чтобы был гигабит по офису. Если хочется, возьмите внешнюю сетевуху от Интел.
Сколько занимают бэкапы - смотрите сами на размер каталога, где лежит БД, грубо говоря, столько же займет и бэкап.
Да, жесткие только под бэкап.
Вообще, размер БД важно знать заранее, вдруг у вас там база на пол-терабайта и горячих данных 50%. Тогда всё будет по-другому.Начальник сообщил, что объем баз 1с - 5 gb максимум. Мне кажется, что мощность выбранной машины излишняя?
nichvlas: если никакого развития не планируется, то излишняя. ставьте любой core i5-i7, 16Гб памяти , два ssd на 120гб и один hdd для архивов. в файловом режиме будет жить нормально. если бы вы изначально сказали, что базы 5гб и 6 пользователей, можно было всего этого флуда избежать.
У нас на i3 с 4 гигами озу по сети и wi-fi база 5 гб на 5-6 человек работает и кушать не просит. главное лицензию взять правильную для обновременной работы в 1с
А вы не думали взять 1С в аренду, которая будет расположена в облаке у поставщика услуг? В этом случае у вас не будет головной боли на счет железа, бекапов и всех необходимых лицензий.
Для 6-ти человек хватит и половины указанной конфигурации(если они, конечно, не разработчики).
> Что лучше выбрать в качестве сервера? Обычный пк или сервер?
Серверное железо надёжнее и производительнее, но и дороже. Если есть средства - лучше, конечно, на нём организовывать - но стоит ли покупать компьютер за несколько килобаксов только для развёртывания 1С для нескольких бухгалтеров, которые раз в месяц будут обеспечивать пиковую нагрузку, а в остальное время неспешно отправлять платёжки?> Можно ли купить обычный компьютер и установить на него Microsoft server 2012?
Безусловно, и серверная ось вовсе не обязательна.> Ubuntu шеф не хочет даже рассматривать.
Целиком его поддерживаю(я не ubuntu-фоб, но не стоит пихать десктопную ось куда ни попадя, и навешивать на неё лишние функции). Для никсового сервера - Debian, FreeBSD. Кому скучно - Gentoo или Ubuntu.> Насколько оправдана покупка, например, такого сервера?
(не лучший готовый вариант, т.к. один жесткий диск, следовательно невозможно организовать raid 1)
Снова вопрос - эту конфигурацию хоть на 10% загрузят? Основная нагрузка будет раз в месяц и в основном на проц/оперативку.> Что нужно еще устанавливать на сервер для корректной работы 1с?
Ничего лишнего, это трата ресурсов. Главное - Сеть. Первым делом проверить, чтобы линк был гигабитным - иначе никакое железо не спасёт. Никаких хабов или свитчей-соток. Прозвонить и переобжать витую.> Как лучше организовывать бэкапы?
SQLAndFtp - достаточно.> Нужен ли для этого еще один сервер или можно обойтись, например, компьютером бухгалтера?
Неужели нет отдельного сервера - файлопомойки с самбой и массивом для "особо важного"? В любом случае, хранение бэкапов на одном диске с бухгалтерскими "игрушками" или другими сервисами - зло(хранить бэкапы на одном диске с базой - вообще бессмысленно) - всего один запуск vault - и можно идти в аптеку: за корвалолом для директора/буха и вазелином для себя. Два "красных" двухтерабайтника от двухбуквенного производителя на данный момент обойдутся примерно в 14к деревянных - но спокойствие дороже. Кстати, не будет лишним арендовать VPS или облако за пределами РФ и периодически закидывать туда запароленные архивчики. Помимо этого, сервер пригодится и для других целей.> Также помимо бухгалтера планируется работа с 1с еще нескольких сотрудников (до 6 человек, включая бухгалтера).
Не страшно.> Все сотрудники будут находится в пределах одной сети и одного офиса.
Ну, значит, VPN не потребуется :) Не забудьте настроить файрвол.сервер/не сервер: может предрассудок, но серверному ПО - сервер; другое качество железа, большая производительность, возможности к расширению
по поводу конфигурации сервера - согласен с handbrake, расписано дельно
по поводу базы данных: 6-8 человек - пограничное количество, когда уже рекомендуется использование MSSQL, но еще можно работать на файловой базе. Если нет спецов по MSSQL, начните с файловой, почувствуете проблемы с производительностью базы - переходите на MSSQL. Кстати, если работать с MSSQL, рекомендую разносить файлы баз данных и логи транзакций на разные дисковые массивы - производительность возрастает ощутимо. Еще, для MSSQL, настоятельно рекомендую ознакомиться и реализовать.
бэкапы: для файловой используйте встроенные средства 1С - там есть весь нужный функционал (но потребуется, чтобы все пользователи вышли из системы); для MSSQL базы - встроенные средства СУБД, они быстрее 1С-ных и не требуют выгонять пользователей. Бэкапы всегда лучше хранить на отдельном устройстве с RAID массивом (подойдет сетевое хранилище от WD на пару дисков с поддержкой RAID1). Не надо отдавать хранение бэкапов на откуп пользователюSQL базы ставь, файловые геморрой. А сервер можно и на обычной винде понять, лишь бы железо тянуло , ставь ssd кстати, будет открываться за пару секунд
бывает такое что при множественных подключениях к файловой базе происходит блокировка базы и кто то не может провести какой нибудь документ и начинает звонить админу.
За последнее время несколько раз слышал вопросы о сервере для 1С (иногда это были просьбы посмотреть собранный конфиг). И довольно часто сталкивался с неоптимальной конфигурацией. В этой статье предлагаю разобраться каким же должен быть сервер для работы в 1С для максимальной производительности. Опытные волки вряд ли найдут в статье что-то новое (тем не менее, если будете читать, буду рад дополнениям и уточнениям), а вот начинающим специалистам явно будет полезно.
Для начала предлагаю выделить несколько сценариев работы:
1.) Работа с файловой базой через общий ресурс (веб-сервер)
2.) Работа с файловой базой в терминале
3.) Работа с серверной (MSSQL) базой
Работа с файловой базой через общий ресурс (веб-сервер)
Здесь всё довольно таки просто. Если это обычные формы и 1-3 пользователя. То на "сервер" (машина, на которой будет лежать база выбираем:- быстые винты - обращаем внимание на скорость вращения шпинделя (берем 7200rpm). Например, не берем у WD серию green, берем black или red. У Seagate можно посмотреть серию Constellation.
- Процессор - не столь важны ядра, как их частота. 1С довольно таки плохо использует многоядерность(вообще никак), поэтому выгоды от 8ми ядерного процессора вы не получите, 2ух-ядерный процессор с бОльшей частотой уделает его. Например, core i3 4360 - на текущий момент это максимальная частота у intel (4ghz в turbo режиме).
- Оперативная память - роли она тут не сыграет. Учитывая как современные приложения пожирают память, поставьте 8гб
- сеть - ну собственно, от 1гбит сети особо вы не выиграете, но тем не менее, если растянута 8ми жильная витая пара (можете посмотреть в коннекторах), то имеет смысл поставить гигабитный коммутатор, заодно будет быстрее файлообмен.
И последний штрих в этом сценарии - не нужно размещать базу где-то на отдельной машине - длительные операции будут выполняться намного быстрее локально, чем по сети. Поставьте эту машину на рабочее место, откуда планируется, например,закрывать месяц или производить обновления ИБ.
Другой момент, если база на управляемых формах. Вот тут уже если всё сдалать как описано выше, получатся тормоза. Но тем не менее выход есть:
- SSD накопитель* вместо обычного винта нас спасёт. Возьмите накопитель на 120гб, благо даже с учетом роста курса стоят они приемлемо. Рекомендую обратить внимание на intel 520/530 series, kingston v300. А лучше просто почитайте обзоры на свежие модели, т.к. этот рынок довольно быстро развивается и на рынок выходят новинки
*Примечание: Если будете объединять диски в RAID с зеркалированием, например,RAID1. В этом случае есть такой момент: большинству SSD дискам требуется trim для очистки мусора(в основном, касается довольно старых моделей), в режиме raid команда может не поддерживаться и накопитель по мере работы будет деградировать в скорости. Чтобы избежать этой проблемы можно воспользоваться минимум двумя способами: в идеале, приобрести SSD enterprise уровня, например, intel DC3500. Если это покажется дорого можно использовать связку: мат.плата с чипсетом - Процессор- аналогично с предыдущим пунктом. Чем больше частота тем лучше.
- Оперативная память - большой роли она тут не сыграет. Учитывая как современные приложения пожирают память, поставьте 8гб
Если с базой будет работать локально 1 пользователь то этого достаточно для его комфортной работы, но скорость сетевой работы через общий ресурс будет всё так же медленной. Но и здесь есть выход - работа через web сервер. На просторах интернета вы сможете найти большое количество статей, где описывается как организовать работу с 1С подобным образом, не буду останавливаться в данной статье на этом. Единственное, поделюсь с Вами своими наблюдениями: предпочтительнее настроить работу у пользователей не через web-браузер, а через тонкий клиент (когда добавляем в список ИБ новую базу, на странице размещения ИБ есть пункт "на web сервере"). Это, по моим наблюдениям, быстрее чем через браузер. Кроме того при работе через браузер встречаются ошибки в интерфейсе (съехавшая ТЧ и т.п.), которых нет при работе через тонкий клиент.
Собственно, воспользовавшись данным рецептом (ssd,процессор с большой частотой,web-сервер,тонкий клиент). Можно развеять миф "если число пользователей больше 1 (по некоторой версии больше 0 :) ) - нужна серверная база*.
*Хотя, конечно, с оговоркой что это не УПП или база размером > ~4гб, а количество пользователей не превышает 4 (это максимальные размер базы и количество пользователей, которые видел я, возможно кто-то встречал случаи, когда через web-сервер с файловой базой работало больше человек? Напишите в комментариях)
Работа с файловой базой в терминале
Перейдем к следующему варианту. У нас есть терминальный сервер и есть файловая база. Здесь всё аналогично сценарию 1 за исключением процессора:
Работа с серверной (MSSQL) базой
Этот сценарий наиболее сложный и, пожалуй, требует отдельной статьи. Предлагаю в рамках данной статьи рассмотреть только базовые принципы, которые влияют на производительностьВыбор сервера для 1С — серьезный вопрос для бизнеса. Ведь данный программный комплекс необходим для автоматизации бюрократических процессов и повышения эффективности документооборота. Наверное сейчас узнаете множество очевидных вещей. Но придется разъяснить, ибо не всем понятно. Но не волнуйтесь, неочевидные аспекты данного оборудования решил не упускать.
В данном тексте не будет сборок, их опубликовал на других страницах. Конфиги на 100 и 200 пользователей собирать еще не доводилось, порекомендовать могу только с теоретической точки зрения. Впрочем, логика та же, что и у «мелких» систем, растут только технические потребности. Соответственно, с ростом численности юзеров потребуется более серьезное оснащение.
Какой сервер нужен для 1С
Если стоит задача получить эффективное устройство, значит придется задать себе или другому человеку, ответственному за сие дело, несколько вопросов:
Сколько пользователей 1С планируется?
Как будет организована ИТ-инфраструктура?
Будут ли расширения штата?
Есть ли задел под обновления и апгрейды?
Какой бюджет готовы выделить?
А теперь по порядк у, пришло время обосновать вопросы . Чем выше количество юзеров , тем серьезнее нагрузка на процессор. Б ольшее количество оперативной памяти требуется, объем дисковой памяти также значительно выше, также нужны процессоры посерьезнее. Не забывает про типы накопителей, е сли 5 пользователей вытянет даже обычный HDD SATA, то для 10-20 уже нужен HDD SAS, а лучше SSD. Е сли у нас 30-50 юзверей , то однозначно SSD, хотя бы SATA, в идеале NVMe . П ри большем количестве без SSD NVMe не обойтись. Можно, конечно, построить RAID 10, загнать кучу накопителей, разбить БД. И наче, параллельной обработки запросов не видать, дисковая подсистема превратится в горлышко. Но давайте не будем усложнять. В 2020 году жесткие диски уже не имеют серьезных преимуществ перед SSD, потому можете смело устанавливать твердотельные накопители. Они быстрее, даже надежнее. Подробнее про SSD для сервера 1С можете прочитать здесь.
Теперь поговорим об организации IT. От типа реализации будет зависеть конечная сборка. Например, можно дать терминальный доступ юзерам, а можно организовать облачный доступ . Разница в подходе существенная. Облачная конфигурация наиболее предпочтительна, если доступ к 1С нужно дать не в пределах локальной сети, например, удаленным сотрудникам.
Третий вопрос — расширение штата. Нужно обязательно учитывать, иначе придется масштабировать не за счет замены процессора или установки второго, а покупки нового устройства. Накладно. Из третьего вытекает 4-й вопрос. Устройства, которые впоследствии легко модернизировать всегда стоят дороже, но, если апгрейдиться придется, то потеряете меньше денег. Кстати, пятый вопрос тоже крайне важен. Не будет бюджета, значит адекватной сборки не видать.
Ладно, на вопросы ответил , про дисковую подсистему сказал, теперь стоит постепенно перейти к другим насущным вопросам. Расскажу про ком п лектующие.
Процессор
При выборе сервера 1С очень важно обратить внимание на процессор. Важна таковая частота, количество ядер не принципиально. Нет, если много ядер и высокая частота, то это хорошо. Особенно, для реализации терминального доступа. Но учтите, тактовая частота очень важна. Больше 6 ядер требуется только в конфигурациях на 100 пользователей. Если же вам нужно масштабирование, то лучше делать это за счет второго процессора. К сожалению, в пределах программного комплекса 1С многопоточность все еще реализована из рук вон плохо.
Читайте также: